1 /*-------------------------------------------------------------------------
4 * definition of the system "type casts" relation (pg_cast)
5 * along with the relation's initial contents.
8 * Copyright (c) 2002, PostgreSQL Global Development Group
10 * $Id: pg_cast.h,v 1.2 2002/09/01 00:58:06 tgl Exp $
13 * the genbki.sh script reads this file and generates .bki
14 * information from the DATA() statements.
16 *-------------------------------------------------------------------------
23 Oid castsource; /* source datatype for cast */
24 Oid casttarget; /* destination datatype for cast */
25 Oid castfunc; /* 0 = binary compatible */
26 bool castimplicit; /* allow implicit casting? */
29 typedef FormData_pg_cast *Form_pg_cast;
31 #define Natts_pg_cast 4
32 #define Anum_pg_cast_castsource 1
33 #define Anum_pg_cast_casttarget 2
34 #define Anum_pg_cast_castfunc 3
35 #define Anum_pg_cast_castimplicit 4
38 * initial contents of pg_cast
43 * binary compatible casts
45 DATA(insert ( 25 1042 0 t ));
46 DATA(insert ( 25 1043 0 t ));
47 DATA(insert ( 1042 25 0 t ));
48 DATA(insert ( 1042 1043 0 t ));
49 DATA(insert ( 1043 25 0 t ));
50 DATA(insert ( 1043 1042 0 t ));
52 DATA(insert ( 23 24 0 t ));
53 DATA(insert ( 23 26 0 t ));
54 DATA(insert ( 23 2202 0 t ));
55 DATA(insert ( 23 2203 0 t ));
56 DATA(insert ( 23 2204 0 t ));
57 DATA(insert ( 23 2205 0 t ));
58 DATA(insert ( 23 2206 0 t ));
59 DATA(insert ( 24 23 0 t ));
60 DATA(insert ( 24 26 0 t ));
61 DATA(insert ( 24 2202 0 t ));
62 DATA(insert ( 24 2203 0 t ));
63 DATA(insert ( 24 2204 0 t ));
64 DATA(insert ( 24 2205 0 t ));
65 DATA(insert ( 24 2206 0 t ));
66 DATA(insert ( 26 23 0 t ));
67 DATA(insert ( 26 24 0 t ));
68 DATA(insert ( 26 2202 0 t ));
69 DATA(insert ( 26 2203 0 t ));
70 DATA(insert ( 26 2204 0 t ));
71 DATA(insert ( 26 2205 0 t ));
72 DATA(insert ( 26 2206 0 t ));
73 DATA(insert ( 2202 23 0 t ));
74 DATA(insert ( 2202 24 0 t ));
75 DATA(insert ( 2202 26 0 t ));
76 DATA(insert ( 2202 2203 0 t ));
77 DATA(insert ( 2202 2204 0 t ));
78 DATA(insert ( 2202 2205 0 t ));
79 DATA(insert ( 2202 2206 0 t ));
80 DATA(insert ( 2203 23 0 t ));
81 DATA(insert ( 2203 24 0 t ));
82 DATA(insert ( 2203 26 0 t ));
83 DATA(insert ( 2203 2202 0 t ));
84 DATA(insert ( 2203 2204 0 t ));
85 DATA(insert ( 2203 2205 0 t ));
86 DATA(insert ( 2203 2206 0 t ));
87 DATA(insert ( 2204 23 0 t ));
88 DATA(insert ( 2204 24 0 t ));
89 DATA(insert ( 2204 26 0 t ));
90 DATA(insert ( 2204 2202 0 t ));
91 DATA(insert ( 2204 2203 0 t ));
92 DATA(insert ( 2204 2205 0 t ));
93 DATA(insert ( 2204 2206 0 t ));
94 DATA(insert ( 2205 23 0 t ));
95 DATA(insert ( 2205 24 0 t ));
96 DATA(insert ( 2205 26 0 t ));
97 DATA(insert ( 2205 2202 0 t ));
98 DATA(insert ( 2205 2203 0 t ));
99 DATA(insert ( 2205 2204 0 t ));
100 DATA(insert ( 2205 2206 0 t ));
101 DATA(insert ( 2206 23 0 t ));
102 DATA(insert ( 2206 24 0 t ));
103 DATA(insert ( 2206 26 0 t ));
104 DATA(insert ( 2206 2202 0 t ));
105 DATA(insert ( 2206 2203 0 t ));
106 DATA(insert ( 2206 2204 0 t ));
107 DATA(insert ( 2206 2205 0 t ));
109 DATA(insert ( 23 702 0 t ));
110 DATA(insert ( 702 23 0 t ));
112 DATA(insert ( 23 703 0 t ));
113 DATA(insert ( 703 23 0 t ));
115 DATA(insert ( 650 869 0 t ));
116 DATA(insert ( 869 650 0 t ));
118 DATA(insert ( 1560 1562 0 t ));
119 DATA(insert ( 1562 1560 0 t ));
122 * regular casts through a function
124 * This list can be obtained from the following query as long as the
125 * naming convention of the cast functions remains the same:
127 * select p.proargtypes[0] as source, p.prorettype as target, p.oid as func,
128 * p.proimplicit as implicit
129 * from pg_proc p, pg_type t where p.pronargs=1 and p.proname = t.typname
130 * and p.prorettype = t.oid order by 1, 2;
132 DATA(insert ( 18 25 946 t ));
133 DATA(insert ( 18 1042 860 t ));
134 DATA(insert ( 19 25 406 t ));
135 DATA(insert ( 19 1042 408 t ));
136 DATA(insert ( 19 1043 1401 t ));
137 DATA(insert ( 20 21 714 t ));
138 DATA(insert ( 20 23 480 t ));
139 DATA(insert ( 20 25 1288 t ));
140 DATA(insert ( 20 701 482 t ));
141 DATA(insert ( 20 1043 1623 f ));
142 DATA(insert ( 20 1700 1781 t ));
143 DATA(insert ( 21 20 754 t ));
144 DATA(insert ( 21 23 313 t ));
145 DATA(insert ( 21 25 113 t ));
146 DATA(insert ( 21 700 236 t ));
147 DATA(insert ( 21 701 235 t ));
148 DATA(insert ( 21 1700 1782 t ));
149 DATA(insert ( 23 20 481 t ));
150 DATA(insert ( 23 21 314 t ));
151 DATA(insert ( 23 25 112 t ));
152 DATA(insert ( 23 700 318 t ));
153 DATA(insert ( 23 701 316 t ));
154 DATA(insert ( 23 1043 1619 f ));
155 DATA(insert ( 23 1700 1740 t ));
156 DATA(insert ( 25 18 944 t ));
157 DATA(insert ( 25 19 407 t ));
158 DATA(insert ( 25 20 1289 f ));
159 DATA(insert ( 25 21 818 f ));
160 DATA(insert ( 25 23 819 f ));
161 DATA(insert ( 25 26 817 f ));
162 DATA(insert ( 25 650 1714 f ));
163 DATA(insert ( 25 700 839 f ));
164 DATA(insert ( 25 701 838 f ));
165 DATA(insert ( 25 829 767 f ));
166 DATA(insert ( 25 869 1713 f ));
167 DATA(insert ( 25 1082 748 f ));
168 DATA(insert ( 25 1083 837 f ));
169 DATA(insert ( 25 1114 2022 f ));
170 DATA(insert ( 25 1184 1191 f ));
171 DATA(insert ( 25 1186 1263 f ));
172 DATA(insert ( 25 1266 938 f ));
173 DATA(insert ( 26 25 114 t ));
174 DATA(insert ( 601 600 1532 f ));
175 DATA(insert ( 602 600 1533 f ));
176 DATA(insert ( 602 604 1449 f ));
177 DATA(insert ( 603 600 1534 f ));
178 DATA(insert ( 603 601 1541 f ));
179 DATA(insert ( 603 604 1448 f ));
180 DATA(insert ( 603 718 1479 f ));
181 DATA(insert ( 604 600 1540 f ));
182 DATA(insert ( 604 602 1447 f ));
183 DATA(insert ( 604 603 1446 f ));
184 DATA(insert ( 604 718 1474 f ));
185 DATA(insert ( 700 21 238 f ));
186 DATA(insert ( 700 23 319 f ));
187 DATA(insert ( 700 25 841 t ));
188 DATA(insert ( 700 701 311 t ));
189 DATA(insert ( 700 1700 1742 t ));
190 DATA(insert ( 701 20 483 t ));
191 DATA(insert ( 701 21 237 f ));
192 DATA(insert ( 701 23 317 f ));
193 DATA(insert ( 701 25 840 t ));
194 DATA(insert ( 701 700 312 t ));
195 DATA(insert ( 701 1700 1743 t ));
196 DATA(insert ( 702 1082 1179 f ));
197 DATA(insert ( 702 1083 1364 f ));
198 DATA(insert ( 702 1114 2023 t ));
199 DATA(insert ( 702 1184 1173 t ));
200 DATA(insert ( 703 1186 1177 t ));
201 DATA(insert ( 718 600 1416 f ));
202 DATA(insert ( 718 603 1480 f ));
203 DATA(insert ( 718 604 1544 f ));
204 DATA(insert ( 829 25 752 f ));
205 DATA(insert ( 869 25 730 f ));
206 DATA(insert ( 1042 19 409 t ));
207 DATA(insert ( 1043 19 1400 t ));
208 DATA(insert ( 1082 25 749 t ));
209 DATA(insert ( 1082 1114 2024 t ));
210 DATA(insert ( 1082 1184 1174 t ));
211 DATA(insert ( 1083 25 948 t ));
212 DATA(insert ( 1083 1186 1370 t ));
213 DATA(insert ( 1083 1266 2047 t ));
214 DATA(insert ( 1114 25 2034 t ));
215 DATA(insert ( 1114 702 2030 f ));
216 DATA(insert ( 1114 1082 2029 f ));
217 DATA(insert ( 1114 1083 1316 f ));
218 DATA(insert ( 1114 1184 2028 t ));
219 DATA(insert ( 1184 25 1192 t ));
220 DATA(insert ( 1184 702 1180 f ));
221 DATA(insert ( 1184 1082 1178 f ));
222 DATA(insert ( 1184 1083 2019 f ));
223 DATA(insert ( 1184 1114 2027 t ));
224 DATA(insert ( 1184 1266 1388 f ));
225 DATA(insert ( 1186 25 1193 t ));
226 DATA(insert ( 1186 703 1194 f ));
227 DATA(insert ( 1186 1083 1419 f ));
228 DATA(insert ( 1266 25 939 t ));
229 DATA(insert ( 1266 1083 2046 t ));
230 DATA(insert ( 1700 20 1779 f ));
231 DATA(insert ( 1700 21 1783 f ));
232 DATA(insert ( 1700 23 1744 f ));
233 DATA(insert ( 1700 700 1745 f ));
234 DATA(insert ( 1700 701 1746 f ));
236 #endif /* PG_CAST_H */