Committed by Greg Sabino Mullane <[email protected]>
Update types via 9.2 source tree
---
Pg.pm | 96 ++++++++++---------
Pg.xs | 15 +++
t/01constants.t | 15 +++
t/99_pod.t | 15 +++
types.c | 276 ++++++++++++++++++++++++++++++------------------------
types.h | 15 +++
6 files changed, 264 insertions(+), 168 deletions(-)
diff --git a/Pg.pm b/Pg.pm
index c525c7a..c80a613 100644
--- a/Pg.pm
+++ b/Pg.pm
@@ -30,29 +30,32 @@ use 5.006001;
async => [qw(PG_ASYNC PG_OLDQUERY_CANCEL PG_OLDQUERY_WAIT)],
pg_types => [qw(
PG_ABSTIME PG_ABSTIMEARRAY PG_ACLITEM PG_ACLITEMARRAY
PG_ANY
- PG_ANYARRAY PG_ANYELEMENT PG_ANYENUM PG_ANYNONARRAY
PG_BIT
- PG_BITARRAY PG_BOOL PG_BOOLARRAY PG_BOX PG_BOXARRAY
- PG_BPCHAR PG_BPCHARARRAY PG_BYTEA PG_BYTEAARRAY PG_CHAR
- PG_CHARARRAY PG_CID PG_CIDARRAY PG_CIDR PG_CIDRARRAY
- PG_CIRCLE PG_CIRCLEARRAY PG_CSTRING PG_CSTRINGARRAY
PG_DATE
- PG_DATEARRAY PG_FDW_HANDLER PG_FLOAT4 PG_FLOAT4ARRAY
PG_FLOAT8
- PG_FLOAT8ARRAY PG_GTSVECTOR PG_GTSVECTORARRAY PG_INET
PG_INETARRAY
- PG_INT2 PG_INT2ARRAY PG_INT2VECTOR PG_INT2VECTORARRAY
PG_INT4
- PG_INT4ARRAY PG_INT8 PG_INT8ARRAY PG_INTERNAL
PG_INTERVAL
- PG_INTERVALARRAY PG_LANGUAGE_HANDLER PG_LINE
PG_LINEARRAY PG_LSEG
- PG_LSEGARRAY PG_MACADDR PG_MACADDRARRAY PG_MONEY
PG_MONEYARRAY
- PG_NAME PG_NAMEARRAY PG_NUMERIC PG_NUMERICARRAY PG_OID
- PG_OIDARRAY PG_OIDVECTOR PG_OIDVECTORARRAY PG_OPAQUE
PG_PATH
- PG_PATHARRAY PG_PG_ATTRIBUTE PG_PG_CLASS
PG_PG_NODE_TREE PG_PG_PROC
- PG_PG_TYPE PG_POINT PG_POINTARRAY PG_POLYGON
PG_POLYGONARRAY
- PG_RECORD PG_RECORDARRAY PG_REFCURSOR PG_REFCURSORARRAY
PG_REGCLASS
- PG_REGCLASSARRAY PG_REGCONFIG PG_REGCONFIGARRAY
PG_REGDICTIONARY PG_REGDICTIONARYARRAY
- PG_REGOPER PG_REGOPERARRAY PG_REGOPERATOR
PG_REGOPERATORARRAY PG_REGPROC
- PG_REGPROCARRAY PG_REGPROCEDURE PG_REGPROCEDUREARRAY
PG_REGTYPE PG_REGTYPEARRAY
- PG_RELTIME PG_RELTIMEARRAY PG_SMGR PG_TEXT PG_TEXTARRAY
- PG_TID PG_TIDARRAY PG_TIME PG_TIMEARRAY PG_TIMESTAMP
- PG_TIMESTAMPARRAY PG_TIMESTAMPTZ PG_TIMESTAMPTZARRAY
PG_TIMETZ PG_TIMETZARRAY
- PG_TINTERVAL PG_TINTERVALARRAY PG_TRIGGER PG_TSQUERY
PG_TSQUERYARRAY
+ PG_ANYARRAY PG_ANYELEMENT PG_ANYENUM PG_ANYNONARRAY
PG_ANYRANGE
+ PG_BIT PG_BITARRAY PG_BOOL PG_BOOLARRAY PG_BOX
+ PG_BOXARRAY PG_BPCHAR PG_BPCHARARRAY PG_BYTEA
PG_BYTEAARRAY
+ PG_CHAR PG_CHARARRAY PG_CID PG_CIDARRAY PG_CIDR
+ PG_CIDRARRAY PG_CIRCLE PG_CIRCLEARRAY PG_CSTRING
PG_CSTRINGARRAY
+ PG_DATE PG_DATEARRAY PG_DATERANGE PG_DATERANGEARRAY
PG_FDW_HANDLER
+ PG_FLOAT4 PG_FLOAT4ARRAY PG_FLOAT8 PG_FLOAT8ARRAY
PG_GTSVECTOR
+ PG_GTSVECTORARRAY PG_INET PG_INETARRAY PG_INT2
PG_INT2ARRAY
+ PG_INT2VECTOR PG_INT2VECTORARRAY PG_INT4 PG_INT4ARRAY
PG_INT4RANGE
+ PG_INT4RANGEARRAY PG_INT8 PG_INT8ARRAY PG_INT8RANGE
PG_INT8RANGEARRAY
+ PG_INTERNAL PG_INTERVAL PG_INTERVALARRAY PG_JSON
PG_JSONARRAY
+ PG_LANGUAGE_HANDLER PG_LINE PG_LINEARRAY PG_LSEG
PG_LSEGARRAY
+ PG_MACADDR PG_MACADDRARRAY PG_MONEY PG_MONEYARRAY
PG_NAME
+ PG_NAMEARRAY PG_NUMERIC PG_NUMERICARRAY PG_NUMRANGE
PG_NUMRANGEARRAY
+ PG_OID PG_OIDARRAY PG_OIDVECTOR PG_OIDVECTORARRAY
PG_OPAQUE
+ PG_PATH PG_PATHARRAY PG_PG_ATTRIBUTE PG_PG_CLASS
PG_PG_NODE_TREE
+ PG_PG_PROC PG_PG_TYPE PG_POINT PG_POINTARRAY PG_POLYGON
+ PG_POLYGONARRAY PG_RECORD PG_RECORDARRAY PG_REFCURSOR
PG_REFCURSORARRAY
+ PG_REGCLASS PG_REGCLASSARRAY PG_REGCONFIG
PG_REGCONFIGARRAY PG_REGDICTIONARY
+ PG_REGDICTIONARYARRAY PG_REGOPER PG_REGOPERARRAY
PG_REGOPERATOR PG_REGOPERATORARRAY
+ PG_REGPROC PG_REGPROCARRAY PG_REGPROCEDURE
PG_REGPROCEDUREARRAY PG_REGTYPE
+ PG_REGTYPEARRAY PG_RELTIME PG_RELTIMEARRAY PG_SMGR
PG_TEXT
+ PG_TEXTARRAY PG_TID PG_TIDARRAY PG_TIME PG_TIMEARRAY
+ PG_TIMESTAMP PG_TIMESTAMPARRAY PG_TIMESTAMPTZ
PG_TIMESTAMPTZARRAY PG_TIMETZ
+ PG_TIMETZARRAY PG_TINTERVAL PG_TINTERVALARRAY
PG_TRIGGER PG_TSQUERY
+ PG_TSQUERYARRAY PG_TSRANGE PG_TSRANGEARRAY PG_TSTZRANGE
PG_TSTZRANGEARRAY
PG_TSVECTOR PG_TSVECTORARRAY PG_TXID_SNAPSHOT
PG_TXID_SNAPSHOTARRAY PG_UNKNOWN
PG_UUID PG_UUIDARRAY PG_VARBIT PG_VARBITARRAY PG_VARCHAR
PG_VARCHARARRAY PG_VOID PG_XID PG_XIDARRAY PG_XML
@@ -3324,28 +3327,31 @@ key in the hash passed to L</bind_param>.
The current list of Postgres data types exported is:
PG_ABSTIME PG_ABSTIMEARRAY PG_ACLITEM PG_ACLITEMARRAY PG_ANY PG_ANYARRAY
- PG_ANYELEMENT PG_ANYENUM PG_ANYNONARRAY PG_BIT PG_BITARRAY PG_BOOL
- PG_BOOLARRAY PG_BOX PG_BOXARRAY PG_BPCHAR PG_BPCHARARRAY PG_BYTEA
- PG_BYTEAARRAY PG_CHAR PG_CHARARRAY PG_CID PG_CIDARRAY PG_CIDR
- PG_CIDRARRAY PG_CIRCLE PG_CIRCLEARRAY PG_CSTRING PG_CSTRINGARRAY PG_DATE
- PG_DATEARRAY PG_FDW_HANDLER PG_FLOAT4 PG_FLOAT4ARRAY PG_FLOAT8 PG_FLOAT8ARRAY
- PG_GTSVECTOR PG_GTSVECTORARRAY PG_INET PG_INETARRAY PG_INT2 PG_INT2ARRAY
- PG_INT2VECTOR PG_INT2VECTORARRAY PG_INT4 PG_INT4ARRAY PG_INT8 PG_INT8ARRAY
- PG_INTERNAL PG_INTERVAL PG_INTERVALARRAY PG_LANGUAGE_HANDLER PG_LINE
PG_LINEARRAY
- PG_LSEG PG_LSEGARRAY PG_MACADDR PG_MACADDRARRAY PG_MONEY PG_MONEYARRAY
- PG_NAME PG_NAMEARRAY PG_NUMERIC PG_NUMERICARRAY PG_OID PG_OIDARRAY
- PG_OIDVECTOR PG_OIDVECTORARRAY PG_OPAQUE PG_PATH PG_PATHARRAY PG_PG_ATTRIBUTE
- PG_PG_CLASS PG_PG_NODE_TREE PG_PG_PROC PG_PG_TYPE PG_POINT PG_POINTARRAY
- PG_POLYGON PG_POLYGONARRAY PG_RECORD PG_RECORDARRAY PG_REFCURSOR
PG_REFCURSORARRAY
- PG_REGCLASS PG_REGCLASSARRAY PG_REGCONFIG PG_REGCONFIGARRAY PG_REGDICTIONARY
PG_REGDICTIONARYARRAY
- PG_REGOPER PG_REGOPERARRAY PG_REGOPERATOR PG_REGOPERATORARRAY PG_REGPROC
PG_REGPROCARRAY
- PG_REGPROCEDURE PG_REGPROCEDUREARRAY PG_REGTYPE PG_REGTYPEARRAY PG_RELTIME
PG_RELTIMEARRAY
- PG_SMGR PG_TEXT PG_TEXTARRAY PG_TID PG_TIDARRAY PG_TIME
- PG_TIMEARRAY PG_TIMESTAMP PG_TIMESTAMPARRAY PG_TIMESTAMPTZ
PG_TIMESTAMPTZARRAY PG_TIMETZ
- PG_TIMETZARRAY PG_TINTERVAL PG_TINTERVALARRAY PG_TRIGGER PG_TSQUERY
PG_TSQUERYARRAY
- PG_TSVECTOR PG_TSVECTORARRAY PG_TXID_SNAPSHOT PG_TXID_SNAPSHOTARRAY
PG_UNKNOWN PG_UUID
- PG_UUIDARRAY PG_VARBIT PG_VARBITARRAY PG_VARCHAR PG_VARCHARARRAY PG_VOID
- PG_XID PG_XIDARRAY PG_XML PG_XMLARRAY
+ PG_ANYELEMENT PG_ANYENUM PG_ANYNONARRAY PG_ANYRANGE PG_BIT PG_BITARRAY
+ PG_BOOL PG_BOOLARRAY PG_BOX PG_BOXARRAY PG_BPCHAR PG_BPCHARARRAY
+ PG_BYTEA PG_BYTEAARRAY PG_CHAR PG_CHARARRAY PG_CID PG_CIDARRAY
+ PG_CIDR PG_CIDRARRAY PG_CIRCLE PG_CIRCLEARRAY PG_CSTRING PG_CSTRINGARRAY
+ PG_DATE PG_DATEARRAY PG_DATERANGE PG_DATERANGEARRAY PG_FDW_HANDLER PG_FLOAT4
+ PG_FLOAT4ARRAY PG_FLOAT8 PG_FLOAT8ARRAY PG_GTSVECTOR PG_GTSVECTORARRAY PG_INET
+ PG_INETARRAY PG_INT2 PG_INT2ARRAY PG_INT2VECTOR PG_INT2VECTORARRAY PG_INT4
+ PG_INT4ARRAY PG_INT4RANGE PG_INT4RANGEARRAY PG_INT8 PG_INT8ARRAY PG_INT8RANGE
+ PG_INT8RANGEARRAY PG_INTERNAL PG_INTERVAL PG_INTERVALARRAY PG_JSON
PG_JSONARRAY
+ PG_LANGUAGE_HANDLER PG_LINE PG_LINEARRAY PG_LSEG PG_LSEGARRAY PG_MACADDR
+ PG_MACADDRARRAY PG_MONEY PG_MONEYARRAY PG_NAME PG_NAMEARRAY PG_NUMERIC
+ PG_NUMERICARRAY PG_NUMRANGE PG_NUMRANGEARRAY PG_OID PG_OIDARRAY PG_OIDVECTOR
+ PG_OIDVECTORARRAY PG_OPAQUE PG_PATH PG_PATHARRAY PG_PG_ATTRIBUTE PG_PG_CLASS
+ PG_PG_NODE_TREE PG_PG_PROC PG_PG_TYPE PG_POINT PG_POINTARRAY PG_POLYGON
+ PG_POLYGONARRAY PG_RECORD PG_RECORDARRAY PG_REFCURSOR PG_REFCURSORARRAY
PG_REGCLASS
+ PG_REGCLASSARRAY PG_REGCONFIG PG_REGCONFIGARRAY PG_REGDICTIONARY
PG_REGDICTIONARYARRAY PG_REGOPER
+ PG_REGOPERARRAY PG_REGOPERATOR PG_REGOPERATORARRAY PG_REGPROC PG_REGPROCARRAY
PG_REGPROCEDURE
+ PG_REGPROCEDUREARRAY PG_REGTYPE PG_REGTYPEARRAY PG_RELTIME PG_RELTIMEARRAY
PG_SMGR
+ PG_TEXT PG_TEXTARRAY PG_TID PG_TIDARRAY PG_TIME PG_TIMEARRAY
+ PG_TIMESTAMP PG_TIMESTAMPARRAY PG_TIMESTAMPTZ PG_TIMESTAMPTZARRAY PG_TIMETZ
PG_TIMETZARRAY
+ PG_TINTERVAL PG_TINTERVALARRAY PG_TRIGGER PG_TSQUERY PG_TSQUERYARRAY
PG_TSRANGE
+ PG_TSRANGEARRAY PG_TSTZRANGE PG_TSTZRANGEARRAY PG_TSVECTOR PG_TSVECTORARRAY
PG_TXID_SNAPSHOT
+ PG_TXID_SNAPSHOTARRAY PG_UNKNOWN PG_UUID PG_UUIDARRAY PG_VARBIT PG_VARBITARRAY
+ PG_VARCHAR PG_VARCHARARRAY PG_VOID PG_XID PG_XIDARRAY PG_XML
+ PG_XMLARRAY
Data types are "sticky," in that once a data type is set to a certain
placeholder,
it will remain for that placeholder, unless it is explicitly set to something
diff --git a/Pg.xs b/Pg.xs
index 15452ca..8e7fc9b 100644
--- a/Pg.xs
+++ b/Pg.xs
@@ -33,6 +33,7 @@ constant(name=Nullch)
PG_ANYELEMENT = 2283
PG_ANYENUM = 3500
PG_ANYNONARRAY = 2776
+ PG_ANYRANGE = 3831
PG_BIT = 1560
PG_BITARRAY = 1561
PG_BOOL = 16
@@ -55,6 +56,8 @@ constant(name=Nullch)
PG_CSTRINGARRAY = 1263
PG_DATE = 1082
PG_DATEARRAY = 1182
+ PG_DATERANGE = 3912
+ PG_DATERANGEARRAY = 3913
PG_FDW_HANDLER = 3115
PG_FLOAT4 = 700
PG_FLOAT4ARRAY = 1021
@@ -70,11 +73,17 @@ constant(name=Nullch)
PG_INT2VECTORARRAY = 1006
PG_INT4 = 23
PG_INT4ARRAY = 1007
+ PG_INT4RANGE = 3904
+ PG_INT4RANGEARRAY = 3905
PG_INT8 = 20
PG_INT8ARRAY = 1016
+ PG_INT8RANGE = 3926
+ PG_INT8RANGEARRAY = 3927
PG_INTERNAL = 2281
PG_INTERVAL = 1186
PG_INTERVALARRAY = 1187
+ PG_JSON = 114
+ PG_JSONARRAY = 199
PG_LANGUAGE_HANDLER = 2280
PG_LINE = 628
PG_LINEARRAY = 629
@@ -88,6 +97,8 @@ constant(name=Nullch)
PG_NAMEARRAY = 1003
PG_NUMERIC = 1700
PG_NUMERICARRAY = 1231
+ PG_NUMRANGE = 3906
+ PG_NUMRANGEARRAY = 3907
PG_OID = 26
PG_OIDARRAY = 1028
PG_OIDVECTOR = 30
@@ -144,6 +155,10 @@ constant(name=Nullch)
PG_TRIGGER = 2279
PG_TSQUERY = 3615
PG_TSQUERYARRAY = 3645
+ PG_TSRANGE = 3908
+ PG_TSRANGEARRAY = 3909
+ PG_TSTZRANGE = 3910
+ PG_TSTZRANGEARRAY = 3911
PG_TSVECTOR = 3614
PG_TSVECTORARRAY = 3643
PG_TXID_SNAPSHOT = 2970
diff --git a/t/01constants.t b/t/01constants.t
index 844c266..0d6bfae 100644
--- a/t/01constants.t
+++ b/t/01constants.t
@@ -21,6 +21,7 @@ is (PG_ANYARRAY , 2277, 'PG_ANYARRAY returns
correct value');
is (PG_ANYELEMENT , 2283, 'PG_ANYELEMENT returns correct value');
is (PG_ANYENUM , 3500, 'PG_ANYENUM returns correct value');
is (PG_ANYNONARRAY , 2776, 'PG_ANYNONARRAY returns correct value');
+is (PG_ANYRANGE , 3831, 'PG_ANYRANGE returns correct value');
is (PG_BIT , 1560, 'PG_BIT returns correct value');
is (PG_BITARRAY , 1561, 'PG_BITARRAY returns correct value');
is (PG_BOOL , 16, 'PG_BOOL returns correct value');
@@ -43,6 +44,8 @@ is (PG_CSTRING , 2275, 'PG_CSTRING returns
correct value');
is (PG_CSTRINGARRAY , 1263, 'PG_CSTRINGARRAY returns correct value');
is (PG_DATE , 1082, 'PG_DATE returns correct value');
is (PG_DATEARRAY , 1182, 'PG_DATEARRAY returns correct value');
+is (PG_DATERANGE , 3912, 'PG_DATERANGE returns correct value');
+is (PG_DATERANGEARRAY , 3913, 'PG_DATERANGEARRAY returns correct
value');
is (PG_FDW_HANDLER , 3115, 'PG_FDW_HANDLER returns correct value');
is (PG_FLOAT4 , 700, 'PG_FLOAT4 returns correct value');
is (PG_FLOAT4ARRAY , 1021, 'PG_FLOAT4ARRAY returns correct value');
@@ -58,11 +61,17 @@ is (PG_INT2VECTOR , 22, 'PG_INT2VECTOR returns
correct value');
is (PG_INT2VECTORARRAY , 1006, 'PG_INT2VECTORARRAY returns correct
value');
is (PG_INT4 , 23, 'PG_INT4 returns correct value');
is (PG_INT4ARRAY , 1007, 'PG_INT4ARRAY returns correct value');
+is (PG_INT4RANGE , 3904, 'PG_INT4RANGE returns correct value');
+is (PG_INT4RANGEARRAY , 3905, 'PG_INT4RANGEARRAY returns correct
value');
is (PG_INT8 , 20, 'PG_INT8 returns correct value');
is (PG_INT8ARRAY , 1016, 'PG_INT8ARRAY returns correct value');
+is (PG_INT8RANGE , 3926, 'PG_INT8RANGE returns correct value');
+is (PG_INT8RANGEARRAY , 3927, 'PG_INT8RANGEARRAY returns correct
value');
is (PG_INTERNAL , 2281, 'PG_INTERNAL returns correct value');
is (PG_INTERVAL , 1186, 'PG_INTERVAL returns correct value');
is (PG_INTERVALARRAY , 1187, 'PG_INTERVALARRAY returns correct value');
+is (PG_JSON , 114, 'PG_JSON returns correct value');
+is (PG_JSONARRAY , 199, 'PG_JSONARRAY returns correct value');
is (PG_LANGUAGE_HANDLER , 2280, 'PG_LANGUAGE_HANDLER returns correct
value');
is (PG_LINE , 628, 'PG_LINE returns correct value');
is (PG_LINEARRAY , 629, 'PG_LINEARRAY returns correct value');
@@ -76,6 +85,8 @@ is (PG_NAME , 19, 'PG_NAME returns correct
value');
is (PG_NAMEARRAY , 1003, 'PG_NAMEARRAY returns correct value');
is (PG_NUMERIC , 1700, 'PG_NUMERIC returns correct value');
is (PG_NUMERICARRAY , 1231, 'PG_NUMERICARRAY returns correct value');
+is (PG_NUMRANGE , 3906, 'PG_NUMRANGE returns correct value');
+is (PG_NUMRANGEARRAY , 3907, 'PG_NUMRANGEARRAY returns correct value');
is (PG_OID , 26, 'PG_OID returns correct value');
is (PG_OIDARRAY , 1028, 'PG_OIDARRAY returns correct value');
is (PG_OIDVECTOR , 30, 'PG_OIDVECTOR returns correct value');
@@ -132,6 +143,10 @@ is (PG_TINTERVALARRAY , 1025, 'PG_TINTERVALARRAY
returns correct value');
is (PG_TRIGGER , 2279, 'PG_TRIGGER returns correct value');
is (PG_TSQUERY , 3615, 'PG_TSQUERY returns correct value');
is (PG_TSQUERYARRAY , 3645, 'PG_TSQUERYARRAY returns correct value');
+is (PG_TSRANGE , 3908, 'PG_TSRANGE returns correct value');
+is (PG_TSRANGEARRAY , 3909, 'PG_TSRANGEARRAY returns correct value');
+is (PG_TSTZRANGE , 3910, 'PG_TSTZRANGE returns correct value');
+is (PG_TSTZRANGEARRAY , 3911, 'PG_TSTZRANGEARRAY returns correct
value');
is (PG_TSVECTOR , 3614, 'PG_TSVECTOR returns correct value');
is (PG_TSVECTORARRAY , 3643, 'PG_TSVECTORARRAY returns correct value');
is (PG_TXID_SNAPSHOT , 2970, 'PG_TXID_SNAPSHOT returns correct value');
diff --git a/t/99_pod.t b/t/99_pod.t
index 500d1a6..aee11f3 100644
--- a/t/99_pod.t
+++ b/t/99_pod.t
@@ -69,6 +69,7 @@ SKIP: {
qr{PG_ANYELEMENT},
qr{PG_ANYENUM},
qr{PG_ANYNONARRAY},
+ qr{PG_ANYRANGE},
qr{PG_BIT},
qr{PG_BITARRAY},
qr{PG_BOOL},
@@ -91,6 +92,8 @@ SKIP: {
qr{PG_CSTRINGARRAY},
qr{PG_DATE},
qr{PG_DATEARRAY},
+ qr{PG_DATERANGE},
+ qr{PG_DATERANGEARRAY},
qr{PG_FDW_HANDLER},
qr{PG_FLOAT4},
qr{PG_FLOAT4ARRAY},
@@ -106,11 +109,17 @@ SKIP: {
qr{PG_INT2VECTORARRAY},
qr{PG_INT4},
qr{PG_INT4ARRAY},
+ qr{PG_INT4RANGE},
+ qr{PG_INT4RANGEARRAY},
qr{PG_INT8},
qr{PG_INT8ARRAY},
+ qr{PG_INT8RANGE},
+ qr{PG_INT8RANGEARRAY},
qr{PG_INTERNAL},
qr{PG_INTERVAL},
qr{PG_INTERVALARRAY},
+ qr{PG_JSON},
+ qr{PG_JSONARRAY},
qr{PG_LANGUAGE_HANDLER},
qr{PG_LINE},
qr{PG_LINEARRAY},
@@ -124,6 +133,8 @@ SKIP: {
qr{PG_NAMEARRAY},
qr{PG_NUMERIC},
qr{PG_NUMERICARRAY},
+ qr{PG_NUMRANGE},
+ qr{PG_NUMRANGEARRAY},
qr{PG_OID},
qr{PG_OIDARRAY},
qr{PG_OIDVECTOR},
@@ -180,6 +191,10 @@ SKIP: {
qr{PG_TRIGGER},
qr{PG_TSQUERY},
qr{PG_TSQUERYARRAY},
+ qr{PG_TSRANGE},
+ qr{PG_TSRANGEARRAY},
+ qr{PG_TSTZRANGE},
+ qr{PG_TSTZRANGEARRAY},
qr{PG_TSVECTOR},
qr{PG_TSVECTORARRAY},
qr{PG_TXID_SNAPSHOT},
diff --git a/types.c b/types.c
index f59df4c..00e5894 100644
--- a/types.c
+++ b/types.c
@@ -28,6 +28,7 @@ static sql_type_info_t pg_types[] = {
{PG_CIRCLEARRAY ,"_circle" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_CSTRINGARRAY ,"_cstring" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_DATEARRAY ,"_date" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
+ {PG_DATERANGEARRAY ,"_daterange" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_FLOAT4ARRAY ,"_float4" ,1,',',"array_out"
,quote_string,dequote_string,{0},2},
{PG_FLOAT8ARRAY ,"_float8" ,1,',',"array_out"
,quote_string,dequote_string,{0},2},
{PG_GTSVECTORARRAY ,"_gtsvector" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
@@ -35,14 +36,18 @@ static sql_type_info_t pg_types[] = {
{PG_INT2ARRAY ,"_int2" ,1,',',"array_out"
,quote_string,dequote_string,{0},1},
{PG_INT2VECTORARRAY ,"_int2vector" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_INT4ARRAY ,"_int4" ,1,',',"array_out"
,quote_string,dequote_string,{0},1},
+ {PG_INT4RANGEARRAY ,"_int4range" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_INT8ARRAY ,"_int8" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
+ {PG_INT8RANGEARRAY ,"_int8range" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_INTERVALARRAY ,"_interval" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
+ {PG_JSONARRAY ,"_json" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_LINEARRAY ,"_line" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_LSEGARRAY ,"_lseg" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_MACADDRARRAY ,"_macaddr" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_MONEYARRAY ,"_money" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_NAMEARRAY ,"_name" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_NUMERICARRAY ,"_numeric" ,1,',',"array_out"
,quote_string,dequote_string,{0},2},
+ {PG_NUMRANGEARRAY ,"_numrange" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_OIDARRAY ,"_oid" ,1,',',"array_out"
,quote_string,dequote_string,{0},1},
{PG_OIDVECTORARRAY ,"_oidvector" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_PATHARRAY ,"_path" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
@@ -67,6 +72,8 @@ static sql_type_info_t pg_types[] = {
{PG_TIMETZARRAY ,"_timetz" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_TINTERVALARRAY ,"_tinterval" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_TSQUERYARRAY ,"_tsquery" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
+ {PG_TSRANGEARRAY ,"_tsrange" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
+ {PG_TSTZRANGEARRAY ,"_tstzrange" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_TSVECTORARRAY ,"_tsvector" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_TXID_SNAPSHOTARRAY,"_txid_snapshot" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
{PG_UUIDARRAY ,"_uuid" ,1,',',"array_out"
,quote_string,dequote_string,{0},0},
@@ -81,6 +88,7 @@ static sql_type_info_t pg_types[] = {
{PG_ANYELEMENT ,"anyelement" ,1,',',"anyelement_out"
,quote_string,dequote_string,{0},0},
{PG_ANYENUM ,"anyenum" ,1,',',"anyenum_out"
,quote_string,dequote_string,{0},0},
{PG_ANYNONARRAY ,"anynonarray" ,1,',',"anynonarray_out"
,quote_string,dequote_string,{0},0},
+ {PG_ANYRANGE ,"anyrange" ,1,',',"anyrange_out"
,quote_string,dequote_string,{0},0},
{PG_BIT ,"bit" ,1,',',"bit_out"
,quote_string,dequote_string,{0},0},
{PG_BOOL ,"bool" ,1,',',"boolout"
,quote_bool ,dequote_bool ,{SQL_BOOLEAN},3},
{PG_BOX ,"box" ,1,';',"box_out"
,quote_geom ,dequote_string,{0},0},
@@ -92,6 +100,7 @@ static sql_type_info_t pg_types[] = {
{PG_CIRCLE ,"circle" ,1,',',"circle_out"
,quote_circle,dequote_string,{0},0},
{PG_CSTRING ,"cstring" ,1,',',"cstring_out"
,quote_string,dequote_string,{0},0},
{PG_DATE ,"date" ,1,',',"date_out"
,quote_string,dequote_string,{SQL_TYPE_DATE},0},
+ {PG_DATERANGE ,"daterange" ,1,',',"range_out"
,quote_string,dequote_string,{0},0},
{PG_FDW_HANDLER ,"fdw_handler" ,1,',',"fdw_handler_out"
,quote_string,dequote_string,{0},0},
{PG_FLOAT4 ,"float4" ,1,',',"float4out"
,quote_float ,null_dequote ,{0},2},
{PG_FLOAT8 ,"float8" ,1,',',"float8out"
,quote_float ,null_dequote ,{SQL_FLOAT},2},
@@ -100,9 +109,12 @@ static sql_type_info_t pg_types[] = {
{PG_INT2 ,"int2" ,1,',',"int2out" ,quote_int
,null_dequote ,{SQL_SMALLINT},1},
{PG_INT2VECTOR ,"int2vector" ,1,',',"int2vectorout"
,quote_string,dequote_string,{0},0},
{PG_INT4 ,"int4" ,1,',',"int4out" ,quote_int
,null_dequote ,{SQL_INTEGER},1},
+ {PG_INT4RANGE ,"int4range" ,1,',',"range_out"
,quote_string,dequote_string,{0},0},
{PG_INT8 ,"int8" ,1,',',"int8out" ,quote_int
,null_dequote ,{SQL_BIGINT},0},
+ {PG_INT8RANGE ,"int8range" ,1,',',"range_out"
,quote_string,dequote_string,{0},0},
{PG_INTERNAL ,"internal" ,1,',',"internal_out"
,quote_string,dequote_string,{0},0},
{PG_INTERVAL ,"interval" ,1,',',"interval_out"
,quote_string,dequote_string,{0},0},
+ {PG_JSON ,"json" ,1,',',"json_out"
,quote_string,dequote_string,{0},0},
{PG_LANGUAGE_HANDLER ,"language_handler"
,1,',',"language_handler_out",quote_string,dequote_string,{0},0},
{PG_LINE ,"line" ,1,',',"line_out"
,quote_geom ,dequote_string,{0},0},
{PG_LSEG ,"lseg" ,1,',',"lseg_out"
,quote_geom ,dequote_string,{0},0},
@@ -110,6 +122,7 @@ static sql_type_info_t pg_types[] = {
{PG_MONEY ,"money" ,1,',',"cash_out"
,quote_string,dequote_string,{0},0},
{PG_NAME ,"name" ,1,',',"nameout"
,quote_name ,null_dequote ,{SQL_VARCHAR},0},
{PG_NUMERIC ,"numeric" ,1,',',"numeric_out"
,quote_float ,null_dequote ,{SQL_DECIMAL},2},
+ {PG_NUMRANGE ,"numrange" ,1,',',"range_out"
,quote_string,dequote_string,{0},0},
{PG_OID ,"oid" ,1,',',"oidout" ,quote_int
,null_dequote ,{0},1},
{PG_OIDVECTOR ,"oidvector" ,1,',',"oidvectorout"
,quote_string,dequote_string,{0},0},
{PG_OPAQUE ,"opaque" ,1,',',"opaque_out"
,quote_string,dequote_string,{0},0},
@@ -142,6 +155,8 @@ static sql_type_info_t pg_types[] = {
{PG_TINTERVAL ,"tinterval" ,1,',',"tintervalout"
,quote_string,dequote_string,{0},0},
{PG_TRIGGER ,"trigger" ,1,',',"trigger_out"
,quote_string,dequote_string,{0},0},
{PG_TSQUERY ,"tsquery" ,1,',',"tsqueryout"
,quote_string,dequote_string,{0},0},
+ {PG_TSRANGE ,"tsrange" ,1,',',"range_out"
,quote_string,dequote_string,{0},0},
+ {PG_TSTZRANGE ,"tstzrange" ,1,',',"range_out"
,quote_string,dequote_string,{0},0},
{PG_TSVECTOR ,"tsvector" ,1,',',"tsvectorout"
,quote_string,dequote_string,{0},0},
{PG_TXID_SNAPSHOT ,"txid_snapshot"
,1,',',"txid_snapshot_out",quote_string,dequote_string,{0},0},
{PG_UNKNOWN ,"unknown" ,1,',',"unknownout"
,quote_string,dequote_string,{0},0},
@@ -172,129 +187,144 @@ sql_type_info_t* pg_type_data(int sql_type)
case PG_CIRCLEARRAY: return &pg_types[10];
case PG_CSTRINGARRAY: return &pg_types[11];
case PG_DATEARRAY: return &pg_types[12];
- case PG_FLOAT4ARRAY: return &pg_types[13];
- case PG_FLOAT8ARRAY: return &pg_types[14];
- case PG_GTSVECTORARRAY: return &pg_types[15];
- case PG_INETARRAY: return &pg_types[16];
- case PG_INT2ARRAY: return &pg_types[17];
- case PG_INT2VECTORARRAY: return &pg_types[18];
- case PG_INT4ARRAY: return &pg_types[19];
- case PG_INT8ARRAY: return &pg_types[20];
- case PG_INTERVALARRAY: return &pg_types[21];
- case PG_LINEARRAY: return &pg_types[22];
- case PG_LSEGARRAY: return &pg_types[23];
- case PG_MACADDRARRAY: return &pg_types[24];
- case PG_MONEYARRAY: return &pg_types[25];
- case PG_NAMEARRAY: return &pg_types[26];
- case PG_NUMERICARRAY: return &pg_types[27];
- case PG_OIDARRAY: return &pg_types[28];
- case PG_OIDVECTORARRAY: return &pg_types[29];
- case PG_PATHARRAY: return &pg_types[30];
- case PG_POINTARRAY: return &pg_types[31];
- case PG_POLYGONARRAY: return &pg_types[32];
- case PG_RECORDARRAY: return &pg_types[33];
- case PG_REFCURSORARRAY: return &pg_types[34];
- case PG_REGCLASSARRAY: return &pg_types[35];
- case PG_REGCONFIGARRAY: return &pg_types[36];
- case PG_REGDICTIONARYARRAY: return &pg_types[37];
- case PG_REGOPERARRAY: return &pg_types[38];
- case PG_REGOPERATORARRAY: return &pg_types[39];
- case PG_REGPROCARRAY: return &pg_types[40];
- case PG_REGPROCEDUREARRAY: return &pg_types[41];
- case PG_REGTYPEARRAY: return &pg_types[42];
- case PG_RELTIMEARRAY: return &pg_types[43];
- case PG_TEXTARRAY: return &pg_types[44];
- case PG_TIDARRAY: return &pg_types[45];
- case PG_TIMEARRAY: return &pg_types[46];
- case PG_TIMESTAMPARRAY: return &pg_types[47];
- case PG_TIMESTAMPTZARRAY: return &pg_types[48];
- case PG_TIMETZARRAY: return &pg_types[49];
- case PG_TINTERVALARRAY: return &pg_types[50];
- case PG_TSQUERYARRAY: return &pg_types[51];
- case PG_TSVECTORARRAY: return &pg_types[52];
- case PG_TXID_SNAPSHOTARRAY: return &pg_types[53];
- case PG_UUIDARRAY: return &pg_types[54];
- case PG_VARBITARRAY: return &pg_types[55];
- case PG_VARCHARARRAY: return &pg_types[56];
- case PG_XIDARRAY: return &pg_types[57];
- case PG_XMLARRAY: return &pg_types[58];
- case PG_ABSTIME: return &pg_types[59];
- case PG_ACLITEM: return &pg_types[60];
- case PG_ANY: return &pg_types[61];
- case PG_ANYARRAY: return &pg_types[62];
- case PG_ANYELEMENT: return &pg_types[63];
- case PG_ANYENUM: return &pg_types[64];
- case PG_ANYNONARRAY: return &pg_types[65];
- case PG_BIT: return &pg_types[66];
- case PG_BOOL: return &pg_types[67];
- case PG_BOX: return &pg_types[68];
- case PG_BPCHAR: return &pg_types[69];
- case PG_BYTEA: return &pg_types[70];
- case PG_CHAR: return &pg_types[71];
- case PG_CID: return &pg_types[72];
- case PG_CIDR: return &pg_types[73];
- case PG_CIRCLE: return &pg_types[74];
- case PG_CSTRING: return &pg_types[75];
- case PG_DATE: return &pg_types[76];
- case PG_FDW_HANDLER: return &pg_types[77];
- case PG_FLOAT4: return &pg_types[78];
- case PG_FLOAT8: return &pg_types[79];
- case PG_GTSVECTOR: return &pg_types[80];
- case PG_INET: return &pg_types[81];
- case PG_INT2: return &pg_types[82];
- case PG_INT2VECTOR: return &pg_types[83];
- case PG_INT4: return &pg_types[84];
- case PG_INT8: return &pg_types[85];
- case PG_INTERNAL: return &pg_types[86];
- case PG_INTERVAL: return &pg_types[87];
- case PG_LANGUAGE_HANDLER: return &pg_types[88];
- case PG_LINE: return &pg_types[89];
- case PG_LSEG: return &pg_types[90];
- case PG_MACADDR: return &pg_types[91];
- case PG_MONEY: return &pg_types[92];
- case PG_NAME: return &pg_types[93];
- case PG_NUMERIC: return &pg_types[94];
- case PG_OID: return &pg_types[95];
- case PG_OIDVECTOR: return &pg_types[96];
- case PG_OPAQUE: return &pg_types[97];
- case PG_PATH: return &pg_types[98];
- case PG_PG_ATTRIBUTE: return &pg_types[99];
- case PG_PG_CLASS: return &pg_types[100];
- case PG_PG_NODE_TREE: return &pg_types[101];
- case PG_PG_PROC: return &pg_types[102];
- case PG_PG_TYPE: return &pg_types[103];
- case PG_POINT: return &pg_types[104];
- case PG_POLYGON: return &pg_types[105];
- case PG_RECORD: return &pg_types[106];
- case PG_REFCURSOR: return &pg_types[107];
- case PG_REGCLASS: return &pg_types[108];
- case PG_REGCONFIG: return &pg_types[109];
- case PG_REGDICTIONARY: return &pg_types[110];
- case PG_REGOPER: return &pg_types[111];
- case PG_REGOPERATOR: return &pg_types[112];
- case PG_REGPROC: return &pg_types[113];
- case PG_REGPROCEDURE: return &pg_types[114];
- case PG_REGTYPE: return &pg_types[115];
- case PG_RELTIME: return &pg_types[116];
- case PG_SMGR: return &pg_types[117];
- case PG_TEXT: return &pg_types[118];
- case PG_TID: return &pg_types[119];
- case PG_TIME: return &pg_types[120];
- case PG_TIMESTAMP: return &pg_types[121];
- case PG_TIMESTAMPTZ: return &pg_types[122];
- case PG_TIMETZ: return &pg_types[123];
- case PG_TINTERVAL: return &pg_types[124];
- case PG_TRIGGER: return &pg_types[125];
- case PG_TSQUERY: return &pg_types[126];
- case PG_TSVECTOR: return &pg_types[127];
- case PG_TXID_SNAPSHOT: return &pg_types[128];
- case PG_UNKNOWN: return &pg_types[129];
- case PG_UUID: return &pg_types[130];
- case PG_VARBIT: return &pg_types[131];
- case PG_VARCHAR: return &pg_types[132];
- case PG_VOID: return &pg_types[133];
- case PG_XID: return &pg_types[134];
- case PG_XML: return &pg_types[135];
+ case PG_DATERANGEARRAY: return &pg_types[13];
+ case PG_FLOAT4ARRAY: return &pg_types[14];
+ case PG_FLOAT8ARRAY: return &pg_types[15];
+ case PG_GTSVECTORARRAY: return &pg_types[16];
+ case PG_INETARRAY: return &pg_types[17];
+ case PG_INT2ARRAY: return &pg_types[18];
+ case PG_INT2VECTORARRAY: return &pg_types[19];
+ case PG_INT4ARRAY: return &pg_types[20];
+ case PG_INT4RANGEARRAY: return &pg_types[21];
+ case PG_INT8ARRAY: return &pg_types[22];
+ case PG_INT8RANGEARRAY: return &pg_types[23];
+ case PG_INTERVALARRAY: return &pg_types[24];
+ case PG_JSONARRAY: return &pg_types[25];
+ case PG_LINEARRAY: return &pg_types[26];
+ case PG_LSEGARRAY: return &pg_types[27];
+ case PG_MACADDRARRAY: return &pg_types[28];
+ case PG_MONEYARRAY: return &pg_types[29];
+ case PG_NAMEARRAY: return &pg_types[30];
+ case PG_NUMERICARRAY: return &pg_types[31];
+ case PG_NUMRANGEARRAY: return &pg_types[32];
+ case PG_OIDARRAY: return &pg_types[33];
+ case PG_OIDVECTORARRAY: return &pg_types[34];
+ case PG_PATHARRAY: return &pg_types[35];
+ case PG_POINTARRAY: return &pg_types[36];
+ case PG_POLYGONARRAY: return &pg_types[37];
+ case PG_RECORDARRAY: return &pg_types[38];
+ case PG_REFCURSORARRAY: return &pg_types[39];
+ case PG_REGCLASSARRAY: return &pg_types[40];
+ case PG_REGCONFIGARRAY: return &pg_types[41];
+ case PG_REGDICTIONARYARRAY: return &pg_types[42];
+ case PG_REGOPERARRAY: return &pg_types[43];
+ case PG_REGOPERATORARRAY: return &pg_types[44];
+ case PG_REGPROCARRAY: return &pg_types[45];
+ case PG_REGPROCEDUREARRAY: return &pg_types[46];
+ case PG_REGTYPEARRAY: return &pg_types[47];
+ case PG_RELTIMEARRAY: return &pg_types[48];
+ case PG_TEXTARRAY: return &pg_types[49];
+ case PG_TIDARRAY: return &pg_types[50];
+ case PG_TIMEARRAY: return &pg_types[51];
+ case PG_TIMESTAMPARRAY: return &pg_types[52];
+ case PG_TIMESTAMPTZARRAY: return &pg_types[53];
+ case PG_TIMETZARRAY: return &pg_types[54];
+ case PG_TINTERVALARRAY: return &pg_types[55];
+ case PG_TSQUERYARRAY: return &pg_types[56];
+ case PG_TSRANGEARRAY: return &pg_types[57];
+ case PG_TSTZRANGEARRAY: return &pg_types[58];
+ case PG_TSVECTORARRAY: return &pg_types[59];
+ case PG_TXID_SNAPSHOTARRAY: return &pg_types[60];
+ case PG_UUIDARRAY: return &pg_types[61];
+ case PG_VARBITARRAY: return &pg_types[62];
+ case PG_VARCHARARRAY: return &pg_types[63];
+ case PG_XIDARRAY: return &pg_types[64];
+ case PG_XMLARRAY: return &pg_types[65];
+ case PG_ABSTIME: return &pg_types[66];
+ case PG_ACLITEM: return &pg_types[67];
+ case PG_ANY: return &pg_types[68];
+ case PG_ANYARRAY: return &pg_types[69];
+ case PG_ANYELEMENT: return &pg_types[70];
+ case PG_ANYENUM: return &pg_types[71];
+ case PG_ANYNONARRAY: return &pg_types[72];
+ case PG_ANYRANGE: return &pg_types[73];
+ case PG_BIT: return &pg_types[74];
+ case PG_BOOL: return &pg_types[75];
+ case PG_BOX: return &pg_types[76];
+ case PG_BPCHAR: return &pg_types[77];
+ case PG_BYTEA: return &pg_types[78];
+ case PG_CHAR: return &pg_types[79];
+ case PG_CID: return &pg_types[80];
+ case PG_CIDR: return &pg_types[81];
+ case PG_CIRCLE: return &pg_types[82];
+ case PG_CSTRING: return &pg_types[83];
+ case PG_DATE: return &pg_types[84];
+ case PG_DATERANGE: return &pg_types[85];
+ case PG_FDW_HANDLER: return &pg_types[86];
+ case PG_FLOAT4: return &pg_types[87];
+ case PG_FLOAT8: return &pg_types[88];
+ case PG_GTSVECTOR: return &pg_types[89];
+ case PG_INET: return &pg_types[90];
+ case PG_INT2: return &pg_types[91];
+ case PG_INT2VECTOR: return &pg_types[92];
+ case PG_INT4: return &pg_types[93];
+ case PG_INT4RANGE: return &pg_types[94];
+ case PG_INT8: return &pg_types[95];
+ case PG_INT8RANGE: return &pg_types[96];
+ case PG_INTERNAL: return &pg_types[97];
+ case PG_INTERVAL: return &pg_types[98];
+ case PG_JSON: return &pg_types[99];
+ case PG_LANGUAGE_HANDLER: return &pg_types[100];
+ case PG_LINE: return &pg_types[101];
+ case PG_LSEG: return &pg_types[102];
+ case PG_MACADDR: return &pg_types[103];
+ case PG_MONEY: return &pg_types[104];
+ case PG_NAME: return &pg_types[105];
+ case PG_NUMERIC: return &pg_types[106];
+ case PG_NUMRANGE: return &pg_types[107];
+ case PG_OID: return &pg_types[108];
+ case PG_OIDVECTOR: return &pg_types[109];
+ case PG_OPAQUE: return &pg_types[110];
+ case PG_PATH: return &pg_types[111];
+ case PG_PG_ATTRIBUTE: return &pg_types[112];
+ case PG_PG_CLASS: return &pg_types[113];
+ case PG_PG_NODE_TREE: return &pg_types[114];
+ case PG_PG_PROC: return &pg_types[115];
+ case PG_PG_TYPE: return &pg_types[116];
+ case PG_POINT: return &pg_types[117];
+ case PG_POLYGON: return &pg_types[118];
+ case PG_RECORD: return &pg_types[119];
+ case PG_REFCURSOR: return &pg_types[120];
+ case PG_REGCLASS: return &pg_types[121];
+ case PG_REGCONFIG: return &pg_types[122];
+ case PG_REGDICTIONARY: return &pg_types[123];
+ case PG_REGOPER: return &pg_types[124];
+ case PG_REGOPERATOR: return &pg_types[125];
+ case PG_REGPROC: return &pg_types[126];
+ case PG_REGPROCEDURE: return &pg_types[127];
+ case PG_REGTYPE: return &pg_types[128];
+ case PG_RELTIME: return &pg_types[129];
+ case PG_SMGR: return &pg_types[130];
+ case PG_TEXT: return &pg_types[131];
+ case PG_TID: return &pg_types[132];
+ case PG_TIME: return &pg_types[133];
+ case PG_TIMESTAMP: return &pg_types[134];
+ case PG_TIMESTAMPTZ: return &pg_types[135];
+ case PG_TIMETZ: return &pg_types[136];
+ case PG_TINTERVAL: return &pg_types[137];
+ case PG_TRIGGER: return &pg_types[138];
+ case PG_TSQUERY: return &pg_types[139];
+ case PG_TSRANGE: return &pg_types[140];
+ case PG_TSTZRANGE: return &pg_types[141];
+ case PG_TSVECTOR: return &pg_types[142];
+ case PG_TXID_SNAPSHOT: return &pg_types[143];
+ case PG_UNKNOWN: return &pg_types[144];
+ case PG_UUID: return &pg_types[145];
+ case PG_VARBIT: return &pg_types[146];
+ case PG_VARCHAR: return &pg_types[147];
+ case PG_VOID: return &pg_types[148];
+ case PG_XID: return &pg_types[149];
+ case PG_XML: return &pg_types[150];
default: return NULL;
}
}
diff --git a/types.h b/types.h
index 159ff39..ded4c07 100644
--- a/types.h
+++ b/types.h
@@ -25,6 +25,7 @@ sql_type_info_t* sql_type_data(int);
#define PG_ANY 2276
#define PG_ANYELEMENT 2283
#define PG_ANYENUM 3500
+#define PG_ANYRANGE 3831
#define PG_BIT 1560
#define PG_BOOL 16
#define PG_BOX 603
@@ -36,6 +37,7 @@ sql_type_info_t* sql_type_data(int);
#define PG_CIRCLE 718
#define PG_CSTRING 2275
#define PG_DATE 1082
+#define PG_DATERANGE 3912
#define PG_FDW_HANDLER 3115
#define PG_FLOAT4 700
#define PG_FLOAT8 701
@@ -44,9 +46,12 @@ sql_type_info_t* sql_type_data(int);
#define PG_INT2 21
#define PG_INT2VECTOR 22
#define PG_INT4 23
+#define PG_INT4RANGE 3904
#define PG_INT8 20
+#define PG_INT8RANGE 3926
#define PG_INTERNAL 2281
#define PG_INTERVAL 1186
+#define PG_JSON 114
#define PG_LANGUAGE_HANDLER 2280
#define PG_LINE 628
#define PG_LSEG 601
@@ -54,6 +59,7 @@ sql_type_info_t* sql_type_data(int);
#define PG_MONEY 790
#define PG_NAME 19
#define PG_NUMERIC 1700
+#define PG_NUMRANGE 3906
#define PG_OID 26
#define PG_OIDVECTOR 30
#define PG_OPAQUE 2282
@@ -86,6 +92,8 @@ sql_type_info_t* sql_type_data(int);
#define PG_TINTERVAL 704
#define PG_TRIGGER 2279
#define PG_TSQUERY 3615
+#define PG_TSRANGE 3908
+#define PG_TSTZRANGE 3910
#define PG_TSVECTOR 3614
#define PG_TXID_SNAPSHOT 2970
#define PG_UNKNOWN 705
@@ -110,6 +118,7 @@ sql_type_info_t* sql_type_data(int);
#define PG_CIRCLEARRAY 719
#define PG_CSTRINGARRAY 1263
#define PG_DATEARRAY 1182
+#define PG_DATERANGEARRAY 3913
#define PG_FLOAT4ARRAY 1021
#define PG_FLOAT8ARRAY 1022
#define PG_GTSVECTORARRAY 3644
@@ -117,14 +126,18 @@ sql_type_info_t* sql_type_data(int);
#define PG_INT2ARRAY 1005
#define PG_INT2VECTORARRAY 1006
#define PG_INT4ARRAY 1007
+#define PG_INT4RANGEARRAY 3905
#define PG_INT8ARRAY 1016
+#define PG_INT8RANGEARRAY 3927
#define PG_INTERVALARRAY 1187
+#define PG_JSONARRAY 199
#define PG_LINEARRAY 629
#define PG_LSEGARRAY 1018
#define PG_MACADDRARRAY 1040
#define PG_MONEYARRAY 791
#define PG_NAMEARRAY 1003
#define PG_NUMERICARRAY 1231
+#define PG_NUMRANGEARRAY 3907
#define PG_OIDARRAY 1028
#define PG_OIDVECTORARRAY 1013
#define PG_PATHARRAY 1019
@@ -149,6 +162,8 @@ sql_type_info_t* sql_type_data(int);
#define PG_TIMETZARRAY 1270
#define PG_TINTERVALARRAY 1025
#define PG_TSQUERYARRAY 3645
+#define PG_TSRANGEARRAY 3909
+#define PG_TSTZRANGEARRAY 3911
#define PG_TSVECTORARRAY 3643
#define PG_TXID_SNAPSHOTARRAY 2949
#define PG_UUIDARRAY 2951
--
1.7.1