@@ -25,7 +25,6 @@ module Database.PostgreSQL.Simple.TypeInfo.Static
@@ -67,6 +66,54 @@ module Database.PostgreSQL.Simple.TypeInfo.Static
72import Database.PostgreSQL.LibPQ (Oid(..))
119import Database.PostgreSQL.LibPQ (Oid(..))
@@ -81,7 +128,6 @@ staticTypeInfo (Oid x) = case x of
81 20 -> Just int8
128 20 -> Just int8
82 21 -> Just int2
129 21 -> Just int2
83 23 -> Just int4
130 23 -> Just int4
85 25 -> Just text
131 25 -> Just text
86 26 -> Just oid
132 26 -> Just oid
87 27 -> Just tid
133 27 -> Just tid
@@ -123,6 +169,54 @@ staticTypeInfo (Oid x) = case x of
123 2950 -> Just uuid
169 2950 -> Just uuid
124 114 -> Just json
170 114 -> Just json
125 3802 -> Just jsonb
171 3802 -> Just jsonb
172+ 22 -> Just int2vector
173+ 30 -> Just oidvector
174+ 143 -> Just array_xml
175+ 199 -> Just array_json
176+ 629 -> Just array_line
177+ 651 -> Just array_cidr
178+ 719 -> Just array_circle
179+ 791 -> Just array_money
180+ 1000 -> Just array_bool
181+ 1001 -> Just array_bytea
182+ 1002 -> Just array_char
183+ 1003 -> Just array_name
184+ 1005 -> Just array_int2
185+ 1006 -> Just array_int2vector
186+ 1007 -> Just array_int4
187+ 1009 -> Just array_text
188+ 1010 -> Just array_tid
189+ 1011 -> Just array_xid
190+ 1012 -> Just array_cid
191+ 1013 -> Just array_oidvector
192+ 1014 -> Just array_bpchar
193+ 1015 -> Just array_varchar
194+ 1016 -> Just array_int8
195+ 1017 -> Just array_point
196+ 1018 -> Just array_lseg
197+ 1019 -> Just array_path
198+ 1020 -> Just array_box
199+ 1021 -> Just array_float4
200+ 1022 -> Just array_float8
201+ 1023 -> Just array_abstime
202+ 1024 -> Just array_reltime
203+ 1025 -> Just array_tinterval
204+ 1027 -> Just array_polygon
205+ 1028 -> Just array_oid
206+ 1040 -> Just array_macaddr
207+ 1041 -> Just array_inet
208+ 1115 -> Just array_timestamp
209+ 1182 -> Just array_date
210+ 1183 -> Just array_time
211+ 1185 -> Just array_timestamptz
212+ 1187 -> Just array_interval
213+ 1231 -> Just array_numeric
214+ 1270 -> Just array_timetz
215+ 1561 -> Just array_bit
216+ 1563 -> Just array_varbit
217+ 2201 -> Just array_refcursor
218+ 2951 -> Just array_uuid
219+ 3807 -> Just array_jsonb
126 _ -> Nothing
220 _ -> Nothing
128bool :: TypeInfo
222bool :: TypeInfo
@@ -181,14 +275,6 @@ int4 = Basic {
181 typname = "int4"
275 typname = "int4"
192text :: TypeInfo
278text :: TypeInfo
193text = Basic {
279text = Basic {
194 typoid = Oid 25,
280 typoid = Oid 25,
@@ -517,3 +603,435 @@ jsonb = Basic {
517 typdelim = ',',
603 typdelim = ',',
518 typname = "jsonb"
604 typname = "jsonb"
607+int2vector :: TypeInfo
612+ typname = "int2vector",
616+oidvector :: TypeInfo
621+ typname = "oidvector",
625+array_xml :: TypeInfo
634+array_json :: TypeInfo
643+array_line :: TypeInfo
652+array_cidr :: TypeInfo
661+array_circle :: TypeInfo
662+array_circle = Array {
666+ typname = "_circle",
670+array_money :: TypeInfo
671+array_money = Array {
679+array_bool :: TypeInfo
688+array_bytea :: TypeInfo
689+array_bytea = Array {
697+array_char :: TypeInfo
706+array_name :: TypeInfo
715+array_int2 :: TypeInfo
724+array_int2vector :: TypeInfo
725+array_int2vector = Array {
729+ typname = "_int2vector",
730+ typelem = int2vector
733+array_int4 :: TypeInfo
742+array_text :: TypeInfo
751+array_tid :: TypeInfo
760+array_xid :: TypeInfo
769+array_cid :: TypeInfo
778+array_oidvector :: TypeInfo
779+array_oidvector = Array {
783+ typname = "_oidvector",
787+array_bpchar :: TypeInfo
788+array_bpchar = Array {
792+ typname = "_bpchar",
796+array_varchar :: TypeInfo
797+array_varchar = Array {
801+ typname = "_varchar",
805+array_int8 :: TypeInfo
814+array_point :: TypeInfo
815+array_point = Array {
823+array_lseg :: TypeInfo
832+array_path :: TypeInfo
841+array_box :: TypeInfo
850+array_float4 :: TypeInfo
851+array_float4 = Array {
855+ typname = "_float4",
859+array_float8 :: TypeInfo
860+array_float8 = Array {
864+ typname = "_float8",
868+array_abstime :: TypeInfo
869+array_abstime = Array {
873+ typname = "_abstime",
877+array_reltime :: TypeInfo
878+array_reltime = Array {
882+ typname = "_reltime",
886+array_tinterval :: TypeInfo
887+array_tinterval = Array {
891+ typname = "_tinterval",
895+array_polygon :: TypeInfo
896+array_polygon = Array {
900+ typname = "_polygon",
904+array_oid :: TypeInfo
913+array_macaddr :: TypeInfo
914+array_macaddr = Array {
918+ typname = "_macaddr",
922+array_inet :: TypeInfo
931+array_timestamp :: TypeInfo
932+array_timestamp = Array {
936+ typname = "_timestamp",
940+array_date :: TypeInfo
949+array_time :: TypeInfo
958+array_timestamptz :: TypeInfo
959+array_timestamptz = Array {
963+ typname = "_timestamptz",
964+ typelem = timestamptz
967+array_interval :: TypeInfo
968+array_interval = Array {
972+ typname = "_interval",
976+array_numeric :: TypeInfo
977+array_numeric = Array {
981+ typname = "_numeric",
985+array_timetz :: TypeInfo
986+array_timetz = Array {
990+ typname = "_timetz",
994+array_bit :: TypeInfo
1003+array_varbit :: TypeInfo
1004+array_varbit = Array {
1008+ typname = "_varbit",
1012+array_refcursor :: TypeInfo
1013+array_refcursor = Array {
1017+ typname = "_refcursor",
1018+ typelem = refcursor
1021+array_uuid :: TypeInfo
1022+array_uuid = Array {
1030+array_jsonb :: TypeInfo
1031+array_jsonb = Array {
1035+ typname = "_jsonb",