[DBD::Pg] Update types via 9.2 source tree
dbdpg-commits-gENoVmVU/[email protected] Wed, 3 Jul 2013 22:27:42 -0400
| Newsgroups | gmane.comp.db.postgresql.dbdpg.cvs |
|---|---|
| Message-ID | <[email protected]> |
Committed by Greg Sabino Mullane <greg-O9fzpki4YnJWk0Htik3J/[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