1 #----------------------------------------------------------------------
4 # Initial contents of the pg_proc system catalog.
6 # Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
7 # Portions Copyright (c) 1994, Regents of the University of California
9 # src/include/catalog/pg_proc.dat
11 #----------------------------------------------------------------------
15 # Note: every entry in pg_proc.dat is expected to have a 'descr' comment,
16 # except for functions that implement pg_operator.dat operators and don't
17 # have a good reason to be called directly rather than via the operator.
18 # (If you do expect such a function to be used directly, you should
19 # duplicate the operator's comment.) initdb will supply suitable default
20 # comments for functions referenced by pg_operator.
22 # Try to follow the style of existing functions' comments.
23 # Some recommended conventions:
25 # "I/O" for typinput, typoutput, typreceive, typsend functions
26 # "I/O typmod" for typmodin, typmodout functions
27 # "aggregate transition function" for aggtransfn functions, unless
28 # they are reasonably useful in their own right
29 # "aggregate final function" for aggfinalfn functions (likewise)
30 # "convert srctypename to desttypename" for cast functions
31 # "less-equal-greater" for B-tree comparison functions
33 # Note: pronargs is computed when this file is read, so it does not need
34 # to be specified in entries here. See AddDefaultValues() in Catalog.pm.
36 # Once upon a time these entries were ordered by OID. Lately it's often
37 # been the custom to insert new entries adjacent to related older entries.
38 # Try to do one or the other though, don't just insert entries at random.
42 { oid
=> '1242', descr
=> 'I/O',
43 proname
=> 'boolin', prorettype
=> 'bool', proargtypes
=> 'cstring',
45 { oid
=> '1243', descr
=> 'I/O',
46 proname
=> 'boolout', prorettype
=> 'cstring', proargtypes
=> 'bool',
47 prosrc
=> 'boolout' },
48 { oid
=> '1244', descr
=> 'I/O',
49 proname
=> 'byteain', prorettype
=> 'bytea', proargtypes
=> 'cstring',
50 prosrc
=> 'byteain' },
51 { oid
=> '31', descr
=> 'I/O',
52 proname
=> 'byteaout', prorettype
=> 'cstring', proargtypes
=> 'bytea',
53 prosrc
=> 'byteaout' },
54 { oid
=> '1245', descr
=> 'I/O',
55 proname
=> 'charin', prorettype
=> 'char', proargtypes
=> 'cstring',
57 { oid
=> '33', descr
=> 'I/O',
58 proname
=> 'charout', prorettype
=> 'cstring', proargtypes
=> 'char',
59 prosrc
=> 'charout' },
60 { oid
=> '34', descr
=> 'I/O',
61 proname
=> 'namein', prorettype
=> 'name', proargtypes
=> 'cstring',
63 { oid
=> '35', descr
=> 'I/O',
64 proname
=> 'nameout', prorettype
=> 'cstring', proargtypes
=> 'name',
65 prosrc
=> 'nameout' },
66 { oid
=> '38', descr
=> 'I/O',
67 proname
=> 'int2in', prorettype
=> 'int2', proargtypes
=> 'cstring',
69 { oid
=> '39', descr
=> 'I/O',
70 proname
=> 'int2out', prorettype
=> 'cstring', proargtypes
=> 'int2',
71 prosrc
=> 'int2out' },
72 { oid
=> '40', descr
=> 'I/O',
73 proname
=> 'int2vectorin', prorettype
=> 'int2vector',
74 proargtypes
=> 'cstring', prosrc
=> 'int2vectorin' },
75 { oid
=> '41', descr
=> 'I/O',
76 proname
=> 'int2vectorout', prorettype
=> 'cstring',
77 proargtypes
=> 'int2vector', prosrc
=> 'int2vectorout' },
78 { oid
=> '42', descr
=> 'I/O',
79 proname
=> 'int4in', prorettype
=> 'int4', proargtypes
=> 'cstring',
81 { oid
=> '43', descr
=> 'I/O',
82 proname
=> 'int4out', prorettype
=> 'cstring', proargtypes
=> 'int4',
83 prosrc
=> 'int4out' },
84 { oid
=> '44', descr
=> 'I/O',
85 proname
=> 'regprocin', provolatile
=> 's', prorettype
=> 'regproc',
86 proargtypes
=> 'cstring', prosrc
=> 'regprocin' },
87 { oid
=> '45', descr
=> 'I/O',
88 proname
=> 'regprocout', provolatile
=> 's', prorettype
=> 'cstring',
89 proargtypes
=> 'regproc', prosrc
=> 'regprocout' },
90 { oid
=> '3494', descr
=> 'convert proname to regproc',
91 proname
=> 'to_regproc', provolatile
=> 's', prorettype
=> 'regproc',
92 proargtypes
=> 'text', prosrc
=> 'to_regproc' },
93 { oid
=> '3479', descr
=> 'convert proname to regprocedure',
94 proname
=> 'to_regprocedure', provolatile
=> 's',
95 prorettype
=> 'regprocedure', proargtypes
=> 'text',
96 prosrc
=> 'to_regprocedure' },
97 { oid
=> '46', descr
=> 'I/O',
98 proname
=> 'textin', prorettype
=> 'text', proargtypes
=> 'cstring',
100 { oid
=> '47', descr
=> 'I/O',
101 proname
=> 'textout', prorettype
=> 'cstring', proargtypes
=> 'text',
102 prosrc
=> 'textout' },
103 { oid
=> '48', descr
=> 'I/O',
104 proname
=> 'tidin', prorettype
=> 'tid', proargtypes
=> 'cstring',
106 { oid
=> '49', descr
=> 'I/O',
107 proname
=> 'tidout', prorettype
=> 'cstring', proargtypes
=> 'tid',
108 prosrc
=> 'tidout' },
109 { oid
=> '50', descr
=> 'I/O',
110 proname
=> 'xidin', prorettype
=> 'xid', proargtypes
=> 'cstring',
112 { oid
=> '51', descr
=> 'I/O',
113 proname
=> 'xidout', prorettype
=> 'cstring', proargtypes
=> 'xid',
114 prosrc
=> 'xidout' },
115 { oid
=> '5070', descr
=> 'I/O',
116 proname
=> 'xid8in', prorettype
=> 'xid8', proargtypes
=> 'cstring',
117 prosrc
=> 'xid8in' },
118 { oid
=> '5081', descr
=> 'I/O',
119 proname
=> 'xid8out', prorettype
=> 'cstring', proargtypes
=> 'xid8',
120 prosrc
=> 'xid8out' },
121 { oid
=> '5082', descr
=> 'I/O',
122 proname
=> 'xid8recv', prorettype
=> 'xid8', proargtypes
=> 'internal',
123 prosrc
=> 'xid8recv' },
124 { oid
=> '5083', descr
=> 'I/O',
125 proname
=> 'xid8send', prorettype
=> 'bytea', proargtypes
=> 'xid8',
126 prosrc
=> 'xid8send' },
127 { oid
=> '52', descr
=> 'I/O',
128 proname
=> 'cidin', prorettype
=> 'cid', proargtypes
=> 'cstring',
130 { oid
=> '53', descr
=> 'I/O',
131 proname
=> 'cidout', prorettype
=> 'cstring', proargtypes
=> 'cid',
132 prosrc
=> 'cidout' },
133 { oid
=> '54', descr
=> 'I/O',
134 proname
=> 'oidvectorin', prorettype
=> 'oidvector', proargtypes
=> 'cstring',
135 prosrc
=> 'oidvectorin' },
136 { oid
=> '55', descr
=> 'I/O',
137 proname
=> 'oidvectorout', prorettype
=> 'cstring',
138 proargtypes
=> 'oidvector', prosrc
=> 'oidvectorout' },
140 proname
=> 'boollt', proleakproof
=> 't', prorettype
=> 'bool',
141 proargtypes
=> 'bool bool', prosrc
=> 'boollt' },
143 proname
=> 'boolgt', proleakproof
=> 't', prorettype
=> 'bool',
144 proargtypes
=> 'bool bool', prosrc
=> 'boolgt' },
146 proname
=> 'booleq', proleakproof
=> 't', prorettype
=> 'bool',
147 proargtypes
=> 'bool bool', prosrc
=> 'booleq' },
149 proname
=> 'chareq', proleakproof
=> 't', prorettype
=> 'bool',
150 proargtypes
=> 'char char', prosrc
=> 'chareq' },
152 proname
=> 'nameeq', proleakproof
=> 't', prorettype
=> 'bool',
153 proargtypes
=> 'name name', prosrc
=> 'nameeq' },
155 proname
=> 'int2eq', proleakproof
=> 't', prorettype
=> 'bool',
156 proargtypes
=> 'int2 int2', prosrc
=> 'int2eq' },
158 proname
=> 'int2lt', proleakproof
=> 't', prorettype
=> 'bool',
159 proargtypes
=> 'int2 int2', prosrc
=> 'int2lt' },
161 proname
=> 'int4eq', proleakproof
=> 't', prorettype
=> 'bool',
162 proargtypes
=> 'int4 int4', prosrc
=> 'int4eq' },
164 proname
=> 'int4lt', proleakproof
=> 't', prorettype
=> 'bool',
165 proargtypes
=> 'int4 int4', prosrc
=> 'int4lt' },
167 proname
=> 'texteq', proleakproof
=> 't', prorettype
=> 'bool',
168 proargtypes
=> 'text text', prosrc
=> 'texteq' },
170 proname
=> 'starts_with', prosupport
=> 'text_starts_with_support',
171 proleakproof
=> 't', prorettype
=> 'bool', proargtypes
=> 'text text',
172 prosrc
=> 'text_starts_with' },
173 { oid
=> '6242', descr
=> 'planner support for text_starts_with',
174 proname
=> 'text_starts_with_support', prorettype
=> 'internal',
175 proargtypes
=> 'internal', prosrc
=> 'text_starts_with_support' },
177 proname
=> 'xideq', proleakproof
=> 't', prorettype
=> 'bool',
178 proargtypes
=> 'xid xid', prosrc
=> 'xideq' },
180 proname
=> 'xidneq', proleakproof
=> 't', prorettype
=> 'bool',
181 proargtypes
=> 'xid xid', prosrc
=> 'xidneq' },
183 proname
=> 'xid8eq', proleakproof
=> 't', prorettype
=> 'bool',
184 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8eq' },
186 proname
=> 'xid8ne', proleakproof
=> 't', prorettype
=> 'bool',
187 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8ne' },
189 proname
=> 'xid8lt', proleakproof
=> 't', prorettype
=> 'bool',
190 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8lt' },
192 proname
=> 'xid8gt', proleakproof
=> 't', prorettype
=> 'bool',
193 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8gt' },
195 proname
=> 'xid8le', proleakproof
=> 't', prorettype
=> 'bool',
196 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8le' },
198 proname
=> 'xid8ge', proleakproof
=> 't', prorettype
=> 'bool',
199 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8ge' },
200 { oid
=> '5096', descr
=> 'less-equal-greater',
201 proname
=> 'xid8cmp', proleakproof
=> 't', prorettype
=> 'int4',
202 proargtypes
=> 'xid8 xid8', prosrc
=> 'xid8cmp' },
203 { oid
=> '5071', descr
=> 'convert xid8 to xid',
204 proname
=> 'xid', prorettype
=> 'xid', proargtypes
=> 'xid8',
205 prosrc
=> 'xid8toxid' },
206 { oid
=> '5097', descr
=> 'larger of two',
207 proname
=> 'xid8_larger', prorettype
=> 'xid8', proargtypes
=> 'xid8 xid8',
208 prosrc
=> 'xid8_larger' },
209 { oid
=> '5098', descr
=> 'smaller of two',
210 proname
=> 'xid8_smaller', prorettype
=> 'xid8', proargtypes
=> 'xid8 xid8',
211 prosrc
=> 'xid8_smaller' },
213 proname
=> 'cideq', proleakproof
=> 't', prorettype
=> 'bool',
214 proargtypes
=> 'cid cid', prosrc
=> 'cideq' },
216 proname
=> 'charne', proleakproof
=> 't', prorettype
=> 'bool',
217 proargtypes
=> 'char char', prosrc
=> 'charne' },
219 proname
=> 'charlt', proleakproof
=> 't', prorettype
=> 'bool',
220 proargtypes
=> 'char char', prosrc
=> 'charlt' },
222 proname
=> 'charle', proleakproof
=> 't', prorettype
=> 'bool',
223 proargtypes
=> 'char char', prosrc
=> 'charle' },
225 proname
=> 'chargt', proleakproof
=> 't', prorettype
=> 'bool',
226 proargtypes
=> 'char char', prosrc
=> 'chargt' },
228 proname
=> 'charge', proleakproof
=> 't', prorettype
=> 'bool',
229 proargtypes
=> 'char char', prosrc
=> 'charge' },
230 { oid
=> '77', descr
=> 'convert char to int4',
231 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'char',
232 prosrc
=> 'chartoi4' },
233 { oid
=> '78', descr
=> 'convert int4 to char',
234 proname
=> 'char', prorettype
=> 'char', proargtypes
=> 'int4',
235 prosrc
=> 'i4tochar' },
238 proname
=> 'nameregexeq', prosupport
=> 'textregexeq_support',
239 prorettype
=> 'bool', proargtypes
=> 'name text', prosrc
=> 'nameregexeq' },
241 proname
=> 'nameregexne', prorettype
=> 'bool', proargtypes
=> 'name text',
242 prosrc
=> 'nameregexne' },
244 proname
=> 'textregexeq', prosupport
=> 'textregexeq_support',
245 prorettype
=> 'bool', proargtypes
=> 'text text', prosrc
=> 'textregexeq' },
247 proname
=> 'textregexne', prorettype
=> 'bool', proargtypes
=> 'text text',
248 prosrc
=> 'textregexne' },
249 { oid
=> '1364', descr
=> 'planner support for textregexeq',
250 proname
=> 'textregexeq_support', prorettype
=> 'internal',
251 proargtypes
=> 'internal', prosrc
=> 'textregexeq_support' },
253 { oid
=> '1257', descr
=> 'length',
254 proname
=> 'textlen', prorettype
=> 'int4', proargtypes
=> 'text',
255 prosrc
=> 'textlen' },
257 proname
=> 'textcat', prorettype
=> 'text', proargtypes
=> 'text text',
258 prosrc
=> 'textcat' },
261 proname
=> 'boolne', proleakproof
=> 't', prorettype
=> 'bool',
262 proargtypes
=> 'bool bool', prosrc
=> 'boolne' },
263 { oid
=> '89', descr
=> 'PostgreSQL version string',
264 proname
=> 'version', provolatile
=> 's', prorettype
=> 'text',
265 proargtypes
=> '', prosrc
=> 'pgsql_version' },
267 { oid
=> '86', descr
=> 'I/O',
268 proname
=> 'pg_ddl_command_in', prorettype
=> 'pg_ddl_command',
269 proargtypes
=> 'cstring', prosrc
=> 'pg_ddl_command_in' },
270 { oid
=> '87', descr
=> 'I/O',
271 proname
=> 'pg_ddl_command_out', prorettype
=> 'cstring',
272 proargtypes
=> 'pg_ddl_command', prosrc
=> 'pg_ddl_command_out' },
273 { oid
=> '88', descr
=> 'I/O',
274 proname
=> 'pg_ddl_command_recv', prorettype
=> 'pg_ddl_command',
275 proargtypes
=> 'internal', prosrc
=> 'pg_ddl_command_recv' },
276 { oid
=> '90', descr
=> 'I/O',
277 proname
=> 'pg_ddl_command_send', prorettype
=> 'bytea',
278 proargtypes
=> 'pg_ddl_command', prosrc
=> 'pg_ddl_command_send' },
282 { oid
=> '101', descr
=> 'restriction selectivity of = and related operators',
283 proname
=> 'eqsel', provolatile
=> 's', prorettype
=> 'float8',
284 proargtypes
=> 'internal oid internal int4', prosrc
=> 'eqsel' },
286 descr
=> 'restriction selectivity of <> and related operators',
287 proname
=> 'neqsel', provolatile
=> 's', prorettype
=> 'float8',
288 proargtypes
=> 'internal oid internal int4', prosrc
=> 'neqsel' },
290 descr
=> 'restriction selectivity of < and related operators on scalar datatypes',
291 proname
=> 'scalarltsel', provolatile
=> 's', prorettype
=> 'float8',
292 proargtypes
=> 'internal oid internal int4', prosrc
=> 'scalarltsel' },
294 descr
=> 'restriction selectivity of > and related operators on scalar datatypes',
295 proname
=> 'scalargtsel', provolatile
=> 's', prorettype
=> 'float8',
296 proargtypes
=> 'internal oid internal int4', prosrc
=> 'scalargtsel' },
297 { oid
=> '105', descr
=> 'join selectivity of = and related operators',
298 proname
=> 'eqjoinsel', provolatile
=> 's', prorettype
=> 'float8',
299 proargtypes
=> 'internal oid internal int2 internal', prosrc
=> 'eqjoinsel' },
300 { oid
=> '106', descr
=> 'join selectivity of <> and related operators',
301 proname
=> 'neqjoinsel', provolatile
=> 's', prorettype
=> 'float8',
302 proargtypes
=> 'internal oid internal int2 internal',
303 prosrc
=> 'neqjoinsel' },
305 descr
=> 'join selectivity of < and related operators on scalar datatypes',
306 proname
=> 'scalarltjoinsel', provolatile
=> 's', prorettype
=> 'float8',
307 proargtypes
=> 'internal oid internal int2 internal',
308 prosrc
=> 'scalarltjoinsel' },
310 descr
=> 'join selectivity of > and related operators on scalar datatypes',
311 proname
=> 'scalargtjoinsel', provolatile
=> 's', prorettype
=> 'float8',
312 proargtypes
=> 'internal oid internal int2 internal',
313 prosrc
=> 'scalargtjoinsel' },
316 descr
=> 'restriction selectivity of <= and related operators on scalar datatypes',
317 proname
=> 'scalarlesel', provolatile
=> 's', prorettype
=> 'float8',
318 proargtypes
=> 'internal oid internal int4', prosrc
=> 'scalarlesel' },
320 descr
=> 'restriction selectivity of >= and related operators on scalar datatypes',
321 proname
=> 'scalargesel', provolatile
=> 's', prorettype
=> 'float8',
322 proargtypes
=> 'internal oid internal int4', prosrc
=> 'scalargesel' },
324 descr
=> 'join selectivity of <= and related operators on scalar datatypes',
325 proname
=> 'scalarlejoinsel', provolatile
=> 's', prorettype
=> 'float8',
326 proargtypes
=> 'internal oid internal int2 internal',
327 prosrc
=> 'scalarlejoinsel' },
329 descr
=> 'join selectivity of >= and related operators on scalar datatypes',
330 proname
=> 'scalargejoinsel', provolatile
=> 's', prorettype
=> 'float8',
331 proargtypes
=> 'internal oid internal int2 internal',
332 prosrc
=> 'scalargejoinsel' },
334 { oid
=> '109', descr
=> 'I/O',
335 proname
=> 'unknownin', prorettype
=> 'unknown', proargtypes
=> 'cstring',
336 prosrc
=> 'unknownin' },
337 { oid
=> '110', descr
=> 'I/O',
338 proname
=> 'unknownout', prorettype
=> 'cstring', proargtypes
=> 'unknown',
339 prosrc
=> 'unknownout' },
342 proname
=> 'box_above_eq', prorettype
=> 'bool', proargtypes
=> 'box box',
343 prosrc
=> 'box_above_eq' },
345 proname
=> 'box_below_eq', prorettype
=> 'bool', proargtypes
=> 'box box',
346 prosrc
=> 'box_below_eq' },
348 { oid
=> '117', descr
=> 'I/O',
349 proname
=> 'point_in', prorettype
=> 'point', proargtypes
=> 'cstring',
350 prosrc
=> 'point_in' },
351 { oid
=> '118', descr
=> 'I/O',
352 proname
=> 'point_out', prorettype
=> 'cstring', proargtypes
=> 'point',
353 prosrc
=> 'point_out' },
354 { oid
=> '119', descr
=> 'I/O',
355 proname
=> 'lseg_in', prorettype
=> 'lseg', proargtypes
=> 'cstring',
356 prosrc
=> 'lseg_in' },
357 { oid
=> '120', descr
=> 'I/O',
358 proname
=> 'lseg_out', prorettype
=> 'cstring', proargtypes
=> 'lseg',
359 prosrc
=> 'lseg_out' },
360 { oid
=> '121', descr
=> 'I/O',
361 proname
=> 'path_in', prorettype
=> 'path', proargtypes
=> 'cstring',
362 prosrc
=> 'path_in' },
363 { oid
=> '122', descr
=> 'I/O',
364 proname
=> 'path_out', prorettype
=> 'cstring', proargtypes
=> 'path',
365 prosrc
=> 'path_out' },
366 { oid
=> '123', descr
=> 'I/O',
367 proname
=> 'box_in', prorettype
=> 'box', proargtypes
=> 'cstring',
368 prosrc
=> 'box_in' },
369 { oid
=> '124', descr
=> 'I/O',
370 proname
=> 'box_out', prorettype
=> 'cstring', proargtypes
=> 'box',
371 prosrc
=> 'box_out' },
373 proname
=> 'box_overlap', prorettype
=> 'bool', proargtypes
=> 'box box',
374 prosrc
=> 'box_overlap' },
376 proname
=> 'box_ge', prorettype
=> 'bool', proargtypes
=> 'box box',
377 prosrc
=> 'box_ge' },
379 proname
=> 'box_gt', prorettype
=> 'bool', proargtypes
=> 'box box',
380 prosrc
=> 'box_gt' },
382 proname
=> 'box_eq', prorettype
=> 'bool', proargtypes
=> 'box box',
383 prosrc
=> 'box_eq' },
385 proname
=> 'box_lt', prorettype
=> 'bool', proargtypes
=> 'box box',
386 prosrc
=> 'box_lt' },
388 proname
=> 'box_le', prorettype
=> 'bool', proargtypes
=> 'box box',
389 prosrc
=> 'box_le' },
391 proname
=> 'point_above', prorettype
=> 'bool', proargtypes
=> 'point point',
392 prosrc
=> 'point_above' },
394 proname
=> 'point_left', prorettype
=> 'bool', proargtypes
=> 'point point',
395 prosrc
=> 'point_left' },
397 proname
=> 'point_right', prorettype
=> 'bool', proargtypes
=> 'point point',
398 prosrc
=> 'point_right' },
400 proname
=> 'point_below', prorettype
=> 'bool', proargtypes
=> 'point point',
401 prosrc
=> 'point_below' },
403 proname
=> 'point_eq', prorettype
=> 'bool', proargtypes
=> 'point point',
404 prosrc
=> 'point_eq' },
406 proname
=> 'on_pb', prorettype
=> 'bool', proargtypes
=> 'point box',
409 proname
=> 'on_ppath', prorettype
=> 'bool', proargtypes
=> 'point path',
410 prosrc
=> 'on_ppath' },
412 proname
=> 'box_center', prorettype
=> 'point', proargtypes
=> 'box',
413 prosrc
=> 'box_center' },
415 descr
=> 'restriction selectivity for area-comparison operators',
416 proname
=> 'areasel', provolatile
=> 's', prorettype
=> 'float8',
417 proargtypes
=> 'internal oid internal int4', prosrc
=> 'areasel' },
418 { oid
=> '140', descr
=> 'join selectivity for area-comparison operators',
419 proname
=> 'areajoinsel', provolatile
=> 's', prorettype
=> 'float8',
420 proargtypes
=> 'internal oid internal int2 internal',
421 prosrc
=> 'areajoinsel' },
423 proname
=> 'int4mul', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
424 prosrc
=> 'int4mul' },
426 proname
=> 'int4ne', proleakproof
=> 't', prorettype
=> 'bool',
427 proargtypes
=> 'int4 int4', prosrc
=> 'int4ne' },
429 proname
=> 'int2ne', proleakproof
=> 't', prorettype
=> 'bool',
430 proargtypes
=> 'int2 int2', prosrc
=> 'int2ne' },
432 proname
=> 'int2gt', proleakproof
=> 't', prorettype
=> 'bool',
433 proargtypes
=> 'int2 int2', prosrc
=> 'int2gt' },
435 proname
=> 'int4gt', proleakproof
=> 't', prorettype
=> 'bool',
436 proargtypes
=> 'int4 int4', prosrc
=> 'int4gt' },
438 proname
=> 'int2le', proleakproof
=> 't', prorettype
=> 'bool',
439 proargtypes
=> 'int2 int2', prosrc
=> 'int2le' },
441 proname
=> 'int4le', proleakproof
=> 't', prorettype
=> 'bool',
442 proargtypes
=> 'int4 int4', prosrc
=> 'int4le' },
444 proname
=> 'int4ge', proleakproof
=> 't', prorettype
=> 'bool',
445 proargtypes
=> 'int4 int4', prosrc
=> 'int4ge' },
447 proname
=> 'int2ge', proleakproof
=> 't', prorettype
=> 'bool',
448 proargtypes
=> 'int2 int2', prosrc
=> 'int2ge' },
450 proname
=> 'int2mul', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
451 prosrc
=> 'int2mul' },
453 proname
=> 'int2div', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
454 prosrc
=> 'int2div' },
456 proname
=> 'int4div', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
457 prosrc
=> 'int4div' },
459 proname
=> 'int2mod', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
460 prosrc
=> 'int2mod' },
462 proname
=> 'int4mod', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
463 prosrc
=> 'int4mod' },
465 proname
=> 'textne', proleakproof
=> 't', prorettype
=> 'bool',
466 proargtypes
=> 'text text', prosrc
=> 'textne' },
468 proname
=> 'int24eq', proleakproof
=> 't', prorettype
=> 'bool',
469 proargtypes
=> 'int2 int4', prosrc
=> 'int24eq' },
471 proname
=> 'int42eq', proleakproof
=> 't', prorettype
=> 'bool',
472 proargtypes
=> 'int4 int2', prosrc
=> 'int42eq' },
474 proname
=> 'int24lt', proleakproof
=> 't', prorettype
=> 'bool',
475 proargtypes
=> 'int2 int4', prosrc
=> 'int24lt' },
477 proname
=> 'int42lt', proleakproof
=> 't', prorettype
=> 'bool',
478 proargtypes
=> 'int4 int2', prosrc
=> 'int42lt' },
480 proname
=> 'int24gt', proleakproof
=> 't', prorettype
=> 'bool',
481 proargtypes
=> 'int2 int4', prosrc
=> 'int24gt' },
483 proname
=> 'int42gt', proleakproof
=> 't', prorettype
=> 'bool',
484 proargtypes
=> 'int4 int2', prosrc
=> 'int42gt' },
486 proname
=> 'int24ne', proleakproof
=> 't', prorettype
=> 'bool',
487 proargtypes
=> 'int2 int4', prosrc
=> 'int24ne' },
489 proname
=> 'int42ne', proleakproof
=> 't', prorettype
=> 'bool',
490 proargtypes
=> 'int4 int2', prosrc
=> 'int42ne' },
492 proname
=> 'int24le', proleakproof
=> 't', prorettype
=> 'bool',
493 proargtypes
=> 'int2 int4', prosrc
=> 'int24le' },
495 proname
=> 'int42le', proleakproof
=> 't', prorettype
=> 'bool',
496 proargtypes
=> 'int4 int2', prosrc
=> 'int42le' },
498 proname
=> 'int24ge', proleakproof
=> 't', prorettype
=> 'bool',
499 proargtypes
=> 'int2 int4', prosrc
=> 'int24ge' },
501 proname
=> 'int42ge', proleakproof
=> 't', prorettype
=> 'bool',
502 proargtypes
=> 'int4 int2', prosrc
=> 'int42ge' },
504 proname
=> 'int24mul', prorettype
=> 'int4', proargtypes
=> 'int2 int4',
505 prosrc
=> 'int24mul' },
507 proname
=> 'int42mul', prorettype
=> 'int4', proargtypes
=> 'int4 int2',
508 prosrc
=> 'int42mul' },
510 proname
=> 'int24div', prorettype
=> 'int4', proargtypes
=> 'int2 int4',
511 prosrc
=> 'int24div' },
513 proname
=> 'int42div', prorettype
=> 'int4', proargtypes
=> 'int4 int2',
514 prosrc
=> 'int42div' },
516 proname
=> 'int2pl', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
517 prosrc
=> 'int2pl' },
519 proname
=> 'int4pl', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
520 prosrc
=> 'int4pl' },
522 proname
=> 'int24pl', prorettype
=> 'int4', proargtypes
=> 'int2 int4',
523 prosrc
=> 'int24pl' },
525 proname
=> 'int42pl', prorettype
=> 'int4', proargtypes
=> 'int4 int2',
526 prosrc
=> 'int42pl' },
528 proname
=> 'int2mi', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
529 prosrc
=> 'int2mi' },
531 proname
=> 'int4mi', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
532 prosrc
=> 'int4mi' },
534 proname
=> 'int24mi', prorettype
=> 'int4', proargtypes
=> 'int2 int4',
535 prosrc
=> 'int24mi' },
537 proname
=> 'int42mi', prorettype
=> 'int4', proargtypes
=> 'int4 int2',
538 prosrc
=> 'int42mi' },
540 proname
=> 'oideq', proleakproof
=> 't', prorettype
=> 'bool',
541 proargtypes
=> 'oid oid', prosrc
=> 'oideq' },
543 proname
=> 'oidne', proleakproof
=> 't', prorettype
=> 'bool',
544 proargtypes
=> 'oid oid', prosrc
=> 'oidne' },
546 proname
=> 'box_same', prorettype
=> 'bool', proargtypes
=> 'box box',
547 prosrc
=> 'box_same' },
549 proname
=> 'box_contain', prorettype
=> 'bool', proargtypes
=> 'box box',
550 prosrc
=> 'box_contain' },
552 proname
=> 'box_left', prorettype
=> 'bool', proargtypes
=> 'box box',
553 prosrc
=> 'box_left' },
555 proname
=> 'box_overleft', prorettype
=> 'bool', proargtypes
=> 'box box',
556 prosrc
=> 'box_overleft' },
558 proname
=> 'box_overright', prorettype
=> 'bool', proargtypes
=> 'box box',
559 prosrc
=> 'box_overright' },
561 proname
=> 'box_right', prorettype
=> 'bool', proargtypes
=> 'box box',
562 prosrc
=> 'box_right' },
564 proname
=> 'box_contained', prorettype
=> 'bool', proargtypes
=> 'box box',
565 prosrc
=> 'box_contained' },
567 proname
=> 'box_contain_pt', prorettype
=> 'bool', proargtypes
=> 'box point',
568 prosrc
=> 'box_contain_pt' },
570 { oid
=> '195', descr
=> 'I/O',
571 proname
=> 'pg_node_tree_in', prorettype
=> 'pg_node_tree',
572 proargtypes
=> 'cstring', prosrc
=> 'pg_node_tree_in' },
573 { oid
=> '196', descr
=> 'I/O',
574 proname
=> 'pg_node_tree_out', prorettype
=> 'cstring',
575 proargtypes
=> 'pg_node_tree', prosrc
=> 'pg_node_tree_out' },
576 { oid
=> '197', descr
=> 'I/O',
577 proname
=> 'pg_node_tree_recv', provolatile
=> 's',
578 prorettype
=> 'pg_node_tree', proargtypes
=> 'internal',
579 prosrc
=> 'pg_node_tree_recv' },
580 { oid
=> '198', descr
=> 'I/O',
581 proname
=> 'pg_node_tree_send', provolatile
=> 's', prorettype
=> 'bytea',
582 proargtypes
=> 'pg_node_tree', prosrc
=> 'pg_node_tree_send' },
586 { oid
=> '200', descr
=> 'I/O',
587 proname
=> 'float4in', prorettype
=> 'float4', proargtypes
=> 'cstring',
588 prosrc
=> 'float4in' },
589 { oid
=> '201', descr
=> 'I/O',
590 proname
=> 'float4out', prorettype
=> 'cstring', proargtypes
=> 'float4',
591 prosrc
=> 'float4out' },
593 proname
=> 'float4mul', prorettype
=> 'float4',
594 proargtypes
=> 'float4 float4', prosrc
=> 'float4mul' },
596 proname
=> 'float4div', prorettype
=> 'float4',
597 proargtypes
=> 'float4 float4', prosrc
=> 'float4div' },
599 proname
=> 'float4pl', prorettype
=> 'float4', proargtypes
=> 'float4 float4',
600 prosrc
=> 'float4pl' },
602 proname
=> 'float4mi', prorettype
=> 'float4', proargtypes
=> 'float4 float4',
603 prosrc
=> 'float4mi' },
605 proname
=> 'float4um', prorettype
=> 'float4', proargtypes
=> 'float4',
606 prosrc
=> 'float4um' },
608 proname
=> 'float4abs', prorettype
=> 'float4', proargtypes
=> 'float4',
609 prosrc
=> 'float4abs' },
610 { oid
=> '208', descr
=> 'aggregate transition function',
611 proname
=> 'float4_accum', prorettype
=> '_float8',
612 proargtypes
=> '_float8 float4', prosrc
=> 'float4_accum' },
613 { oid
=> '209', descr
=> 'larger of two',
614 proname
=> 'float4larger', prorettype
=> 'float4',
615 proargtypes
=> 'float4 float4', prosrc
=> 'float4larger' },
616 { oid
=> '211', descr
=> 'smaller of two',
617 proname
=> 'float4smaller', prorettype
=> 'float4',
618 proargtypes
=> 'float4 float4', prosrc
=> 'float4smaller' },
621 proname
=> 'int4um', prorettype
=> 'int4', proargtypes
=> 'int4',
622 prosrc
=> 'int4um' },
624 proname
=> 'int2um', prorettype
=> 'int2', proargtypes
=> 'int2',
625 prosrc
=> 'int2um' },
627 { oid
=> '214', descr
=> 'I/O',
628 proname
=> 'float8in', prorettype
=> 'float8', proargtypes
=> 'cstring',
629 prosrc
=> 'float8in' },
630 { oid
=> '215', descr
=> 'I/O',
631 proname
=> 'float8out', prorettype
=> 'cstring', proargtypes
=> 'float8',
632 prosrc
=> 'float8out' },
634 proname
=> 'float8mul', prorettype
=> 'float8',
635 proargtypes
=> 'float8 float8', prosrc
=> 'float8mul' },
637 proname
=> 'float8div', prorettype
=> 'float8',
638 proargtypes
=> 'float8 float8', prosrc
=> 'float8div' },
640 proname
=> 'float8pl', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
641 prosrc
=> 'float8pl' },
643 proname
=> 'float8mi', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
644 prosrc
=> 'float8mi' },
646 proname
=> 'float8um', prorettype
=> 'float8', proargtypes
=> 'float8',
647 prosrc
=> 'float8um' },
649 proname
=> 'float8abs', prorettype
=> 'float8', proargtypes
=> 'float8',
650 prosrc
=> 'float8abs' },
651 { oid
=> '222', descr
=> 'aggregate transition function',
652 proname
=> 'float8_accum', prorettype
=> '_float8',
653 proargtypes
=> '_float8 float8', prosrc
=> 'float8_accum' },
654 { oid
=> '276', descr
=> 'aggregate combine function',
655 proname
=> 'float8_combine', prorettype
=> '_float8',
656 proargtypes
=> '_float8 _float8', prosrc
=> 'float8_combine' },
657 { oid
=> '223', descr
=> 'larger of two',
658 proname
=> 'float8larger', prorettype
=> 'float8',
659 proargtypes
=> 'float8 float8', prosrc
=> 'float8larger' },
660 { oid
=> '224', descr
=> 'smaller of two',
661 proname
=> 'float8smaller', prorettype
=> 'float8',
662 proargtypes
=> 'float8 float8', prosrc
=> 'float8smaller' },
665 proname
=> 'lseg_center', prorettype
=> 'point', proargtypes
=> 'lseg',
666 prosrc
=> 'lseg_center' },
668 proname
=> 'poly_center', prorettype
=> 'point', proargtypes
=> 'polygon',
669 prosrc
=> 'poly_center' },
671 { oid
=> '228', descr
=> 'round to nearest integer',
672 proname
=> 'dround', prorettype
=> 'float8', proargtypes
=> 'float8',
673 prosrc
=> 'dround' },
674 { oid
=> '229', descr
=> 'truncate to integer',
675 proname
=> 'dtrunc', prorettype
=> 'float8', proargtypes
=> 'float8',
676 prosrc
=> 'dtrunc' },
677 { oid
=> '2308', descr
=> 'nearest integer >= value',
678 proname
=> 'ceil', prorettype
=> 'float8', proargtypes
=> 'float8',
680 { oid
=> '2320', descr
=> 'nearest integer >= value',
681 proname
=> 'ceiling', prorettype
=> 'float8', proargtypes
=> 'float8',
683 { oid
=> '2309', descr
=> 'nearest integer <= value',
684 proname
=> 'floor', prorettype
=> 'float8', proargtypes
=> 'float8',
685 prosrc
=> 'dfloor' },
686 { oid
=> '2310', descr
=> 'sign of value',
687 proname
=> 'sign', prorettype
=> 'float8', proargtypes
=> 'float8',
690 proname
=> 'dsqrt', prorettype
=> 'float8', proargtypes
=> 'float8',
693 proname
=> 'dcbrt', prorettype
=> 'float8', proargtypes
=> 'float8',
696 proname
=> 'dpow', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
698 { oid
=> '233', descr
=> 'natural exponential (e^x)',
699 proname
=> 'dexp', prorettype
=> 'float8', proargtypes
=> 'float8',
701 { oid
=> '234', descr
=> 'natural logarithm',
702 proname
=> 'dlog1', prorettype
=> 'float8', proargtypes
=> 'float8',
704 { oid
=> '235', descr
=> 'convert int2 to float8',
705 proname
=> 'float8', proleakproof
=> 't', prorettype
=> 'float8',
706 proargtypes
=> 'int2', prosrc
=> 'i2tod' },
707 { oid
=> '236', descr
=> 'convert int2 to float4',
708 proname
=> 'float4', proleakproof
=> 't', prorettype
=> 'float4',
709 proargtypes
=> 'int2', prosrc
=> 'i2tof' },
710 { oid
=> '237', descr
=> 'convert float8 to int2',
711 proname
=> 'int2', prorettype
=> 'int2', proargtypes
=> 'float8',
713 { oid
=> '238', descr
=> 'convert float4 to int2',
714 proname
=> 'int2', prorettype
=> 'int2', proargtypes
=> 'float4',
717 proname
=> 'line_distance', prorettype
=> 'float8',
718 proargtypes
=> 'line line', prosrc
=> 'line_distance' },
721 proname
=> 'nameeqtext', proleakproof
=> 't', prorettype
=> 'bool',
722 proargtypes
=> 'name text', prosrc
=> 'nameeqtext' },
724 proname
=> 'namelttext', proleakproof
=> 't', prorettype
=> 'bool',
725 proargtypes
=> 'name text', prosrc
=> 'namelttext' },
727 proname
=> 'nameletext', proleakproof
=> 't', prorettype
=> 'bool',
728 proargtypes
=> 'name text', prosrc
=> 'nameletext' },
730 proname
=> 'namegetext', proleakproof
=> 't', prorettype
=> 'bool',
731 proargtypes
=> 'name text', prosrc
=> 'namegetext' },
733 proname
=> 'namegttext', proleakproof
=> 't', prorettype
=> 'bool',
734 proargtypes
=> 'name text', prosrc
=> 'namegttext' },
736 proname
=> 'namenetext', proleakproof
=> 't', prorettype
=> 'bool',
737 proargtypes
=> 'name text', prosrc
=> 'namenetext' },
738 { oid
=> '246', descr
=> 'less-equal-greater',
739 proname
=> 'btnametextcmp', proleakproof
=> 't', prorettype
=> 'int4',
740 proargtypes
=> 'name text', prosrc
=> 'btnametextcmp' },
742 proname
=> 'texteqname', proleakproof
=> 't', prorettype
=> 'bool',
743 proargtypes
=> 'text name', prosrc
=> 'texteqname' },
745 proname
=> 'textltname', proleakproof
=> 't', prorettype
=> 'bool',
746 proargtypes
=> 'text name', prosrc
=> 'textltname' },
748 proname
=> 'textlename', proleakproof
=> 't', prorettype
=> 'bool',
749 proargtypes
=> 'text name', prosrc
=> 'textlename' },
751 proname
=> 'textgename', proleakproof
=> 't', prorettype
=> 'bool',
752 proargtypes
=> 'text name', prosrc
=> 'textgename' },
754 proname
=> 'textgtname', proleakproof
=> 't', prorettype
=> 'bool',
755 proargtypes
=> 'text name', prosrc
=> 'textgtname' },
757 proname
=> 'textnename', proleakproof
=> 't', prorettype
=> 'bool',
758 proargtypes
=> 'text name', prosrc
=> 'textnename' },
759 { oid
=> '253', descr
=> 'less-equal-greater',
760 proname
=> 'bttextnamecmp', proleakproof
=> 't', prorettype
=> 'int4',
761 proargtypes
=> 'text name', prosrc
=> 'bttextnamecmp' },
763 { oid
=> '266', descr
=> 'concatenate name and oid',
764 proname
=> 'nameconcatoid', prorettype
=> 'name', proargtypes
=> 'name oid',
765 prosrc
=> 'nameconcatoid' },
768 descr
=> 'current date and time - increments during transactions',
769 proname
=> 'timeofday', provolatile
=> 'v', prorettype
=> 'text',
770 proargtypes
=> '', prosrc
=> 'timeofday' },
773 proname
=> 'inter_sl', prorettype
=> 'bool', proargtypes
=> 'lseg line',
774 prosrc
=> 'inter_sl' },
776 proname
=> 'inter_lb', prorettype
=> 'bool', proargtypes
=> 'line box',
777 prosrc
=> 'inter_lb' },
780 proname
=> 'float48mul', prorettype
=> 'float8',
781 proargtypes
=> 'float4 float8', prosrc
=> 'float48mul' },
783 proname
=> 'float48div', prorettype
=> 'float8',
784 proargtypes
=> 'float4 float8', prosrc
=> 'float48div' },
786 proname
=> 'float48pl', prorettype
=> 'float8',
787 proargtypes
=> 'float4 float8', prosrc
=> 'float48pl' },
789 proname
=> 'float48mi', prorettype
=> 'float8',
790 proargtypes
=> 'float4 float8', prosrc
=> 'float48mi' },
792 proname
=> 'float84mul', prorettype
=> 'float8',
793 proargtypes
=> 'float8 float4', prosrc
=> 'float84mul' },
795 proname
=> 'float84div', prorettype
=> 'float8',
796 proargtypes
=> 'float8 float4', prosrc
=> 'float84div' },
798 proname
=> 'float84pl', prorettype
=> 'float8',
799 proargtypes
=> 'float8 float4', prosrc
=> 'float84pl' },
801 proname
=> 'float84mi', prorettype
=> 'float8',
802 proargtypes
=> 'float8 float4', prosrc
=> 'float84mi' },
805 proname
=> 'float4eq', proleakproof
=> 't', prorettype
=> 'bool',
806 proargtypes
=> 'float4 float4', prosrc
=> 'float4eq' },
808 proname
=> 'float4ne', proleakproof
=> 't', prorettype
=> 'bool',
809 proargtypes
=> 'float4 float4', prosrc
=> 'float4ne' },
811 proname
=> 'float4lt', proleakproof
=> 't', prorettype
=> 'bool',
812 proargtypes
=> 'float4 float4', prosrc
=> 'float4lt' },
814 proname
=> 'float4le', proleakproof
=> 't', prorettype
=> 'bool',
815 proargtypes
=> 'float4 float4', prosrc
=> 'float4le' },
817 proname
=> 'float4gt', proleakproof
=> 't', prorettype
=> 'bool',
818 proargtypes
=> 'float4 float4', prosrc
=> 'float4gt' },
820 proname
=> 'float4ge', proleakproof
=> 't', prorettype
=> 'bool',
821 proargtypes
=> 'float4 float4', prosrc
=> 'float4ge' },
824 proname
=> 'float8eq', proleakproof
=> 't', prorettype
=> 'bool',
825 proargtypes
=> 'float8 float8', prosrc
=> 'float8eq' },
827 proname
=> 'float8ne', proleakproof
=> 't', prorettype
=> 'bool',
828 proargtypes
=> 'float8 float8', prosrc
=> 'float8ne' },
830 proname
=> 'float8lt', proleakproof
=> 't', prorettype
=> 'bool',
831 proargtypes
=> 'float8 float8', prosrc
=> 'float8lt' },
833 proname
=> 'float8le', proleakproof
=> 't', prorettype
=> 'bool',
834 proargtypes
=> 'float8 float8', prosrc
=> 'float8le' },
836 proname
=> 'float8gt', proleakproof
=> 't', prorettype
=> 'bool',
837 proargtypes
=> 'float8 float8', prosrc
=> 'float8gt' },
839 proname
=> 'float8ge', proleakproof
=> 't', prorettype
=> 'bool',
840 proargtypes
=> 'float8 float8', prosrc
=> 'float8ge' },
843 proname
=> 'float48eq', proleakproof
=> 't', prorettype
=> 'bool',
844 proargtypes
=> 'float4 float8', prosrc
=> 'float48eq' },
849 proname
=> 'float48ne', proleakproof
=> 't', prorettype
=> 'bool',
850 proargtypes
=> 'float4 float8', prosrc
=> 'float48ne' },
852 proname
=> 'float48lt', proleakproof
=> 't', prorettype
=> 'bool',
853 proargtypes
=> 'float4 float8', prosrc
=> 'float48lt' },
855 proname
=> 'float48le', proleakproof
=> 't', prorettype
=> 'bool',
856 proargtypes
=> 'float4 float8', prosrc
=> 'float48le' },
858 proname
=> 'float48gt', proleakproof
=> 't', prorettype
=> 'bool',
859 proargtypes
=> 'float4 float8', prosrc
=> 'float48gt' },
861 proname
=> 'float48ge', proleakproof
=> 't', prorettype
=> 'bool',
862 proargtypes
=> 'float4 float8', prosrc
=> 'float48ge' },
864 proname
=> 'float84eq', proleakproof
=> 't', prorettype
=> 'bool',
865 proargtypes
=> 'float8 float4', prosrc
=> 'float84eq' },
867 proname
=> 'float84ne', proleakproof
=> 't', prorettype
=> 'bool',
868 proargtypes
=> 'float8 float4', prosrc
=> 'float84ne' },
870 proname
=> 'float84lt', proleakproof
=> 't', prorettype
=> 'bool',
871 proargtypes
=> 'float8 float4', prosrc
=> 'float84lt' },
873 proname
=> 'float84le', proleakproof
=> 't', prorettype
=> 'bool',
874 proargtypes
=> 'float8 float4', prosrc
=> 'float84le' },
876 proname
=> 'float84gt', proleakproof
=> 't', prorettype
=> 'bool',
877 proargtypes
=> 'float8 float4', prosrc
=> 'float84gt' },
879 proname
=> 'float84ge', proleakproof
=> 't', prorettype
=> 'bool',
880 proargtypes
=> 'float8 float4', prosrc
=> 'float84ge' },
881 { oid
=> '320', descr
=> 'bucket number of operand in equal-width histogram',
882 proname
=> 'width_bucket', prorettype
=> 'int4',
883 proargtypes
=> 'float8 float8 float8 int4', prosrc
=> 'width_bucket_float8' },
885 { oid
=> '311', descr
=> 'convert float4 to float8',
886 proname
=> 'float8', proleakproof
=> 't', prorettype
=> 'float8',
887 proargtypes
=> 'float4', prosrc
=> 'ftod' },
888 { oid
=> '312', descr
=> 'convert float8 to float4',
889 proname
=> 'float4', prorettype
=> 'float4', proargtypes
=> 'float8',
891 { oid
=> '313', descr
=> 'convert int2 to int4',
892 proname
=> 'int4', proleakproof
=> 't', prorettype
=> 'int4',
893 proargtypes
=> 'int2', prosrc
=> 'i2toi4' },
894 { oid
=> '314', descr
=> 'convert int4 to int2',
895 proname
=> 'int2', prorettype
=> 'int2', proargtypes
=> 'int4',
896 prosrc
=> 'i4toi2' },
897 { oid
=> '316', descr
=> 'convert int4 to float8',
898 proname
=> 'float8', proleakproof
=> 't', prorettype
=> 'float8',
899 proargtypes
=> 'int4', prosrc
=> 'i4tod' },
900 { oid
=> '317', descr
=> 'convert float8 to int4',
901 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'float8',
903 { oid
=> '318', descr
=> 'convert int4 to float4',
904 proname
=> 'float4', proleakproof
=> 't', prorettype
=> 'float4',
905 proargtypes
=> 'int4', prosrc
=> 'i4tof' },
906 { oid
=> '319', descr
=> 'convert float4 to int4',
907 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'float4',
910 # Table access method handlers
911 { oid
=> '3', descr
=> 'row-oriented heap table access method handler',
912 proname
=> 'heap_tableam_handler', provolatile
=> 'v',
913 prorettype
=> 'table_am_handler', proargtypes
=> 'internal',
914 prosrc
=> 'heap_tableam_handler' },
916 # Index access method handlers
917 { oid
=> '330', descr
=> 'btree index access method handler',
918 proname
=> 'bthandler', provolatile
=> 'v', prorettype
=> 'index_am_handler',
919 proargtypes
=> 'internal', prosrc
=> 'bthandler' },
920 { oid
=> '331', descr
=> 'hash index access method handler',
921 proname
=> 'hashhandler', provolatile
=> 'v',
922 prorettype
=> 'index_am_handler', proargtypes
=> 'internal',
923 prosrc
=> 'hashhandler' },
924 { oid
=> '332', descr
=> 'gist index access method handler',
925 proname
=> 'gisthandler', provolatile
=> 'v',
926 prorettype
=> 'index_am_handler', proargtypes
=> 'internal',
927 prosrc
=> 'gisthandler' },
928 { oid
=> '333', descr
=> 'gin index access method handler',
929 proname
=> 'ginhandler', provolatile
=> 'v', prorettype
=> 'index_am_handler',
930 proargtypes
=> 'internal', prosrc
=> 'ginhandler' },
931 { oid
=> '334', descr
=> 'spgist index access method handler',
932 proname
=> 'spghandler', provolatile
=> 'v', prorettype
=> 'index_am_handler',
933 proargtypes
=> 'internal', prosrc
=> 'spghandler' },
934 { oid
=> '335', descr
=> 'brin index access method handler',
935 proname
=> 'brinhandler', provolatile
=> 'v',
936 prorettype
=> 'index_am_handler', proargtypes
=> 'internal',
937 prosrc
=> 'brinhandler' },
938 { oid
=> '3952', descr
=> 'brin: standalone scan new table pages',
939 proname
=> 'brin_summarize_new_values', provolatile
=> 'v',
940 proparallel
=> 'u', prorettype
=> 'int4', proargtypes
=> 'regclass',
941 prosrc
=> 'brin_summarize_new_values' },
942 { oid
=> '3999', descr
=> 'brin: standalone scan new table pages',
943 proname
=> 'brin_summarize_range', provolatile
=> 'v', proparallel
=> 'u',
944 prorettype
=> 'int4', proargtypes
=> 'regclass int8',
945 prosrc
=> 'brin_summarize_range' },
946 { oid
=> '4014', descr
=> 'brin: desummarize page range',
947 proname
=> 'brin_desummarize_range', provolatile
=> 'v', proparallel
=> 'u',
948 prorettype
=> 'void', proargtypes
=> 'regclass int8',
949 prosrc
=> 'brin_desummarize_range' },
951 { oid
=> '338', descr
=> 'validate an operator class',
952 proname
=> 'amvalidate', provolatile
=> 'v', prorettype
=> 'bool',
953 proargtypes
=> 'oid', prosrc
=> 'amvalidate' },
955 { oid
=> '636', descr
=> 'test property of an index access method',
956 proname
=> 'pg_indexam_has_property', provolatile
=> 's',
957 prorettype
=> 'bool', proargtypes
=> 'oid text',
958 prosrc
=> 'pg_indexam_has_property' },
959 { oid
=> '637', descr
=> 'test property of an index',
960 proname
=> 'pg_index_has_property', provolatile
=> 's', prorettype
=> 'bool',
961 proargtypes
=> 'regclass text', prosrc
=> 'pg_index_has_property' },
962 { oid
=> '638', descr
=> 'test property of an index column',
963 proname
=> 'pg_index_column_has_property', provolatile
=> 's',
964 prorettype
=> 'bool', proargtypes
=> 'regclass int4 text',
965 prosrc
=> 'pg_index_column_has_property' },
966 { oid
=> '676', descr
=> 'return name of given index build phase',
967 proname
=> 'pg_indexam_progress_phasename', prorettype
=> 'text',
968 proargtypes
=> 'oid int8', prosrc
=> 'pg_indexam_progress_phasename' },
971 proname
=> 'poly_same', prorettype
=> 'bool',
972 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_same' },
974 proname
=> 'poly_contain', prorettype
=> 'bool',
975 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_contain' },
977 proname
=> 'poly_left', prorettype
=> 'bool',
978 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_left' },
980 proname
=> 'poly_overleft', prorettype
=> 'bool',
981 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_overleft' },
983 proname
=> 'poly_overright', prorettype
=> 'bool',
984 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_overright' },
986 proname
=> 'poly_right', prorettype
=> 'bool',
987 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_right' },
989 proname
=> 'poly_contained', prorettype
=> 'bool',
990 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_contained' },
992 proname
=> 'poly_overlap', prorettype
=> 'bool',
993 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_overlap' },
994 { oid
=> '347', descr
=> 'I/O',
995 proname
=> 'poly_in', prorettype
=> 'polygon', proargtypes
=> 'cstring',
996 prosrc
=> 'poly_in' },
997 { oid
=> '348', descr
=> 'I/O',
998 proname
=> 'poly_out', prorettype
=> 'cstring', proargtypes
=> 'polygon',
999 prosrc
=> 'poly_out' },
1001 { oid
=> '350', descr
=> 'less-equal-greater',
1002 proname
=> 'btint2cmp', proleakproof
=> 't', prorettype
=> 'int4',
1003 proargtypes
=> 'int2 int2', prosrc
=> 'btint2cmp' },
1004 { oid
=> '3129', descr
=> 'sort support',
1005 proname
=> 'btint2sortsupport', prorettype
=> 'void',
1006 proargtypes
=> 'internal', prosrc
=> 'btint2sortsupport' },
1007 { oid
=> '351', descr
=> 'less-equal-greater',
1008 proname
=> 'btint4cmp', proleakproof
=> 't', prorettype
=> 'int4',
1009 proargtypes
=> 'int4 int4', prosrc
=> 'btint4cmp' },
1010 { oid
=> '3130', descr
=> 'sort support',
1011 proname
=> 'btint4sortsupport', prorettype
=> 'void',
1012 proargtypes
=> 'internal', prosrc
=> 'btint4sortsupport' },
1013 { oid
=> '842', descr
=> 'less-equal-greater',
1014 proname
=> 'btint8cmp', proleakproof
=> 't', prorettype
=> 'int4',
1015 proargtypes
=> 'int8 int8', prosrc
=> 'btint8cmp' },
1016 { oid
=> '3131', descr
=> 'sort support',
1017 proname
=> 'btint8sortsupport', prorettype
=> 'void',
1018 proargtypes
=> 'internal', prosrc
=> 'btint8sortsupport' },
1019 { oid
=> '354', descr
=> 'less-equal-greater',
1020 proname
=> 'btfloat4cmp', proleakproof
=> 't', prorettype
=> 'int4',
1021 proargtypes
=> 'float4 float4', prosrc
=> 'btfloat4cmp' },
1022 { oid
=> '3132', descr
=> 'sort support',
1023 proname
=> 'btfloat4sortsupport', prorettype
=> 'void',
1024 proargtypes
=> 'internal', prosrc
=> 'btfloat4sortsupport' },
1025 { oid
=> '355', descr
=> 'less-equal-greater',
1026 proname
=> 'btfloat8cmp', proleakproof
=> 't', prorettype
=> 'int4',
1027 proargtypes
=> 'float8 float8', prosrc
=> 'btfloat8cmp' },
1028 { oid
=> '3133', descr
=> 'sort support',
1029 proname
=> 'btfloat8sortsupport', prorettype
=> 'void',
1030 proargtypes
=> 'internal', prosrc
=> 'btfloat8sortsupport' },
1031 { oid
=> '356', descr
=> 'less-equal-greater',
1032 proname
=> 'btoidcmp', proleakproof
=> 't', prorettype
=> 'int4',
1033 proargtypes
=> 'oid oid', prosrc
=> 'btoidcmp' },
1034 { oid
=> '3134', descr
=> 'sort support',
1035 proname
=> 'btoidsortsupport', prorettype
=> 'void',
1036 proargtypes
=> 'internal', prosrc
=> 'btoidsortsupport' },
1037 { oid
=> '404', descr
=> 'less-equal-greater',
1038 proname
=> 'btoidvectorcmp', proleakproof
=> 't', prorettype
=> 'int4',
1039 proargtypes
=> 'oidvector oidvector', prosrc
=> 'btoidvectorcmp' },
1040 { oid
=> '358', descr
=> 'less-equal-greater',
1041 proname
=> 'btcharcmp', proleakproof
=> 't', prorettype
=> 'int4',
1042 proargtypes
=> 'char char', prosrc
=> 'btcharcmp' },
1043 { oid
=> '359', descr
=> 'less-equal-greater',
1044 proname
=> 'btnamecmp', proleakproof
=> 't', prorettype
=> 'int4',
1045 proargtypes
=> 'name name', prosrc
=> 'btnamecmp' },
1046 { oid
=> '3135', descr
=> 'sort support',
1047 proname
=> 'btnamesortsupport', prorettype
=> 'void',
1048 proargtypes
=> 'internal', prosrc
=> 'btnamesortsupport' },
1049 { oid
=> '360', descr
=> 'less-equal-greater',
1050 proname
=> 'bttextcmp', proleakproof
=> 't', prorettype
=> 'int4',
1051 proargtypes
=> 'text text', prosrc
=> 'bttextcmp' },
1052 { oid
=> '3255', descr
=> 'sort support',
1053 proname
=> 'bttextsortsupport', prorettype
=> 'void',
1054 proargtypes
=> 'internal', prosrc
=> 'bttextsortsupport' },
1055 { oid
=> '5050', descr
=> 'equal image',
1056 proname
=> 'btvarstrequalimage', prorettype
=> 'bool', proargtypes
=> 'oid',
1057 prosrc
=> 'btvarstrequalimage' },
1058 { oid
=> '377', descr
=> 'less-equal-greater',
1059 proname
=> 'cash_cmp', proleakproof
=> 't', prorettype
=> 'int4',
1060 proargtypes
=> 'money money', prosrc
=> 'cash_cmp' },
1061 { oid
=> '382', descr
=> 'less-equal-greater',
1062 proname
=> 'btarraycmp', prorettype
=> 'int4',
1063 proargtypes
=> 'anyarray anyarray', prosrc
=> 'btarraycmp' },
1064 { oid
=> '4126', descr
=> 'window RANGE support',
1065 proname
=> 'in_range', prorettype
=> 'bool',
1066 proargtypes
=> 'int8 int8 int8 bool bool', prosrc
=> 'in_range_int8_int8' },
1067 { oid
=> '4127', descr
=> 'window RANGE support',
1068 proname
=> 'in_range', prorettype
=> 'bool',
1069 proargtypes
=> 'int4 int4 int8 bool bool', prosrc
=> 'in_range_int4_int8' },
1070 { oid
=> '4128', descr
=> 'window RANGE support',
1071 proname
=> 'in_range', prorettype
=> 'bool',
1072 proargtypes
=> 'int4 int4 int4 bool bool', prosrc
=> 'in_range_int4_int4' },
1073 { oid
=> '4129', descr
=> 'window RANGE support',
1074 proname
=> 'in_range', prorettype
=> 'bool',
1075 proargtypes
=> 'int4 int4 int2 bool bool', prosrc
=> 'in_range_int4_int2' },
1076 { oid
=> '4130', descr
=> 'window RANGE support',
1077 proname
=> 'in_range', prorettype
=> 'bool',
1078 proargtypes
=> 'int2 int2 int8 bool bool', prosrc
=> 'in_range_int2_int8' },
1079 { oid
=> '4131', descr
=> 'window RANGE support',
1080 proname
=> 'in_range', prorettype
=> 'bool',
1081 proargtypes
=> 'int2 int2 int4 bool bool', prosrc
=> 'in_range_int2_int4' },
1082 { oid
=> '4132', descr
=> 'window RANGE support',
1083 proname
=> 'in_range', prorettype
=> 'bool',
1084 proargtypes
=> 'int2 int2 int2 bool bool', prosrc
=> 'in_range_int2_int2' },
1085 { oid
=> '4139', descr
=> 'window RANGE support',
1086 proname
=> 'in_range', prorettype
=> 'bool',
1087 proargtypes
=> 'float8 float8 float8 bool bool',
1088 prosrc
=> 'in_range_float8_float8' },
1089 { oid
=> '4140', descr
=> 'window RANGE support',
1090 proname
=> 'in_range', prorettype
=> 'bool',
1091 proargtypes
=> 'float4 float4 float8 bool bool',
1092 prosrc
=> 'in_range_float4_float8' },
1093 { oid
=> '4141', descr
=> 'window RANGE support',
1094 proname
=> 'in_range', prorettype
=> 'bool',
1095 proargtypes
=> 'numeric numeric numeric bool bool',
1096 prosrc
=> 'in_range_numeric_numeric' },
1099 proname
=> 'lseg_distance', prorettype
=> 'float8',
1100 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_distance' },
1102 proname
=> 'lseg_interpt', prorettype
=> 'point', proargtypes
=> 'lseg lseg',
1103 prosrc
=> 'lseg_interpt' },
1105 proname
=> 'dist_ps', prorettype
=> 'float8', proargtypes
=> 'point lseg',
1106 prosrc
=> 'dist_ps' },
1108 proname
=> 'dist_sp', prorettype
=> 'float8', proargtypes
=> 'lseg point',
1109 prosrc
=> 'dist_sp' },
1111 proname
=> 'dist_pb', prorettype
=> 'float8', proargtypes
=> 'point box',
1112 prosrc
=> 'dist_pb' },
1114 proname
=> 'dist_bp', prorettype
=> 'float8', proargtypes
=> 'box point',
1115 prosrc
=> 'dist_bp' },
1117 proname
=> 'dist_sb', prorettype
=> 'float8', proargtypes
=> 'lseg box',
1118 prosrc
=> 'dist_sb' },
1120 proname
=> 'dist_bs', prorettype
=> 'float8', proargtypes
=> 'box lseg',
1121 prosrc
=> 'dist_bs' },
1123 proname
=> 'close_ps', prorettype
=> 'point', proargtypes
=> 'point lseg',
1124 prosrc
=> 'close_ps' },
1126 proname
=> 'close_pb', prorettype
=> 'point', proargtypes
=> 'point box',
1127 prosrc
=> 'close_pb' },
1129 proname
=> 'close_sb', prorettype
=> 'point', proargtypes
=> 'lseg box',
1130 prosrc
=> 'close_sb' },
1132 proname
=> 'on_ps', prorettype
=> 'bool', proargtypes
=> 'point lseg',
1133 prosrc
=> 'on_ps' },
1135 proname
=> 'path_distance', prorettype
=> 'float8',
1136 proargtypes
=> 'path path', prosrc
=> 'path_distance' },
1138 proname
=> 'dist_ppath', prorettype
=> 'float8', proargtypes
=> 'point path',
1139 prosrc
=> 'dist_ppath' },
1141 proname
=> 'dist_pathp', prorettype
=> 'float8', proargtypes
=> 'path point',
1142 prosrc
=> 'dist_pathp' },
1144 proname
=> 'on_sb', prorettype
=> 'bool', proargtypes
=> 'lseg box',
1145 prosrc
=> 'on_sb' },
1147 proname
=> 'inter_sb', prorettype
=> 'bool', proargtypes
=> 'lseg box',
1148 prosrc
=> 'inter_sb' },
1152 { oid
=> '401', descr
=> 'convert char(n) to text',
1153 proname
=> 'text', prorettype
=> 'text', proargtypes
=> 'bpchar',
1154 prosrc
=> 'rtrim1' },
1155 { oid
=> '406', descr
=> 'convert name to text',
1156 proname
=> 'text', proleakproof
=> 't', prorettype
=> 'text',
1157 proargtypes
=> 'name', prosrc
=> 'name_text' },
1158 { oid
=> '407', descr
=> 'convert text to name',
1159 proname
=> 'name', proleakproof
=> 't', prorettype
=> 'name',
1160 proargtypes
=> 'text', prosrc
=> 'text_name' },
1161 { oid
=> '408', descr
=> 'convert name to char(n)',
1162 proname
=> 'bpchar', prorettype
=> 'bpchar', proargtypes
=> 'name',
1163 prosrc
=> 'name_bpchar' },
1164 { oid
=> '409', descr
=> 'convert char(n) to name',
1165 proname
=> 'name', proleakproof
=> 't', prorettype
=> 'name',
1166 proargtypes
=> 'bpchar', prosrc
=> 'bpchar_name' },
1168 { oid
=> '449', descr
=> 'hash',
1169 proname
=> 'hashint2', prorettype
=> 'int4', proargtypes
=> 'int2',
1170 prosrc
=> 'hashint2' },
1171 { oid
=> '441', descr
=> 'hash',
1172 proname
=> 'hashint2extended', prorettype
=> 'int8',
1173 proargtypes
=> 'int2 int8', prosrc
=> 'hashint2extended' },
1174 { oid
=> '450', descr
=> 'hash',
1175 proname
=> 'hashint4', prorettype
=> 'int4', proargtypes
=> 'int4',
1176 prosrc
=> 'hashint4' },
1177 { oid
=> '425', descr
=> 'hash',
1178 proname
=> 'hashint4extended', prorettype
=> 'int8',
1179 proargtypes
=> 'int4 int8', prosrc
=> 'hashint4extended' },
1180 { oid
=> '949', descr
=> 'hash',
1181 proname
=> 'hashint8', prorettype
=> 'int4', proargtypes
=> 'int8',
1182 prosrc
=> 'hashint8' },
1183 { oid
=> '442', descr
=> 'hash',
1184 proname
=> 'hashint8extended', prorettype
=> 'int8',
1185 proargtypes
=> 'int8 int8', prosrc
=> 'hashint8extended' },
1186 { oid
=> '451', descr
=> 'hash',
1187 proname
=> 'hashfloat4', prorettype
=> 'int4', proargtypes
=> 'float4',
1188 prosrc
=> 'hashfloat4' },
1189 { oid
=> '443', descr
=> 'hash',
1190 proname
=> 'hashfloat4extended', prorettype
=> 'int8',
1191 proargtypes
=> 'float4 int8', prosrc
=> 'hashfloat4extended' },
1192 { oid
=> '452', descr
=> 'hash',
1193 proname
=> 'hashfloat8', prorettype
=> 'int4', proargtypes
=> 'float8',
1194 prosrc
=> 'hashfloat8' },
1195 { oid
=> '444', descr
=> 'hash',
1196 proname
=> 'hashfloat8extended', prorettype
=> 'int8',
1197 proargtypes
=> 'float8 int8', prosrc
=> 'hashfloat8extended' },
1198 { oid
=> '453', descr
=> 'hash',
1199 proname
=> 'hashoid', prorettype
=> 'int4', proargtypes
=> 'oid',
1200 prosrc
=> 'hashoid' },
1201 { oid
=> '445', descr
=> 'hash',
1202 proname
=> 'hashoidextended', prorettype
=> 'int8', proargtypes
=> 'oid int8',
1203 prosrc
=> 'hashoidextended' },
1204 { oid
=> '454', descr
=> 'hash',
1205 proname
=> 'hashchar', prorettype
=> 'int4', proargtypes
=> 'char',
1206 prosrc
=> 'hashchar' },
1207 { oid
=> '446', descr
=> 'hash',
1208 proname
=> 'hashcharextended', prorettype
=> 'int8',
1209 proargtypes
=> 'char int8', prosrc
=> 'hashcharextended' },
1210 { oid
=> '455', descr
=> 'hash',
1211 proname
=> 'hashname', prorettype
=> 'int4', proargtypes
=> 'name',
1212 prosrc
=> 'hashname' },
1213 { oid
=> '447', descr
=> 'hash',
1214 proname
=> 'hashnameextended', prorettype
=> 'int8',
1215 proargtypes
=> 'name int8', prosrc
=> 'hashnameextended' },
1216 { oid
=> '400', descr
=> 'hash',
1217 proname
=> 'hashtext', prorettype
=> 'int4', proargtypes
=> 'text',
1218 prosrc
=> 'hashtext' },
1219 { oid
=> '448', descr
=> 'hash',
1220 proname
=> 'hashtextextended', prorettype
=> 'int8',
1221 proargtypes
=> 'text int8', prosrc
=> 'hashtextextended' },
1222 { oid
=> '456', descr
=> 'hash',
1223 proname
=> 'hashvarlena', prorettype
=> 'int4', proargtypes
=> 'internal',
1224 prosrc
=> 'hashvarlena' },
1225 { oid
=> '772', descr
=> 'hash',
1226 proname
=> 'hashvarlenaextended', prorettype
=> 'int8',
1227 proargtypes
=> 'internal int8', prosrc
=> 'hashvarlenaextended' },
1228 { oid
=> '9708', descr
=> 'hash',
1229 proname
=> 'hashbytea', prorettype
=> 'int4', proargtypes
=> 'bytea',
1230 prosrc
=> 'hashbytea' },
1231 { oid
=> '9709', descr
=> 'hash',
1232 proname
=> 'hashbyteaextended', prorettype
=> 'int8',
1233 proargtypes
=> 'bytea int8', prosrc
=> 'hashbyteaextended' },
1234 { oid
=> '457', descr
=> 'hash',
1235 proname
=> 'hashoidvector', prorettype
=> 'int4', proargtypes
=> 'oidvector',
1236 prosrc
=> 'hashoidvector' },
1237 { oid
=> '776', descr
=> 'hash',
1238 proname
=> 'hashoidvectorextended', prorettype
=> 'int8',
1239 proargtypes
=> 'oidvector int8', prosrc
=> 'hashoidvectorextended' },
1240 { oid
=> '329', descr
=> 'hash',
1241 proname
=> 'hash_aclitem', prorettype
=> 'int4', proargtypes
=> 'aclitem',
1242 prosrc
=> 'hash_aclitem' },
1243 { oid
=> '777', descr
=> 'hash',
1244 proname
=> 'hash_aclitem_extended', prorettype
=> 'int8',
1245 proargtypes
=> 'aclitem int8', prosrc
=> 'hash_aclitem_extended' },
1246 { oid
=> '399', descr
=> 'hash',
1247 proname
=> 'hashmacaddr', prorettype
=> 'int4', proargtypes
=> 'macaddr',
1248 prosrc
=> 'hashmacaddr' },
1249 { oid
=> '778', descr
=> 'hash',
1250 proname
=> 'hashmacaddrextended', prorettype
=> 'int8',
1251 proargtypes
=> 'macaddr int8', prosrc
=> 'hashmacaddrextended' },
1252 { oid
=> '422', descr
=> 'hash',
1253 proname
=> 'hashinet', prorettype
=> 'int4', proargtypes
=> 'inet',
1254 prosrc
=> 'hashinet' },
1255 { oid
=> '779', descr
=> 'hash',
1256 proname
=> 'hashinetextended', prorettype
=> 'int8',
1257 proargtypes
=> 'inet int8', prosrc
=> 'hashinetextended' },
1258 { oid
=> '432', descr
=> 'hash',
1259 proname
=> 'hash_numeric', prorettype
=> 'int4', proargtypes
=> 'numeric',
1260 prosrc
=> 'hash_numeric' },
1261 { oid
=> '780', descr
=> 'hash',
1262 proname
=> 'hash_numeric_extended', prorettype
=> 'int8',
1263 proargtypes
=> 'numeric int8', prosrc
=> 'hash_numeric_extended' },
1264 { oid
=> '328', descr
=> 'hash',
1265 proname
=> 'hashmacaddr8', prorettype
=> 'int4', proargtypes
=> 'macaddr8',
1266 prosrc
=> 'hashmacaddr8' },
1267 { oid
=> '781', descr
=> 'hash',
1268 proname
=> 'hashmacaddr8extended', prorettype
=> 'int8',
1269 proargtypes
=> 'macaddr8 int8', prosrc
=> 'hashmacaddr8extended' },
1270 { oid
=> '9710', descr
=> 'hash',
1271 proname
=> 'hashdate', prorettype
=> 'int4', proargtypes
=> 'date',
1272 prosrc
=> 'hashdate' },
1273 { oid
=> '9711', descr
=> 'hash',
1274 proname
=> 'hashdateextended', prorettype
=> 'int8',
1275 proargtypes
=> 'date int8', prosrc
=> 'hashdateextended' },
1276 { oid
=> '9712', descr
=> 'hash',
1277 proname
=> 'hashbool', prorettype
=> 'int4', proargtypes
=> 'bool',
1278 prosrc
=> 'hashbool' },
1279 { oid
=> '9713', descr
=> 'hash',
1280 proname
=> 'hashboolextended', prorettype
=> 'int8',
1281 proargtypes
=> 'bool int8', prosrc
=> 'hashboolextended' },
1282 { oid
=> '9714', descr
=> 'hash',
1283 proname
=> 'hashxid', prorettype
=> 'int4', proargtypes
=> 'xid',
1284 prosrc
=> 'hashxid' },
1285 { oid
=> '9715', descr
=> 'hash',
1286 proname
=> 'hashxidextended', prorettype
=> 'int8', proargtypes
=> 'xid int8',
1287 prosrc
=> 'hashxidextended' },
1288 { oid
=> '9716', descr
=> 'hash',
1289 proname
=> 'hashxid8', prorettype
=> 'int4', proargtypes
=> 'xid8',
1290 prosrc
=> 'hashxid8' },
1291 { oid
=> '9717', descr
=> 'hash',
1292 proname
=> 'hashxid8extended', prorettype
=> 'int8',
1293 proargtypes
=> 'xid8 int8', prosrc
=> 'hashxid8extended' },
1294 { oid
=> '9718', descr
=> 'hash',
1295 proname
=> 'hashcid', prorettype
=> 'int4', proargtypes
=> 'cid',
1296 prosrc
=> 'hashcid' },
1297 { oid
=> '9719', descr
=> 'hash',
1298 proname
=> 'hashcidextended', prorettype
=> 'int8', proargtypes
=> 'cid int8',
1299 prosrc
=> 'hashcidextended' },
1301 { oid
=> '438', descr
=> 'count the number of NULL arguments',
1302 proname
=> 'num_nulls', provariadic
=> 'any', proisstrict
=> 'f',
1303 prorettype
=> 'int4', proargtypes
=> 'any', proallargtypes
=> '{any}',
1304 proargmodes
=> '{v}', prosrc
=> 'pg_num_nulls' },
1305 { oid
=> '440', descr
=> 'count the number of non-NULL arguments',
1306 proname
=> 'num_nonnulls', provariadic
=> 'any', proisstrict
=> 'f',
1307 prorettype
=> 'int4', proargtypes
=> 'any', proallargtypes
=> '{any}',
1308 proargmodes
=> '{v}', prosrc
=> 'pg_num_nonnulls' },
1310 { oid
=> '458', descr
=> 'larger of two',
1311 proname
=> 'text_larger', proleakproof
=> 't', prorettype
=> 'text',
1312 proargtypes
=> 'text text', prosrc
=> 'text_larger' },
1313 { oid
=> '459', descr
=> 'smaller of two',
1314 proname
=> 'text_smaller', proleakproof
=> 't', prorettype
=> 'text',
1315 proargtypes
=> 'text text', prosrc
=> 'text_smaller' },
1317 { oid
=> '8920', descr
=> 'larger of two',
1318 proname
=> 'bytea_larger', proleakproof
=> 't', prorettype
=> 'bytea',
1319 proargtypes
=> 'bytea bytea', prosrc
=> 'bytea_larger' },
1320 { oid
=> '8921', descr
=> 'smaller of two',
1321 proname
=> 'bytea_smaller', proleakproof
=> 't', prorettype
=> 'bytea',
1322 proargtypes
=> 'bytea bytea', prosrc
=> 'bytea_smaller' },
1324 { oid
=> '460', descr
=> 'I/O',
1325 proname
=> 'int8in', prorettype
=> 'int8', proargtypes
=> 'cstring',
1326 prosrc
=> 'int8in' },
1327 { oid
=> '461', descr
=> 'I/O',
1328 proname
=> 'int8out', prorettype
=> 'cstring', proargtypes
=> 'int8',
1329 prosrc
=> 'int8out' },
1331 proname
=> 'int8um', prorettype
=> 'int8', proargtypes
=> 'int8',
1332 prosrc
=> 'int8um' },
1334 proname
=> 'int8pl', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1335 prosrc
=> 'int8pl' },
1337 proname
=> 'int8mi', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1338 prosrc
=> 'int8mi' },
1340 proname
=> 'int8mul', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1341 prosrc
=> 'int8mul' },
1343 proname
=> 'int8div', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1344 prosrc
=> 'int8div' },
1346 proname
=> 'int8eq', proleakproof
=> 't', prorettype
=> 'bool',
1347 proargtypes
=> 'int8 int8', prosrc
=> 'int8eq' },
1349 proname
=> 'int8ne', proleakproof
=> 't', prorettype
=> 'bool',
1350 proargtypes
=> 'int8 int8', prosrc
=> 'int8ne' },
1352 proname
=> 'int8lt', proleakproof
=> 't', prorettype
=> 'bool',
1353 proargtypes
=> 'int8 int8', prosrc
=> 'int8lt' },
1355 proname
=> 'int8gt', proleakproof
=> 't', prorettype
=> 'bool',
1356 proargtypes
=> 'int8 int8', prosrc
=> 'int8gt' },
1358 proname
=> 'int8le', proleakproof
=> 't', prorettype
=> 'bool',
1359 proargtypes
=> 'int8 int8', prosrc
=> 'int8le' },
1361 proname
=> 'int8ge', proleakproof
=> 't', prorettype
=> 'bool',
1362 proargtypes
=> 'int8 int8', prosrc
=> 'int8ge' },
1365 proname
=> 'int84eq', proleakproof
=> 't', prorettype
=> 'bool',
1366 proargtypes
=> 'int8 int4', prosrc
=> 'int84eq' },
1368 proname
=> 'int84ne', proleakproof
=> 't', prorettype
=> 'bool',
1369 proargtypes
=> 'int8 int4', prosrc
=> 'int84ne' },
1371 proname
=> 'int84lt', proleakproof
=> 't', prorettype
=> 'bool',
1372 proargtypes
=> 'int8 int4', prosrc
=> 'int84lt' },
1374 proname
=> 'int84gt', proleakproof
=> 't', prorettype
=> 'bool',
1375 proargtypes
=> 'int8 int4', prosrc
=> 'int84gt' },
1377 proname
=> 'int84le', proleakproof
=> 't', prorettype
=> 'bool',
1378 proargtypes
=> 'int8 int4', prosrc
=> 'int84le' },
1380 proname
=> 'int84ge', proleakproof
=> 't', prorettype
=> 'bool',
1381 proargtypes
=> 'int8 int4', prosrc
=> 'int84ge' },
1383 { oid
=> '480', descr
=> 'convert int8 to int4',
1384 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'int8',
1385 prosrc
=> 'int84' },
1386 { oid
=> '481', descr
=> 'convert int4 to int8',
1387 proname
=> 'int8', proleakproof
=> 't', prorettype
=> 'int8',
1388 proargtypes
=> 'int4', prosrc
=> 'int48' },
1389 { oid
=> '482', descr
=> 'convert int8 to float8',
1390 proname
=> 'float8', proleakproof
=> 't', prorettype
=> 'float8',
1391 proargtypes
=> 'int8', prosrc
=> 'i8tod' },
1392 { oid
=> '483', descr
=> 'convert float8 to int8',
1393 proname
=> 'int8', prorettype
=> 'int8', proargtypes
=> 'float8',
1394 prosrc
=> 'dtoi8' },
1400 { oid
=> '626', descr
=> 'hash',
1401 proname
=> 'hash_array', prorettype
=> 'int4', proargtypes
=> 'anyarray',
1402 prosrc
=> 'hash_array' },
1403 { oid
=> '782', descr
=> 'hash',
1404 proname
=> 'hash_array_extended', prorettype
=> 'int8',
1405 proargtypes
=> 'anyarray int8', prosrc
=> 'hash_array_extended' },
1407 { oid
=> '652', descr
=> 'convert int8 to float4',
1408 proname
=> 'float4', proleakproof
=> 't', prorettype
=> 'float4',
1409 proargtypes
=> 'int8', prosrc
=> 'i8tof' },
1410 { oid
=> '653', descr
=> 'convert float4 to int8',
1411 proname
=> 'int8', prorettype
=> 'int8', proargtypes
=> 'float4',
1412 prosrc
=> 'ftoi8' },
1414 { oid
=> '714', descr
=> 'convert int8 to int2',
1415 proname
=> 'int2', prorettype
=> 'int2', proargtypes
=> 'int8',
1416 prosrc
=> 'int82' },
1417 { oid
=> '754', descr
=> 'convert int2 to int8',
1418 proname
=> 'int8', proleakproof
=> 't', prorettype
=> 'int8',
1419 proargtypes
=> 'int2', prosrc
=> 'int28' },
1422 proname
=> 'namelt', proleakproof
=> 't', prorettype
=> 'bool',
1423 proargtypes
=> 'name name', prosrc
=> 'namelt' },
1425 proname
=> 'namele', proleakproof
=> 't', prorettype
=> 'bool',
1426 proargtypes
=> 'name name', prosrc
=> 'namele' },
1428 proname
=> 'namegt', proleakproof
=> 't', prorettype
=> 'bool',
1429 proargtypes
=> 'name name', prosrc
=> 'namegt' },
1431 proname
=> 'namege', proleakproof
=> 't', prorettype
=> 'bool',
1432 proargtypes
=> 'name name', prosrc
=> 'namege' },
1434 proname
=> 'namene', proleakproof
=> 't', prorettype
=> 'bool',
1435 proargtypes
=> 'name name', prosrc
=> 'namene' },
1437 { oid
=> '668', descr
=> 'adjust char() to typmod length',
1438 proname
=> 'bpchar', prorettype
=> 'bpchar',
1439 proargtypes
=> 'bpchar int4 bool', prosrc
=> 'bpchar' },
1440 { oid
=> '3097', descr
=> 'planner support for varchar length coercion',
1441 proname
=> 'varchar_support', prorettype
=> 'internal',
1442 proargtypes
=> 'internal', prosrc
=> 'varchar_support' },
1443 { oid
=> '669', descr
=> 'adjust varchar() to typmod length',
1444 proname
=> 'varchar', prosupport
=> 'varchar_support',
1445 prorettype
=> 'varchar', proargtypes
=> 'varchar int4 bool',
1446 prosrc
=> 'varchar' },
1449 proname
=> 'oidvectorne', proleakproof
=> 't', prorettype
=> 'bool',
1450 proargtypes
=> 'oidvector oidvector', prosrc
=> 'oidvectorne' },
1452 proname
=> 'oidvectorlt', proleakproof
=> 't', prorettype
=> 'bool',
1453 proargtypes
=> 'oidvector oidvector', prosrc
=> 'oidvectorlt' },
1455 proname
=> 'oidvectorle', proleakproof
=> 't', prorettype
=> 'bool',
1456 proargtypes
=> 'oidvector oidvector', prosrc
=> 'oidvectorle' },
1458 proname
=> 'oidvectoreq', proleakproof
=> 't', prorettype
=> 'bool',
1459 proargtypes
=> 'oidvector oidvector', prosrc
=> 'oidvectoreq' },
1461 proname
=> 'oidvectorge', proleakproof
=> 't', prorettype
=> 'bool',
1462 proargtypes
=> 'oidvector oidvector', prosrc
=> 'oidvectorge' },
1464 proname
=> 'oidvectorgt', proleakproof
=> 't', prorettype
=> 'bool',
1465 proargtypes
=> 'oidvector oidvector', prosrc
=> 'oidvectorgt' },
1468 { oid
=> '710', descr
=> 'deprecated, use current_user instead',
1469 proname
=> 'getpgusername', provolatile
=> 's', prorettype
=> 'name',
1470 proargtypes
=> '', prosrc
=> 'current_user' },
1472 proname
=> 'oidlt', proleakproof
=> 't', prorettype
=> 'bool',
1473 proargtypes
=> 'oid oid', prosrc
=> 'oidlt' },
1475 proname
=> 'oidle', proleakproof
=> 't', prorettype
=> 'bool',
1476 proargtypes
=> 'oid oid', prosrc
=> 'oidle' },
1478 { oid
=> '720', descr
=> 'octet length',
1479 proname
=> 'octet_length', prorettype
=> 'int4', proargtypes
=> 'bytea',
1480 prosrc
=> 'byteaoctetlen' },
1481 { oid
=> '721', descr
=> 'get byte',
1482 proname
=> 'get_byte', prorettype
=> 'int4', proargtypes
=> 'bytea int4',
1483 prosrc
=> 'byteaGetByte' },
1484 { oid
=> '722', descr
=> 'set byte',
1485 proname
=> 'set_byte', prorettype
=> 'bytea',
1486 proargtypes
=> 'bytea int4 int4', prosrc
=> 'byteaSetByte' },
1487 { oid
=> '723', descr
=> 'get bit',
1488 proname
=> 'get_bit', prorettype
=> 'int4', proargtypes
=> 'bytea int8',
1489 prosrc
=> 'byteaGetBit' },
1490 { oid
=> '724', descr
=> 'set bit',
1491 proname
=> 'set_bit', prorettype
=> 'bytea', proargtypes
=> 'bytea int8 int4',
1492 prosrc
=> 'byteaSetBit' },
1493 { oid
=> '749', descr
=> 'substitute portion of string',
1494 proname
=> 'overlay', prorettype
=> 'bytea',
1495 proargtypes
=> 'bytea bytea int4 int4', prosrc
=> 'byteaoverlay' },
1496 { oid
=> '752', descr
=> 'substitute portion of string',
1497 proname
=> 'overlay', prorettype
=> 'bytea',
1498 proargtypes
=> 'bytea bytea int4', prosrc
=> 'byteaoverlay_no_len' },
1499 { oid
=> '6163', descr
=> 'number of set bits',
1500 proname
=> 'bit_count', prorettype
=> 'int8', proargtypes
=> 'bytea',
1501 prosrc
=> 'bytea_bit_count' },
1504 proname
=> 'dist_pl', prorettype
=> 'float8', proargtypes
=> 'point line',
1505 prosrc
=> 'dist_pl' },
1507 proname
=> 'dist_lp', prorettype
=> 'float8', proargtypes
=> 'line point',
1508 prosrc
=> 'dist_lp' },
1510 proname
=> 'dist_sl', prorettype
=> 'float8', proargtypes
=> 'lseg line',
1511 prosrc
=> 'dist_sl' },
1513 proname
=> 'dist_ls', prorettype
=> 'float8', proargtypes
=> 'line lseg',
1514 prosrc
=> 'dist_ls' },
1517 proname
=> 'dist_cpoly', prorettype
=> 'float8',
1518 proargtypes
=> 'circle polygon', prosrc
=> 'dist_cpoly' },
1520 proname
=> 'dist_polyc', prorettype
=> 'float8',
1521 proargtypes
=> 'polygon circle', prosrc
=> 'dist_polyc' },
1523 proname
=> 'poly_distance', prorettype
=> 'float8',
1524 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_distance' },
1526 proname
=> 'dist_ppoly', prorettype
=> 'float8',
1527 proargtypes
=> 'point polygon', prosrc
=> 'dist_ppoly' },
1529 proname
=> 'dist_polyp', prorettype
=> 'float8',
1530 proargtypes
=> 'polygon point', prosrc
=> 'dist_polyp' },
1532 proname
=> 'dist_cpoint', prorettype
=> 'float8',
1533 proargtypes
=> 'circle point', prosrc
=> 'dist_cpoint' },
1536 proname
=> 'text_lt', proleakproof
=> 't', prorettype
=> 'bool',
1537 proargtypes
=> 'text text', prosrc
=> 'text_lt' },
1539 proname
=> 'text_le', proleakproof
=> 't', prorettype
=> 'bool',
1540 proargtypes
=> 'text text', prosrc
=> 'text_le' },
1542 proname
=> 'text_gt', proleakproof
=> 't', prorettype
=> 'bool',
1543 proargtypes
=> 'text text', prosrc
=> 'text_gt' },
1545 proname
=> 'text_ge', proleakproof
=> 't', prorettype
=> 'bool',
1546 proargtypes
=> 'text text', prosrc
=> 'text_ge' },
1548 { oid
=> '745', descr
=> 'current user name',
1549 proname
=> 'current_user', provolatile
=> 's', prorettype
=> 'name',
1550 proargtypes
=> '', prosrc
=> 'current_user' },
1551 { oid
=> '746', descr
=> 'session user name',
1552 proname
=> 'session_user', provolatile
=> 's', prorettype
=> 'name',
1553 proargtypes
=> '', prosrc
=> 'session_user' },
1554 { oid
=> '6311', descr
=> 'system user name',
1555 proname
=> 'system_user', provolatile
=> 's', prorettype
=> 'text',
1556 proargtypes
=> '', prosrc
=> 'system_user' },
1559 proname
=> 'array_eq', prorettype
=> 'bool',
1560 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_eq' },
1562 proname
=> 'array_ne', prorettype
=> 'bool',
1563 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_ne' },
1565 proname
=> 'array_lt', prorettype
=> 'bool',
1566 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_lt' },
1568 proname
=> 'array_gt', prorettype
=> 'bool',
1569 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_gt' },
1571 proname
=> 'array_le', prorettype
=> 'bool',
1572 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_le' },
1574 proname
=> 'array_ge', prorettype
=> 'bool',
1575 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_ge' },
1576 { oid
=> '747', descr
=> 'array dimensions',
1577 proname
=> 'array_dims', prorettype
=> 'text', proargtypes
=> 'anyarray',
1578 prosrc
=> 'array_dims' },
1579 { oid
=> '748', descr
=> 'number of array dimensions',
1580 proname
=> 'array_ndims', prorettype
=> 'int4', proargtypes
=> 'anyarray',
1581 prosrc
=> 'array_ndims' },
1582 { oid
=> '750', descr
=> 'I/O',
1583 proname
=> 'array_in', provolatile
=> 's', prorettype
=> 'anyarray',
1584 proargtypes
=> 'cstring oid int4', prosrc
=> 'array_in' },
1585 { oid
=> '751', descr
=> 'I/O',
1586 proname
=> 'array_out', provolatile
=> 's', prorettype
=> 'cstring',
1587 proargtypes
=> 'anyarray', prosrc
=> 'array_out' },
1588 { oid
=> '2091', descr
=> 'array lower dimension',
1589 proname
=> 'array_lower', prorettype
=> 'int4',
1590 proargtypes
=> 'anyarray int4', prosrc
=> 'array_lower' },
1591 { oid
=> '2092', descr
=> 'array upper dimension',
1592 proname
=> 'array_upper', prorettype
=> 'int4',
1593 proargtypes
=> 'anyarray int4', prosrc
=> 'array_upper' },
1594 { oid
=> '2176', descr
=> 'array length',
1595 proname
=> 'array_length', prorettype
=> 'int4',
1596 proargtypes
=> 'anyarray int4', prosrc
=> 'array_length' },
1597 { oid
=> '3179', descr
=> 'array cardinality',
1598 proname
=> 'cardinality', prorettype
=> 'int4', proargtypes
=> 'anyarray',
1599 prosrc
=> 'array_cardinality' },
1600 { oid
=> '378', descr
=> 'append element onto end of array',
1601 proname
=> 'array_append', proisstrict
=> 'f',
1602 prorettype
=> 'anycompatiblearray',
1603 proargtypes
=> 'anycompatiblearray anycompatible', prosrc
=> 'array_append' },
1604 { oid
=> '379', descr
=> 'prepend element onto front of array',
1605 proname
=> 'array_prepend', proisstrict
=> 'f',
1606 prorettype
=> 'anycompatiblearray',
1607 proargtypes
=> 'anycompatible anycompatiblearray',
1608 prosrc
=> 'array_prepend' },
1610 proname
=> 'array_cat', proisstrict
=> 'f',
1611 prorettype
=> 'anycompatiblearray',
1612 proargtypes
=> 'anycompatiblearray anycompatiblearray',
1613 prosrc
=> 'array_cat' },
1614 { oid
=> '394', descr
=> 'split delimited text',
1615 proname
=> 'string_to_array', proisstrict
=> 'f', prorettype
=> '_text',
1616 proargtypes
=> 'text text', prosrc
=> 'text_to_array' },
1617 { oid
=> '376', descr
=> 'split delimited text, with null string',
1618 proname
=> 'string_to_array', proisstrict
=> 'f', prorettype
=> '_text',
1619 proargtypes
=> 'text text text', prosrc
=> 'text_to_array_null' },
1620 { oid
=> '6160', descr
=> 'split delimited text',
1621 proname
=> 'string_to_table', prorows
=> '1000', proisstrict
=> 'f',
1622 proretset
=> 't', prorettype
=> 'text', proargtypes
=> 'text text',
1623 prosrc
=> 'text_to_table' },
1624 { oid
=> '6161', descr
=> 'split delimited text, with null string',
1625 proname
=> 'string_to_table', prorows
=> '1000', proisstrict
=> 'f',
1626 proretset
=> 't', prorettype
=> 'text', proargtypes
=> 'text text text',
1627 prosrc
=> 'text_to_table_null' },
1629 descr
=> 'concatenate array elements, using delimiter, into text',
1630 proname
=> 'array_to_string', provolatile
=> 's', prorettype
=> 'text',
1631 proargtypes
=> 'anyarray text', prosrc
=> 'array_to_text' },
1633 descr
=> 'concatenate array elements, using delimiter and null string, into text',
1634 proname
=> 'array_to_string', proisstrict
=> 'f', provolatile
=> 's',
1635 prorettype
=> 'text', proargtypes
=> 'anyarray text text',
1636 prosrc
=> 'array_to_text_null' },
1637 { oid
=> '515', descr
=> 'larger of two',
1638 proname
=> 'array_larger', prorettype
=> 'anyarray',
1639 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_larger' },
1640 { oid
=> '516', descr
=> 'smaller of two',
1641 proname
=> 'array_smaller', prorettype
=> 'anyarray',
1642 proargtypes
=> 'anyarray anyarray', prosrc
=> 'array_smaller' },
1643 { oid
=> '3277', descr
=> 'returns an offset of value in array',
1644 proname
=> 'array_position', proisstrict
=> 'f', prorettype
=> 'int4',
1645 proargtypes
=> 'anycompatiblearray anycompatible',
1646 prosrc
=> 'array_position' },
1648 descr
=> 'returns an offset of value in array with start index',
1649 proname
=> 'array_position', proisstrict
=> 'f', prorettype
=> 'int4',
1650 proargtypes
=> 'anycompatiblearray anycompatible int4',
1651 prosrc
=> 'array_position_start' },
1653 descr
=> 'returns an array of offsets of some value in array',
1654 proname
=> 'array_positions', proisstrict
=> 'f', prorettype
=> '_int4',
1655 proargtypes
=> 'anycompatiblearray anycompatible',
1656 prosrc
=> 'array_positions' },
1657 { oid
=> '1191', descr
=> 'array subscripts generator',
1658 proname
=> 'generate_subscripts', prorows
=> '1000', proretset
=> 't',
1659 prorettype
=> 'int4', proargtypes
=> 'anyarray int4 bool',
1660 prosrc
=> 'generate_subscripts' },
1661 { oid
=> '1192', descr
=> 'array subscripts generator',
1662 proname
=> 'generate_subscripts', prorows
=> '1000', proretset
=> 't',
1663 prorettype
=> 'int4', proargtypes
=> 'anyarray int4',
1664 prosrc
=> 'generate_subscripts_nodir' },
1665 { oid
=> '1193', descr
=> 'array constructor with value',
1666 proname
=> 'array_fill', proisstrict
=> 'f', prorettype
=> 'anyarray',
1667 proargtypes
=> 'anyelement _int4', prosrc
=> 'array_fill' },
1668 { oid
=> '1286', descr
=> 'array constructor with value',
1669 proname
=> 'array_fill', proisstrict
=> 'f', prorettype
=> 'anyarray',
1670 proargtypes
=> 'anyelement _int4 _int4',
1671 prosrc
=> 'array_fill_with_lower_bounds' },
1672 { oid
=> '2331', descr
=> 'expand array to set of rows',
1673 proname
=> 'unnest', prorows
=> '100', prosupport
=> 'array_unnest_support',
1674 proretset
=> 't', prorettype
=> 'anyelement', proargtypes
=> 'anyarray',
1675 prosrc
=> 'array_unnest' },
1676 { oid
=> '3996', descr
=> 'planner support for array_unnest',
1677 proname
=> 'array_unnest_support', prorettype
=> 'internal',
1678 proargtypes
=> 'internal', prosrc
=> 'array_unnest_support' },
1680 descr
=> 'remove any occurrences of an element from an array',
1681 proname
=> 'array_remove', proisstrict
=> 'f',
1682 prorettype
=> 'anycompatiblearray',
1683 proargtypes
=> 'anycompatiblearray anycompatible', prosrc
=> 'array_remove' },
1684 { oid
=> '3168', descr
=> 'replace any occurrences of an element in an array',
1685 proname
=> 'array_replace', proisstrict
=> 'f',
1686 prorettype
=> 'anycompatiblearray',
1687 proargtypes
=> 'anycompatiblearray anycompatible anycompatible',
1688 prosrc
=> 'array_replace' },
1689 { oid
=> '2333', descr
=> 'aggregate transition function',
1690 proname
=> 'array_agg_transfn', proisstrict
=> 'f', prorettype
=> 'internal',
1691 proargtypes
=> 'internal anynonarray', prosrc
=> 'array_agg_transfn' },
1692 { oid
=> '6293', descr
=> 'aggregate combine function',
1693 proname
=> 'array_agg_combine', proisstrict
=> 'f', prorettype
=> 'internal',
1694 proargtypes
=> 'internal internal', prosrc
=> 'array_agg_combine' },
1695 { oid
=> '6294', descr
=> 'aggregate serial function',
1696 proname
=> 'array_agg_serialize', prorettype
=> 'bytea',
1697 proargtypes
=> 'internal', prosrc
=> 'array_agg_serialize' },
1698 { oid
=> '6295', descr
=> 'aggregate deserial function',
1699 proname
=> 'array_agg_deserialize', prorettype
=> 'internal',
1700 proargtypes
=> 'bytea internal', prosrc
=> 'array_agg_deserialize' },
1701 { oid
=> '2334', descr
=> 'aggregate final function',
1702 proname
=> 'array_agg_finalfn', proisstrict
=> 'f', prorettype
=> 'anyarray',
1703 proargtypes
=> 'internal anynonarray', prosrc
=> 'array_agg_finalfn' },
1704 { oid
=> '2335', descr
=> 'concatenate aggregate input into an array',
1705 proname
=> 'array_agg', prokind
=> 'a', proisstrict
=> 'f',
1706 prorettype
=> 'anyarray', proargtypes
=> 'anynonarray',
1707 prosrc
=> 'aggregate_dummy' },
1708 { oid
=> '4051', descr
=> 'aggregate transition function',
1709 proname
=> 'array_agg_array_transfn', proisstrict
=> 'f',
1710 prorettype
=> 'internal', proargtypes
=> 'internal anyarray',
1711 prosrc
=> 'array_agg_array_transfn' },
1712 { oid
=> '6296', descr
=> 'aggregate combine function',
1713 proname
=> 'array_agg_array_combine', proisstrict
=> 'f',
1714 prorettype
=> 'internal', proargtypes
=> 'internal internal',
1715 prosrc
=> 'array_agg_array_combine' },
1716 { oid
=> '6297', descr
=> 'aggregate serial function',
1717 proname
=> 'array_agg_array_serialize', prorettype
=> 'bytea',
1718 proargtypes
=> 'internal', prosrc
=> 'array_agg_array_serialize' },
1719 { oid
=> '6298', descr
=> 'aggregate deserial function',
1720 proname
=> 'array_agg_array_deserialize', prorettype
=> 'internal',
1721 proargtypes
=> 'bytea internal', prosrc
=> 'array_agg_array_deserialize' },
1722 { oid
=> '4052', descr
=> 'aggregate final function',
1723 proname
=> 'array_agg_array_finalfn', proisstrict
=> 'f',
1724 prorettype
=> 'anyarray', proargtypes
=> 'internal anyarray',
1725 prosrc
=> 'array_agg_array_finalfn' },
1726 { oid
=> '4053', descr
=> 'concatenate aggregate input into an array',
1727 proname
=> 'array_agg', prokind
=> 'a', proisstrict
=> 'f',
1728 prorettype
=> 'anyarray', proargtypes
=> 'anyarray',
1729 prosrc
=> 'aggregate_dummy' },
1731 descr
=> 'bucket number of operand given a sorted array of bucket lower bounds',
1732 proname
=> 'width_bucket', prorettype
=> 'int4',
1733 proargtypes
=> 'anycompatible anycompatiblearray',
1734 prosrc
=> 'width_bucket_array' },
1735 { oid
=> '6172', descr
=> 'remove last N elements of array',
1736 proname
=> 'trim_array', prorettype
=> 'anyarray',
1737 proargtypes
=> 'anyarray int4', prosrc
=> 'trim_array' },
1738 { oid
=> '6215', descr
=> 'shuffle array',
1739 proname
=> 'array_shuffle', provolatile
=> 'v', prorettype
=> 'anyarray',
1740 proargtypes
=> 'anyarray', prosrc
=> 'array_shuffle' },
1741 { oid
=> '6216', descr
=> 'take samples from array',
1742 proname
=> 'array_sample', provolatile
=> 'v', prorettype
=> 'anyarray',
1743 proargtypes
=> 'anyarray int4', prosrc
=> 'array_sample' },
1744 { oid
=> '8686', descr
=> 'reverse array',
1745 proname
=> 'array_reverse', prorettype
=> 'anyarray',
1746 proargtypes
=> 'anyarray', prosrc
=> 'array_reverse' },
1747 { oid
=> '3816', descr
=> 'array typanalyze',
1748 proname
=> 'array_typanalyze', provolatile
=> 's', prorettype
=> 'bool',
1749 proargtypes
=> 'internal', prosrc
=> 'array_typanalyze' },
1751 descr
=> 'restriction selectivity for array-containment operators',
1752 proname
=> 'arraycontsel', provolatile
=> 's', prorettype
=> 'float8',
1753 proargtypes
=> 'internal oid internal int4', prosrc
=> 'arraycontsel' },
1754 { oid
=> '3818', descr
=> 'join selectivity for array-containment operators',
1755 proname
=> 'arraycontjoinsel', provolatile
=> 's', prorettype
=> 'float8',
1756 proargtypes
=> 'internal oid internal int2 internal',
1757 prosrc
=> 'arraycontjoinsel' },
1759 { oid
=> '764', descr
=> 'large object import',
1760 proname
=> 'lo_import', provolatile
=> 'v', proparallel
=> 'u',
1761 prorettype
=> 'oid', proargtypes
=> 'text', prosrc
=> 'be_lo_import' },
1762 { oid
=> '767', descr
=> 'large object import',
1763 proname
=> 'lo_import', provolatile
=> 'v', proparallel
=> 'u',
1764 prorettype
=> 'oid', proargtypes
=> 'text oid',
1765 prosrc
=> 'be_lo_import_with_oid' },
1766 { oid
=> '765', descr
=> 'large object export',
1767 proname
=> 'lo_export', provolatile
=> 'v', proparallel
=> 'u',
1768 prorettype
=> 'int4', proargtypes
=> 'oid text', prosrc
=> 'be_lo_export' },
1770 { oid
=> '766', descr
=> 'increment',
1771 proname
=> 'int4inc', prorettype
=> 'int4', proargtypes
=> 'int4',
1772 prosrc
=> 'int4inc' },
1773 { oid
=> '768', descr
=> 'larger of two',
1774 proname
=> 'int4larger', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
1775 prosrc
=> 'int4larger' },
1776 { oid
=> '769', descr
=> 'smaller of two',
1777 proname
=> 'int4smaller', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
1778 prosrc
=> 'int4smaller' },
1779 { oid
=> '770', descr
=> 'larger of two',
1780 proname
=> 'int2larger', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
1781 prosrc
=> 'int2larger' },
1782 { oid
=> '771', descr
=> 'smaller of two',
1783 proname
=> 'int2smaller', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
1784 prosrc
=> 'int2smaller' },
1789 proname
=> 'cash_mul_flt4', prorettype
=> 'money',
1790 proargtypes
=> 'money float4', prosrc
=> 'cash_mul_flt4' },
1792 proname
=> 'cash_div_flt4', prorettype
=> 'money',
1793 proargtypes
=> 'money float4', prosrc
=> 'cash_div_flt4' },
1795 proname
=> 'flt4_mul_cash', prorettype
=> 'money',
1796 proargtypes
=> 'float4 money', prosrc
=> 'flt4_mul_cash' },
1798 { oid
=> '849', descr
=> 'position of substring',
1799 proname
=> 'position', prorettype
=> 'int4', proargtypes
=> 'text text',
1800 prosrc
=> 'textpos' },
1802 proname
=> 'textlike', prosupport
=> 'textlike_support', prorettype
=> 'bool',
1803 proargtypes
=> 'text text', prosrc
=> 'textlike' },
1804 { oid
=> '1023', descr
=> 'planner support for textlike',
1805 proname
=> 'textlike_support', prorettype
=> 'internal',
1806 proargtypes
=> 'internal', prosrc
=> 'textlike_support' },
1808 proname
=> 'textnlike', prorettype
=> 'bool', proargtypes
=> 'text text',
1809 prosrc
=> 'textnlike' },
1812 proname
=> 'int48eq', proleakproof
=> 't', prorettype
=> 'bool',
1813 proargtypes
=> 'int4 int8', prosrc
=> 'int48eq' },
1815 proname
=> 'int48ne', proleakproof
=> 't', prorettype
=> 'bool',
1816 proargtypes
=> 'int4 int8', prosrc
=> 'int48ne' },
1818 proname
=> 'int48lt', proleakproof
=> 't', prorettype
=> 'bool',
1819 proargtypes
=> 'int4 int8', prosrc
=> 'int48lt' },
1821 proname
=> 'int48gt', proleakproof
=> 't', prorettype
=> 'bool',
1822 proargtypes
=> 'int4 int8', prosrc
=> 'int48gt' },
1824 proname
=> 'int48le', proleakproof
=> 't', prorettype
=> 'bool',
1825 proargtypes
=> 'int4 int8', prosrc
=> 'int48le' },
1827 proname
=> 'int48ge', proleakproof
=> 't', prorettype
=> 'bool',
1828 proargtypes
=> 'int4 int8', prosrc
=> 'int48ge' },
1831 proname
=> 'namelike', prosupport
=> 'textlike_support', prorettype
=> 'bool',
1832 proargtypes
=> 'name text', prosrc
=> 'namelike' },
1834 proname
=> 'namenlike', prorettype
=> 'bool', proargtypes
=> 'name text',
1835 prosrc
=> 'namenlike' },
1837 { oid
=> '860', descr
=> 'convert char to char(n)',
1838 proname
=> 'bpchar', prorettype
=> 'bpchar', proargtypes
=> 'char',
1839 prosrc
=> 'char_bpchar' },
1841 { oid
=> '861', descr
=> 'name of the current database',
1842 proname
=> 'current_database', provolatile
=> 's', prorettype
=> 'name',
1843 proargtypes
=> '', prosrc
=> 'current_database' },
1844 { oid
=> '817', descr
=> 'get the currently executing query',
1845 proname
=> 'current_query', proisstrict
=> 'f', provolatile
=> 'v',
1846 proparallel
=> 'r', prorettype
=> 'text', proargtypes
=> '',
1847 prosrc
=> 'current_query' },
1850 proname
=> 'int8_mul_cash', prorettype
=> 'money',
1851 proargtypes
=> 'int8 money', prosrc
=> 'int8_mul_cash' },
1853 proname
=> 'int4_mul_cash', prorettype
=> 'money',
1854 proargtypes
=> 'int4 money', prosrc
=> 'int4_mul_cash' },
1856 proname
=> 'int2_mul_cash', prorettype
=> 'money',
1857 proargtypes
=> 'int2 money', prosrc
=> 'int2_mul_cash' },
1859 proname
=> 'cash_mul_int8', prorettype
=> 'money',
1860 proargtypes
=> 'money int8', prosrc
=> 'cash_mul_int8' },
1862 proname
=> 'cash_div_int8', prorettype
=> 'money',
1863 proargtypes
=> 'money int8', prosrc
=> 'cash_div_int8' },
1865 proname
=> 'cash_mul_int4', prorettype
=> 'money',
1866 proargtypes
=> 'money int4', prosrc
=> 'cash_mul_int4' },
1868 proname
=> 'cash_div_int4', prorettype
=> 'money',
1869 proargtypes
=> 'money int4', prosrc
=> 'cash_div_int4' },
1871 proname
=> 'cash_mul_int2', prorettype
=> 'money',
1872 proargtypes
=> 'money int2', prosrc
=> 'cash_mul_int2' },
1874 proname
=> 'cash_div_int2', prorettype
=> 'money',
1875 proargtypes
=> 'money int2', prosrc
=> 'cash_div_int2' },
1877 { oid
=> '886', descr
=> 'I/O',
1878 proname
=> 'cash_in', provolatile
=> 's', prorettype
=> 'money',
1879 proargtypes
=> 'cstring', prosrc
=> 'cash_in' },
1880 { oid
=> '887', descr
=> 'I/O',
1881 proname
=> 'cash_out', provolatile
=> 's', prorettype
=> 'cstring',
1882 proargtypes
=> 'money', prosrc
=> 'cash_out' },
1884 proname
=> 'cash_eq', proleakproof
=> 't', prorettype
=> 'bool',
1885 proargtypes
=> 'money money', prosrc
=> 'cash_eq' },
1887 proname
=> 'cash_ne', proleakproof
=> 't', prorettype
=> 'bool',
1888 proargtypes
=> 'money money', prosrc
=> 'cash_ne' },
1890 proname
=> 'cash_lt', proleakproof
=> 't', prorettype
=> 'bool',
1891 proargtypes
=> 'money money', prosrc
=> 'cash_lt' },
1893 proname
=> 'cash_le', proleakproof
=> 't', prorettype
=> 'bool',
1894 proargtypes
=> 'money money', prosrc
=> 'cash_le' },
1896 proname
=> 'cash_gt', proleakproof
=> 't', prorettype
=> 'bool',
1897 proargtypes
=> 'money money', prosrc
=> 'cash_gt' },
1899 proname
=> 'cash_ge', proleakproof
=> 't', prorettype
=> 'bool',
1900 proargtypes
=> 'money money', prosrc
=> 'cash_ge' },
1902 proname
=> 'cash_pl', prorettype
=> 'money', proargtypes
=> 'money money',
1903 prosrc
=> 'cash_pl' },
1905 proname
=> 'cash_mi', prorettype
=> 'money', proargtypes
=> 'money money',
1906 prosrc
=> 'cash_mi' },
1908 proname
=> 'cash_mul_flt8', prorettype
=> 'money',
1909 proargtypes
=> 'money float8', prosrc
=> 'cash_mul_flt8' },
1911 proname
=> 'cash_div_flt8', prorettype
=> 'money',
1912 proargtypes
=> 'money float8', prosrc
=> 'cash_div_flt8' },
1913 { oid
=> '898', descr
=> 'larger of two',
1914 proname
=> 'cashlarger', prorettype
=> 'money', proargtypes
=> 'money money',
1915 prosrc
=> 'cashlarger' },
1916 { oid
=> '899', descr
=> 'smaller of two',
1917 proname
=> 'cashsmaller', prorettype
=> 'money', proargtypes
=> 'money money',
1918 prosrc
=> 'cashsmaller' },
1920 proname
=> 'flt8_mul_cash', prorettype
=> 'money',
1921 proargtypes
=> 'float8 money', prosrc
=> 'flt8_mul_cash' },
1922 { oid
=> '935', descr
=> 'output money amount as words',
1923 proname
=> 'cash_words', prorettype
=> 'text', proargtypes
=> 'money',
1924 prosrc
=> 'cash_words' },
1926 proname
=> 'cash_div_cash', prorettype
=> 'float8',
1927 proargtypes
=> 'money money', prosrc
=> 'cash_div_cash' },
1928 { oid
=> '3823', descr
=> 'convert money to numeric',
1929 proname
=> 'numeric', provolatile
=> 's', prorettype
=> 'numeric',
1930 proargtypes
=> 'money', prosrc
=> 'cash_numeric' },
1931 { oid
=> '3824', descr
=> 'convert numeric to money',
1932 proname
=> 'money', provolatile
=> 's', prorettype
=> 'money',
1933 proargtypes
=> 'numeric', prosrc
=> 'numeric_cash' },
1934 { oid
=> '3811', descr
=> 'convert int4 to money',
1935 proname
=> 'money', provolatile
=> 's', prorettype
=> 'money',
1936 proargtypes
=> 'int4', prosrc
=> 'int4_cash' },
1937 { oid
=> '3812', descr
=> 'convert int8 to money',
1938 proname
=> 'money', provolatile
=> 's', prorettype
=> 'money',
1939 proargtypes
=> 'int8', prosrc
=> 'int8_cash' },
1943 { oid
=> '940', descr
=> 'modulus',
1944 proname
=> 'mod', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
1945 prosrc
=> 'int2mod' },
1946 { oid
=> '941', descr
=> 'modulus',
1947 proname
=> 'mod', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
1948 prosrc
=> 'int4mod' },
1951 proname
=> 'int8mod', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1952 prosrc
=> 'int8mod' },
1953 { oid
=> '947', descr
=> 'modulus',
1954 proname
=> 'mod', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1955 prosrc
=> 'int8mod' },
1957 { oid
=> '5044', descr
=> 'greatest common divisor',
1958 proname
=> 'gcd', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
1959 prosrc
=> 'int4gcd' },
1960 { oid
=> '5045', descr
=> 'greatest common divisor',
1961 proname
=> 'gcd', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1962 prosrc
=> 'int8gcd' },
1964 { oid
=> '5046', descr
=> 'least common multiple',
1965 proname
=> 'lcm', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
1966 prosrc
=> 'int4lcm' },
1967 { oid
=> '5047', descr
=> 'least common multiple',
1968 proname
=> 'lcm', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
1969 prosrc
=> 'int8lcm' },
1971 { oid
=> '944', descr
=> 'convert text to char',
1972 proname
=> 'char', prorettype
=> 'char', proargtypes
=> 'text',
1973 prosrc
=> 'text_char' },
1974 { oid
=> '946', descr
=> 'convert char to text',
1975 proname
=> 'text', prorettype
=> 'text', proargtypes
=> 'char',
1976 prosrc
=> 'char_text' },
1978 { oid
=> '952', descr
=> 'large object open',
1979 proname
=> 'lo_open', provolatile
=> 'v', proparallel
=> 'u',
1980 prorettype
=> 'int4', proargtypes
=> 'oid int4', prosrc
=> 'be_lo_open' },
1981 { oid
=> '953', descr
=> 'large object close',
1982 proname
=> 'lo_close', provolatile
=> 'v', proparallel
=> 'u',
1983 prorettype
=> 'int4', proargtypes
=> 'int4', prosrc
=> 'be_lo_close' },
1984 { oid
=> '954', descr
=> 'large object read',
1985 proname
=> 'loread', provolatile
=> 'v', proparallel
=> 'u',
1986 prorettype
=> 'bytea', proargtypes
=> 'int4 int4', prosrc
=> 'be_loread' },
1987 { oid
=> '955', descr
=> 'large object write',
1988 proname
=> 'lowrite', provolatile
=> 'v', proparallel
=> 'u',
1989 prorettype
=> 'int4', proargtypes
=> 'int4 bytea', prosrc
=> 'be_lowrite' },
1990 { oid
=> '956', descr
=> 'large object seek',
1991 proname
=> 'lo_lseek', provolatile
=> 'v', proparallel
=> 'u',
1992 prorettype
=> 'int4', proargtypes
=> 'int4 int4 int4',
1993 prosrc
=> 'be_lo_lseek' },
1994 { oid
=> '3170', descr
=> 'large object seek (64 bit)',
1995 proname
=> 'lo_lseek64', provolatile
=> 'v', proparallel
=> 'u',
1996 prorettype
=> 'int8', proargtypes
=> 'int4 int8 int4',
1997 prosrc
=> 'be_lo_lseek64' },
1998 { oid
=> '957', descr
=> 'large object create',
1999 proname
=> 'lo_creat', provolatile
=> 'v', proparallel
=> 'u',
2000 prorettype
=> 'oid', proargtypes
=> 'int4', prosrc
=> 'be_lo_creat' },
2001 { oid
=> '715', descr
=> 'large object create',
2002 proname
=> 'lo_create', provolatile
=> 'v', proparallel
=> 'u',
2003 prorettype
=> 'oid', proargtypes
=> 'oid', prosrc
=> 'be_lo_create' },
2004 { oid
=> '958', descr
=> 'large object position',
2005 proname
=> 'lo_tell', provolatile
=> 'v', proparallel
=> 'u',
2006 prorettype
=> 'int4', proargtypes
=> 'int4', prosrc
=> 'be_lo_tell' },
2007 { oid
=> '3171', descr
=> 'large object position (64 bit)',
2008 proname
=> 'lo_tell64', provolatile
=> 'v', proparallel
=> 'u',
2009 prorettype
=> 'int8', proargtypes
=> 'int4', prosrc
=> 'be_lo_tell64' },
2010 { oid
=> '1004', descr
=> 'truncate large object',
2011 proname
=> 'lo_truncate', provolatile
=> 'v', proparallel
=> 'u',
2012 prorettype
=> 'int4', proargtypes
=> 'int4 int4',
2013 prosrc
=> 'be_lo_truncate' },
2014 { oid
=> '3172', descr
=> 'truncate large object (64 bit)',
2015 proname
=> 'lo_truncate64', provolatile
=> 'v', proparallel
=> 'u',
2016 prorettype
=> 'int4', proargtypes
=> 'int4 int8',
2017 prosrc
=> 'be_lo_truncate64' },
2019 { oid
=> '3457', descr
=> 'create new large object with given content',
2020 proname
=> 'lo_from_bytea', provolatile
=> 'v', proparallel
=> 'u',
2021 prorettype
=> 'oid', proargtypes
=> 'oid bytea',
2022 prosrc
=> 'be_lo_from_bytea' },
2023 { oid
=> '3458', descr
=> 'read entire large object',
2024 proname
=> 'lo_get', provolatile
=> 'v', proparallel
=> 'u',
2025 prorettype
=> 'bytea', proargtypes
=> 'oid', prosrc
=> 'be_lo_get' },
2026 { oid
=> '3459', descr
=> 'read large object from offset for length',
2027 proname
=> 'lo_get', provolatile
=> 'v', proparallel
=> 'u',
2028 prorettype
=> 'bytea', proargtypes
=> 'oid int8 int4',
2029 prosrc
=> 'be_lo_get_fragment' },
2030 { oid
=> '3460', descr
=> 'write data at offset',
2031 proname
=> 'lo_put', provolatile
=> 'v', proparallel
=> 'u',
2032 prorettype
=> 'void', proargtypes
=> 'oid int8 bytea',
2033 prosrc
=> 'be_lo_put' },
2036 proname
=> 'on_pl', prorettype
=> 'bool', proargtypes
=> 'point line',
2037 prosrc
=> 'on_pl' },
2039 proname
=> 'on_sl', prorettype
=> 'bool', proargtypes
=> 'lseg line',
2040 prosrc
=> 'on_sl' },
2042 proname
=> 'close_pl', prorettype
=> 'point', proargtypes
=> 'point line',
2043 prosrc
=> 'close_pl' },
2045 { oid
=> '964', descr
=> 'large object unlink (delete)',
2046 proname
=> 'lo_unlink', provolatile
=> 'v', proparallel
=> 'u',
2047 prorettype
=> 'int4', proargtypes
=> 'oid', prosrc
=> 'be_lo_unlink' },
2050 proname
=> 'path_inter', prorettype
=> 'bool', proargtypes
=> 'path path',
2051 prosrc
=> 'path_inter' },
2052 { oid
=> '975', descr
=> 'box area',
2053 proname
=> 'area', prorettype
=> 'float8', proargtypes
=> 'box',
2054 prosrc
=> 'box_area' },
2055 { oid
=> '976', descr
=> 'box width',
2056 proname
=> 'width', prorettype
=> 'float8', proargtypes
=> 'box',
2057 prosrc
=> 'box_width' },
2058 { oid
=> '977', descr
=> 'box height',
2059 proname
=> 'height', prorettype
=> 'float8', proargtypes
=> 'box',
2060 prosrc
=> 'box_height' },
2062 proname
=> 'box_distance', prorettype
=> 'float8', proargtypes
=> 'box box',
2063 prosrc
=> 'box_distance' },
2064 { oid
=> '979', descr
=> 'area of a closed path',
2065 proname
=> 'area', prorettype
=> 'float8', proargtypes
=> 'path',
2066 prosrc
=> 'path_area' },
2068 proname
=> 'box_intersect', prorettype
=> 'box', proargtypes
=> 'box box',
2069 prosrc
=> 'box_intersect' },
2070 { oid
=> '4067', descr
=> 'bounding box of two boxes',
2071 proname
=> 'bound_box', prorettype
=> 'box', proargtypes
=> 'box box',
2072 prosrc
=> 'boxes_bound_box' },
2073 { oid
=> '981', descr
=> 'box diagonal',
2074 proname
=> 'diagonal', prorettype
=> 'lseg', proargtypes
=> 'box',
2075 prosrc
=> 'box_diagonal' },
2077 proname
=> 'path_n_lt', prorettype
=> 'bool', proargtypes
=> 'path path',
2078 prosrc
=> 'path_n_lt' },
2080 proname
=> 'path_n_gt', prorettype
=> 'bool', proargtypes
=> 'path path',
2081 prosrc
=> 'path_n_gt' },
2083 proname
=> 'path_n_eq', prorettype
=> 'bool', proargtypes
=> 'path path',
2084 prosrc
=> 'path_n_eq' },
2086 proname
=> 'path_n_le', prorettype
=> 'bool', proargtypes
=> 'path path',
2087 prosrc
=> 'path_n_le' },
2089 proname
=> 'path_n_ge', prorettype
=> 'bool', proargtypes
=> 'path path',
2090 prosrc
=> 'path_n_ge' },
2092 proname
=> 'path_length', prorettype
=> 'float8', proargtypes
=> 'path',
2093 prosrc
=> 'path_length' },
2095 proname
=> 'point_ne', prorettype
=> 'bool', proargtypes
=> 'point point',
2096 prosrc
=> 'point_ne' },
2098 proname
=> 'point_vert', prorettype
=> 'bool', proargtypes
=> 'point point',
2099 prosrc
=> 'point_vert' },
2101 proname
=> 'point_horiz', prorettype
=> 'bool', proargtypes
=> 'point point',
2102 prosrc
=> 'point_horiz' },
2104 proname
=> 'point_distance', prorettype
=> 'float8',
2105 proargtypes
=> 'point point', prosrc
=> 'point_distance' },
2106 { oid
=> '992', descr
=> 'slope between points',
2107 proname
=> 'slope', prorettype
=> 'float8', proargtypes
=> 'point point',
2108 prosrc
=> 'point_slope' },
2109 { oid
=> '993', descr
=> 'convert points to line segment',
2110 proname
=> 'lseg', prorettype
=> 'lseg', proargtypes
=> 'point point',
2111 prosrc
=> 'lseg_construct' },
2113 proname
=> 'lseg_intersect', prorettype
=> 'bool', proargtypes
=> 'lseg lseg',
2114 prosrc
=> 'lseg_intersect' },
2116 proname
=> 'lseg_parallel', prorettype
=> 'bool', proargtypes
=> 'lseg lseg',
2117 prosrc
=> 'lseg_parallel' },
2119 proname
=> 'lseg_perp', prorettype
=> 'bool', proargtypes
=> 'lseg lseg',
2120 prosrc
=> 'lseg_perp' },
2122 proname
=> 'lseg_vertical', prorettype
=> 'bool', proargtypes
=> 'lseg',
2123 prosrc
=> 'lseg_vertical' },
2125 proname
=> 'lseg_horizontal', prorettype
=> 'bool', proargtypes
=> 'lseg',
2126 prosrc
=> 'lseg_horizontal' },
2128 proname
=> 'lseg_eq', proleakproof
=> 't', prorettype
=> 'bool',
2129 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_eq' },
2133 { oid
=> '1026', descr
=> 'adjust timestamp to new time zone',
2134 proname
=> 'timezone', prorettype
=> 'timestamp',
2135 proargtypes
=> 'interval timestamptz', prosrc
=> 'timestamptz_izone' },
2137 { oid
=> '1031', descr
=> 'I/O',
2138 proname
=> 'aclitemin', provolatile
=> 's', prorettype
=> 'aclitem',
2139 proargtypes
=> 'cstring', prosrc
=> 'aclitemin' },
2140 { oid
=> '1032', descr
=> 'I/O',
2141 proname
=> 'aclitemout', provolatile
=> 's', prorettype
=> 'cstring',
2142 proargtypes
=> 'aclitem', prosrc
=> 'aclitemout' },
2143 { oid
=> '1035', descr
=> 'add/update ACL item',
2144 proname
=> 'aclinsert', prorettype
=> '_aclitem',
2145 proargtypes
=> '_aclitem aclitem', prosrc
=> 'aclinsert' },
2146 { oid
=> '1036', descr
=> 'remove ACL item',
2147 proname
=> 'aclremove', prorettype
=> '_aclitem',
2148 proargtypes
=> '_aclitem aclitem', prosrc
=> 'aclremove' },
2149 { oid
=> '1037', descr
=> 'contains',
2150 proname
=> 'aclcontains', prorettype
=> 'bool',
2151 proargtypes
=> '_aclitem aclitem', prosrc
=> 'aclcontains' },
2153 proname
=> 'aclitemeq', prorettype
=> 'bool',
2154 proargtypes
=> 'aclitem aclitem', prosrc
=> 'aclitem_eq' },
2155 { oid
=> '1365', descr
=> 'make ACL item',
2156 proname
=> 'makeaclitem', prorettype
=> 'aclitem',
2157 proargtypes
=> 'oid oid text bool', prosrc
=> 'makeaclitem' },
2159 descr
=> 'show hardwired default privileges, primarily for use by the information schema',
2160 proname
=> 'acldefault', prorettype
=> '_aclitem', proargtypes
=> 'char oid',
2161 prosrc
=> 'acldefault_sql' },
2163 descr
=> 'convert ACL item array to table, primarily for use by information schema',
2164 proname
=> 'aclexplode', prorows
=> '10', proretset
=> 't',
2165 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> '_aclitem',
2166 proallargtypes
=> '{_aclitem,oid,oid,text,bool}',
2167 proargmodes
=> '{i,o,o,o,o}',
2168 proargnames
=> '{acl,grantor,grantee,privilege_type,is_grantable}',
2169 prosrc
=> 'aclexplode' },
2170 { oid
=> '1044', descr
=> 'I/O',
2171 proname
=> 'bpcharin', prorettype
=> 'bpchar',
2172 proargtypes
=> 'cstring oid int4', prosrc
=> 'bpcharin' },
2173 { oid
=> '1045', descr
=> 'I/O',
2174 proname
=> 'bpcharout', prorettype
=> 'cstring', proargtypes
=> 'bpchar',
2175 prosrc
=> 'bpcharout' },
2176 { oid
=> '2913', descr
=> 'I/O typmod',
2177 proname
=> 'bpchartypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
2178 prosrc
=> 'bpchartypmodin' },
2179 { oid
=> '2914', descr
=> 'I/O typmod',
2180 proname
=> 'bpchartypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
2181 prosrc
=> 'bpchartypmodout' },
2182 { oid
=> '1046', descr
=> 'I/O',
2183 proname
=> 'varcharin', prorettype
=> 'varchar',
2184 proargtypes
=> 'cstring oid int4', prosrc
=> 'varcharin' },
2185 { oid
=> '1047', descr
=> 'I/O',
2186 proname
=> 'varcharout', prorettype
=> 'cstring', proargtypes
=> 'varchar',
2187 prosrc
=> 'varcharout' },
2188 { oid
=> '2915', descr
=> 'I/O typmod',
2189 proname
=> 'varchartypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
2190 prosrc
=> 'varchartypmodin' },
2191 { oid
=> '2916', descr
=> 'I/O typmod',
2192 proname
=> 'varchartypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
2193 prosrc
=> 'varchartypmodout' },
2195 proname
=> 'bpchareq', proleakproof
=> 't', prorettype
=> 'bool',
2196 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchareq' },
2198 proname
=> 'bpcharlt', proleakproof
=> 't', prorettype
=> 'bool',
2199 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpcharlt' },
2201 proname
=> 'bpcharle', proleakproof
=> 't', prorettype
=> 'bool',
2202 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpcharle' },
2204 proname
=> 'bpchargt', proleakproof
=> 't', prorettype
=> 'bool',
2205 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchargt' },
2207 proname
=> 'bpcharge', proleakproof
=> 't', prorettype
=> 'bool',
2208 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpcharge' },
2210 proname
=> 'bpcharne', proleakproof
=> 't', prorettype
=> 'bool',
2211 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpcharne' },
2212 { oid
=> '1063', descr
=> 'larger of two',
2213 proname
=> 'bpchar_larger', proleakproof
=> 't', prorettype
=> 'bpchar',
2214 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchar_larger' },
2215 { oid
=> '1064', descr
=> 'smaller of two',
2216 proname
=> 'bpchar_smaller', proleakproof
=> 't', prorettype
=> 'bpchar',
2217 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchar_smaller' },
2218 { oid
=> '1078', descr
=> 'less-equal-greater',
2219 proname
=> 'bpcharcmp', proleakproof
=> 't', prorettype
=> 'int4',
2220 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpcharcmp' },
2221 { oid
=> '3328', descr
=> 'sort support',
2222 proname
=> 'bpchar_sortsupport', prorettype
=> 'void',
2223 proargtypes
=> 'internal', prosrc
=> 'bpchar_sortsupport' },
2224 { oid
=> '1080', descr
=> 'hash',
2225 proname
=> 'hashbpchar', prorettype
=> 'int4', proargtypes
=> 'bpchar',
2226 prosrc
=> 'hashbpchar' },
2227 { oid
=> '972', descr
=> 'hash',
2228 proname
=> 'hashbpcharextended', prorettype
=> 'int8',
2229 proargtypes
=> 'bpchar int8', prosrc
=> 'hashbpcharextended' },
2230 { oid
=> '1081', descr
=> 'format a type oid and atttypmod to canonical SQL',
2231 proname
=> 'format_type', proisstrict
=> 'f', provolatile
=> 's',
2232 prorettype
=> 'text', proargtypes
=> 'oid int4', prosrc
=> 'format_type' },
2233 { oid
=> '1084', descr
=> 'I/O',
2234 proname
=> 'date_in', provolatile
=> 's', prorettype
=> 'date',
2235 proargtypes
=> 'cstring', prosrc
=> 'date_in' },
2236 { oid
=> '1085', descr
=> 'I/O',
2237 proname
=> 'date_out', provolatile
=> 's', prorettype
=> 'cstring',
2238 proargtypes
=> 'date', prosrc
=> 'date_out' },
2240 proname
=> 'date_eq', proleakproof
=> 't', prorettype
=> 'bool',
2241 proargtypes
=> 'date date', prosrc
=> 'date_eq' },
2243 proname
=> 'date_lt', proleakproof
=> 't', prorettype
=> 'bool',
2244 proargtypes
=> 'date date', prosrc
=> 'date_lt' },
2246 proname
=> 'date_le', proleakproof
=> 't', prorettype
=> 'bool',
2247 proargtypes
=> 'date date', prosrc
=> 'date_le' },
2249 proname
=> 'date_gt', proleakproof
=> 't', prorettype
=> 'bool',
2250 proargtypes
=> 'date date', prosrc
=> 'date_gt' },
2252 proname
=> 'date_ge', proleakproof
=> 't', prorettype
=> 'bool',
2253 proargtypes
=> 'date date', prosrc
=> 'date_ge' },
2255 proname
=> 'date_ne', proleakproof
=> 't', prorettype
=> 'bool',
2256 proargtypes
=> 'date date', prosrc
=> 'date_ne' },
2257 { oid
=> '1092', descr
=> 'less-equal-greater',
2258 proname
=> 'date_cmp', proleakproof
=> 't', prorettype
=> 'int4',
2259 proargtypes
=> 'date date', prosrc
=> 'date_cmp' },
2260 { oid
=> '3136', descr
=> 'sort support',
2261 proname
=> 'date_sortsupport', prorettype
=> 'void',
2262 proargtypes
=> 'internal', prosrc
=> 'date_sortsupport' },
2263 { oid
=> '4133', descr
=> 'window RANGE support',
2264 proname
=> 'in_range', prorettype
=> 'bool',
2265 proargtypes
=> 'date date interval bool bool',
2266 prosrc
=> 'in_range_date_interval' },
2271 proname
=> 'time_lt', proleakproof
=> 't', prorettype
=> 'bool',
2272 proargtypes
=> 'time time', prosrc
=> 'time_lt' },
2274 proname
=> 'time_le', proleakproof
=> 't', prorettype
=> 'bool',
2275 proargtypes
=> 'time time', prosrc
=> 'time_le' },
2277 proname
=> 'time_gt', proleakproof
=> 't', prorettype
=> 'bool',
2278 proargtypes
=> 'time time', prosrc
=> 'time_gt' },
2280 proname
=> 'time_ge', proleakproof
=> 't', prorettype
=> 'bool',
2281 proargtypes
=> 'time time', prosrc
=> 'time_ge' },
2283 proname
=> 'time_ne', proleakproof
=> 't', prorettype
=> 'bool',
2284 proargtypes
=> 'time time', prosrc
=> 'time_ne' },
2285 { oid
=> '1107', descr
=> 'less-equal-greater',
2286 proname
=> 'time_cmp', proleakproof
=> 't', prorettype
=> 'int4',
2287 proargtypes
=> 'time time', prosrc
=> 'time_cmp' },
2288 { oid
=> '1138', descr
=> 'larger of two',
2289 proname
=> 'date_larger', prorettype
=> 'date', proargtypes
=> 'date date',
2290 prosrc
=> 'date_larger' },
2291 { oid
=> '1139', descr
=> 'smaller of two',
2292 proname
=> 'date_smaller', prorettype
=> 'date', proargtypes
=> 'date date',
2293 prosrc
=> 'date_smaller' },
2295 proname
=> 'date_mi', prorettype
=> 'int4', proargtypes
=> 'date date',
2296 prosrc
=> 'date_mi' },
2298 proname
=> 'date_pli', prorettype
=> 'date', proargtypes
=> 'date int4',
2299 prosrc
=> 'date_pli' },
2301 proname
=> 'date_mii', prorettype
=> 'date', proargtypes
=> 'date int4',
2302 prosrc
=> 'date_mii' },
2303 { oid
=> '1143', descr
=> 'I/O',
2304 proname
=> 'time_in', provolatile
=> 's', prorettype
=> 'time',
2305 proargtypes
=> 'cstring oid int4', prosrc
=> 'time_in' },
2306 { oid
=> '1144', descr
=> 'I/O',
2307 proname
=> 'time_out', prorettype
=> 'cstring', proargtypes
=> 'time',
2308 prosrc
=> 'time_out' },
2309 { oid
=> '2909', descr
=> 'I/O typmod',
2310 proname
=> 'timetypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
2311 prosrc
=> 'timetypmodin' },
2312 { oid
=> '2910', descr
=> 'I/O typmod',
2313 proname
=> 'timetypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
2314 prosrc
=> 'timetypmodout' },
2316 proname
=> 'time_eq', proleakproof
=> 't', prorettype
=> 'bool',
2317 proargtypes
=> 'time time', prosrc
=> 'time_eq' },
2320 proname
=> 'circle_add_pt', prorettype
=> 'circle',
2321 proargtypes
=> 'circle point', prosrc
=> 'circle_add_pt' },
2323 proname
=> 'circle_sub_pt', prorettype
=> 'circle',
2324 proargtypes
=> 'circle point', prosrc
=> 'circle_sub_pt' },
2326 proname
=> 'circle_mul_pt', prorettype
=> 'circle',
2327 proargtypes
=> 'circle point', prosrc
=> 'circle_mul_pt' },
2329 proname
=> 'circle_div_pt', prorettype
=> 'circle',
2330 proargtypes
=> 'circle point', prosrc
=> 'circle_div_pt' },
2332 { oid
=> '1150', descr
=> 'I/O',
2333 proname
=> 'timestamptz_in', provolatile
=> 's', prorettype
=> 'timestamptz',
2334 proargtypes
=> 'cstring oid int4', prosrc
=> 'timestamptz_in' },
2335 { oid
=> '1151', descr
=> 'I/O',
2336 proname
=> 'timestamptz_out', provolatile
=> 's', prorettype
=> 'cstring',
2337 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_out' },
2338 { oid
=> '2907', descr
=> 'I/O typmod',
2339 proname
=> 'timestamptztypmodin', prorettype
=> 'int4',
2340 proargtypes
=> '_cstring', prosrc
=> 'timestamptztypmodin' },
2341 { oid
=> '2908', descr
=> 'I/O typmod',
2342 proname
=> 'timestamptztypmodout', prorettype
=> 'cstring',
2343 proargtypes
=> 'int4', prosrc
=> 'timestamptztypmodout' },
2345 proname
=> 'timestamptz_eq', proleakproof
=> 't', prorettype
=> 'bool',
2346 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_eq' },
2348 proname
=> 'timestamptz_ne', proleakproof
=> 't', prorettype
=> 'bool',
2349 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_ne' },
2351 proname
=> 'timestamptz_lt', proleakproof
=> 't', prorettype
=> 'bool',
2352 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_lt' },
2354 proname
=> 'timestamptz_le', proleakproof
=> 't', prorettype
=> 'bool',
2355 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_le' },
2357 proname
=> 'timestamptz_ge', proleakproof
=> 't', prorettype
=> 'bool',
2358 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_ge' },
2360 proname
=> 'timestamptz_gt', proleakproof
=> 't', prorettype
=> 'bool',
2361 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_gt' },
2362 { oid
=> '1158', descr
=> 'convert UNIX epoch to timestamptz',
2363 proname
=> 'to_timestamp', prorettype
=> 'timestamptz',
2364 proargtypes
=> 'float8', prosrc
=> 'float8_timestamptz' },
2365 { oid
=> '1159', descr
=> 'adjust timestamp to new time zone',
2366 proname
=> 'timezone', prorettype
=> 'timestamp',
2367 proargtypes
=> 'text timestamptz', prosrc
=> 'timestamptz_zone' },
2368 { oid
=> '6334', descr
=> 'adjust timestamp to local time zone',
2369 proname
=> 'timezone', provolatile
=> 's', prorettype
=> 'timestamp',
2370 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_at_local' },
2372 { oid
=> '1160', descr
=> 'I/O',
2373 proname
=> 'interval_in', provolatile
=> 's', prorettype
=> 'interval',
2374 proargtypes
=> 'cstring oid int4', prosrc
=> 'interval_in' },
2375 { oid
=> '1161', descr
=> 'I/O',
2376 proname
=> 'interval_out', provolatile
=> 's', prorettype
=> 'cstring',
2377 proargtypes
=> 'interval', prosrc
=> 'interval_out' },
2378 { oid
=> '2903', descr
=> 'I/O typmod',
2379 proname
=> 'intervaltypmodin', prorettype
=> 'int4',
2380 proargtypes
=> '_cstring', prosrc
=> 'intervaltypmodin' },
2381 { oid
=> '2904', descr
=> 'I/O typmod',
2382 proname
=> 'intervaltypmodout', prorettype
=> 'cstring',
2383 proargtypes
=> 'int4', prosrc
=> 'intervaltypmodout' },
2385 proname
=> 'interval_eq', proleakproof
=> 't', prorettype
=> 'bool',
2386 proargtypes
=> 'interval interval', prosrc
=> 'interval_eq' },
2388 proname
=> 'interval_ne', proleakproof
=> 't', prorettype
=> 'bool',
2389 proargtypes
=> 'interval interval', prosrc
=> 'interval_ne' },
2391 proname
=> 'interval_lt', proleakproof
=> 't', prorettype
=> 'bool',
2392 proargtypes
=> 'interval interval', prosrc
=> 'interval_lt' },
2394 proname
=> 'interval_le', proleakproof
=> 't', prorettype
=> 'bool',
2395 proargtypes
=> 'interval interval', prosrc
=> 'interval_le' },
2397 proname
=> 'interval_ge', proleakproof
=> 't', prorettype
=> 'bool',
2398 proargtypes
=> 'interval interval', prosrc
=> 'interval_ge' },
2400 proname
=> 'interval_gt', proleakproof
=> 't', prorettype
=> 'bool',
2401 proargtypes
=> 'interval interval', prosrc
=> 'interval_gt' },
2403 proname
=> 'interval_um', prorettype
=> 'interval', proargtypes
=> 'interval',
2404 prosrc
=> 'interval_um' },
2406 proname
=> 'interval_pl', prorettype
=> 'interval',
2407 proargtypes
=> 'interval interval', prosrc
=> 'interval_pl' },
2409 proname
=> 'interval_mi', prorettype
=> 'interval',
2410 proargtypes
=> 'interval interval', prosrc
=> 'interval_mi' },
2411 { oid
=> '1171', descr
=> 'extract field from timestamp with time zone',
2412 proname
=> 'date_part', provolatile
=> 's', prorettype
=> 'float8',
2413 proargtypes
=> 'text timestamptz', prosrc
=> 'timestamptz_part' },
2414 { oid
=> '6203', descr
=> 'extract field from timestamp with time zone',
2415 proname
=> 'extract', provolatile
=> 's', prorettype
=> 'numeric',
2416 proargtypes
=> 'text timestamptz', prosrc
=> 'extract_timestamptz' },
2417 { oid
=> '1172', descr
=> 'extract field from interval',
2418 proname
=> 'date_part', prorettype
=> 'float8',
2419 proargtypes
=> 'text interval', prosrc
=> 'interval_part' },
2420 { oid
=> '6204', descr
=> 'extract field from interval',
2421 proname
=> 'extract', prorettype
=> 'numeric', proargtypes
=> 'text interval',
2422 prosrc
=> 'extract_interval' },
2423 { oid
=> '1174', descr
=> 'convert date to timestamp with time zone',
2424 proname
=> 'timestamptz', provolatile
=> 's', prorettype
=> 'timestamptz',
2425 proargtypes
=> 'date', prosrc
=> 'date_timestamptz' },
2427 descr
=> 'promote groups of 24 hours to numbers of days and promote groups of 30 days to numbers of months',
2428 proname
=> 'justify_interval', prorettype
=> 'interval',
2429 proargtypes
=> 'interval', prosrc
=> 'interval_justify_interval' },
2430 { oid
=> '1175', descr
=> 'promote groups of 24 hours to numbers of days',
2431 proname
=> 'justify_hours', prorettype
=> 'interval',
2432 proargtypes
=> 'interval', prosrc
=> 'interval_justify_hours' },
2433 { oid
=> '1295', descr
=> 'promote groups of 30 days to numbers of months',
2434 proname
=> 'justify_days', prorettype
=> 'interval',
2435 proargtypes
=> 'interval', prosrc
=> 'interval_justify_days' },
2436 { oid
=> '1176', descr
=> 'convert date and time to timestamp with time zone',
2437 proname
=> 'timestamptz', prolang
=> 'sql', provolatile
=> 's',
2438 prorettype
=> 'timestamptz', proargtypes
=> 'date time',
2439 prosrc
=> 'see system_functions.sql' },
2440 { oid
=> '1178', descr
=> 'convert timestamp with time zone to date',
2441 proname
=> 'date', provolatile
=> 's', prorettype
=> 'date',
2442 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_date' },
2444 descr
=> 'age of a transaction ID, in transactions before current transaction',
2445 proname
=> 'age', provolatile
=> 's', proparallel
=> 'r',
2446 prorettype
=> 'int4', proargtypes
=> 'xid', prosrc
=> 'xid_age' },
2448 descr
=> 'age of a multi-transaction ID, in multi-transactions before current multi-transaction',
2449 proname
=> 'mxid_age', provolatile
=> 's', prorettype
=> 'int4',
2450 proargtypes
=> 'xid', prosrc
=> 'mxid_age' },
2453 proname
=> 'timestamptz_mi', prorettype
=> 'interval',
2454 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_mi' },
2456 proname
=> 'timestamptz_pl_interval', provolatile
=> 's',
2457 prorettype
=> 'timestamptz', proargtypes
=> 'timestamptz interval',
2458 prosrc
=> 'timestamptz_pl_interval' },
2459 { oid
=> '6221', descr
=> 'add interval to timestamp with time zone',
2460 proname
=> 'date_add', provolatile
=> 's', prorettype
=> 'timestamptz',
2461 proargtypes
=> 'timestamptz interval', prosrc
=> 'timestamptz_pl_interval' },
2463 descr
=> 'add interval to timestamp with time zone in specified time zone',
2464 proname
=> 'date_add', prorettype
=> 'timestamptz',
2465 proargtypes
=> 'timestamptz interval text',
2466 prosrc
=> 'timestamptz_pl_interval_at_zone' },
2468 proname
=> 'timestamptz_mi_interval', provolatile
=> 's',
2469 prorettype
=> 'timestamptz', proargtypes
=> 'timestamptz interval',
2470 prosrc
=> 'timestamptz_mi_interval' },
2471 { oid
=> '6223', descr
=> 'subtract interval from timestamp with time zone',
2472 proname
=> 'date_subtract', provolatile
=> 's', prorettype
=> 'timestamptz',
2473 proargtypes
=> 'timestamptz interval', prosrc
=> 'timestamptz_mi_interval' },
2475 descr
=> 'subtract interval from timestamp with time zone in specified time zone',
2476 proname
=> 'date_subtract', prorettype
=> 'timestamptz',
2477 proargtypes
=> 'timestamptz interval text',
2478 prosrc
=> 'timestamptz_mi_interval_at_zone' },
2479 { oid
=> '1195', descr
=> 'smaller of two',
2480 proname
=> 'timestamptz_smaller', prorettype
=> 'timestamptz',
2481 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_smaller' },
2482 { oid
=> '1196', descr
=> 'larger of two',
2483 proname
=> 'timestamptz_larger', prorettype
=> 'timestamptz',
2484 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_larger' },
2485 { oid
=> '1197', descr
=> 'smaller of two',
2486 proname
=> 'interval_smaller', prorettype
=> 'interval',
2487 proargtypes
=> 'interval interval', prosrc
=> 'interval_smaller' },
2488 { oid
=> '1198', descr
=> 'larger of two',
2489 proname
=> 'interval_larger', prorettype
=> 'interval',
2490 proargtypes
=> 'interval interval', prosrc
=> 'interval_larger' },
2491 { oid
=> '1199', descr
=> 'date difference preserving months and years',
2492 proname
=> 'age', prorettype
=> 'interval',
2493 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamptz_age' },
2497 { oid
=> '3918', descr
=> 'planner support for interval length coercion',
2498 proname
=> 'interval_support', prorettype
=> 'internal',
2499 proargtypes
=> 'internal', prosrc
=> 'interval_support' },
2500 { oid
=> '1200', descr
=> 'adjust interval precision',
2501 proname
=> 'interval', prosupport
=> 'interval_support',
2502 prorettype
=> 'interval', proargtypes
=> 'interval int4',
2503 prosrc
=> 'interval_scale' },
2505 { oid
=> '1215', descr
=> 'get description for object id and catalog name',
2506 proname
=> 'obj_description', prolang
=> 'sql', procost
=> '100',
2507 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'oid name',
2508 prosrc
=> 'see system_functions.sql' },
2509 { oid
=> '1216', descr
=> 'get description for table column',
2510 proname
=> 'col_description', prolang
=> 'sql', procost
=> '100',
2511 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'oid int4',
2512 prosrc
=> 'see system_functions.sql' },
2514 descr
=> 'get description for object id and shared catalog name',
2515 proname
=> 'shobj_description', prolang
=> 'sql', procost
=> '100',
2516 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'oid name',
2517 prosrc
=> 'see system_functions.sql' },
2520 descr
=> 'truncate timestamp with time zone to specified units',
2521 proname
=> 'date_trunc', provolatile
=> 's', prorettype
=> 'timestamptz',
2522 proargtypes
=> 'text timestamptz', prosrc
=> 'timestamptz_trunc' },
2524 descr
=> 'truncate timestamp with time zone to specified units in specified time zone',
2525 proname
=> 'date_trunc', prorettype
=> 'timestamptz',
2526 proargtypes
=> 'text timestamptz text', prosrc
=> 'timestamptz_trunc_zone' },
2527 { oid
=> '1218', descr
=> 'truncate interval to specified units',
2528 proname
=> 'date_trunc', prorettype
=> 'interval',
2529 proargtypes
=> 'text interval', prosrc
=> 'interval_trunc' },
2531 { oid
=> '1219', descr
=> 'increment',
2532 proname
=> 'int8inc', prorettype
=> 'int8', proargtypes
=> 'int8',
2533 prosrc
=> 'int8inc' },
2534 { oid
=> '3546', descr
=> 'decrement',
2535 proname
=> 'int8dec', prorettype
=> 'int8', proargtypes
=> 'int8',
2536 prosrc
=> 'int8dec' },
2537 { oid
=> '2804', descr
=> 'increment, ignores second argument',
2538 proname
=> 'int8inc_any', prorettype
=> 'int8', proargtypes
=> 'int8 any',
2539 prosrc
=> 'int8inc_any' },
2540 { oid
=> '3547', descr
=> 'decrement, ignores second argument',
2541 proname
=> 'int8dec_any', prorettype
=> 'int8', proargtypes
=> 'int8 any',
2542 prosrc
=> 'int8dec_any' },
2544 proname
=> 'int8abs', prorettype
=> 'int8', proargtypes
=> 'int8',
2545 prosrc
=> 'int8abs' },
2547 { oid
=> '1236', descr
=> 'larger of two',
2548 proname
=> 'int8larger', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
2549 prosrc
=> 'int8larger' },
2550 { oid
=> '1237', descr
=> 'smaller of two',
2551 proname
=> 'int8smaller', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
2552 prosrc
=> 'int8smaller' },
2555 proname
=> 'texticregexeq', prosupport
=> 'texticregexeq_support',
2556 prorettype
=> 'bool', proargtypes
=> 'text text', prosrc
=> 'texticregexeq' },
2557 { oid
=> '1024', descr
=> 'planner support for texticregexeq',
2558 proname
=> 'texticregexeq_support', prorettype
=> 'internal',
2559 proargtypes
=> 'internal', prosrc
=> 'texticregexeq_support' },
2561 proname
=> 'texticregexne', prorettype
=> 'bool', proargtypes
=> 'text text',
2562 prosrc
=> 'texticregexne' },
2564 proname
=> 'nameicregexeq', prosupport
=> 'texticregexeq_support',
2565 prorettype
=> 'bool', proargtypes
=> 'name text', prosrc
=> 'nameicregexeq' },
2567 proname
=> 'nameicregexne', prorettype
=> 'bool', proargtypes
=> 'name text',
2568 prosrc
=> 'nameicregexne' },
2571 proname
=> 'int4abs', prorettype
=> 'int4', proargtypes
=> 'int4',
2572 prosrc
=> 'int4abs' },
2574 proname
=> 'int2abs', prorettype
=> 'int2', proargtypes
=> 'int2',
2575 prosrc
=> 'int2abs' },
2577 { oid
=> '1271', descr
=> 'intervals overlap?',
2578 proname
=> 'overlaps', proisstrict
=> 'f', prorettype
=> 'bool',
2579 proargtypes
=> 'timetz timetz timetz timetz', prosrc
=> 'overlaps_timetz' },
2581 proname
=> 'datetime_pl', prorettype
=> 'timestamp',
2582 proargtypes
=> 'date time', prosrc
=> 'datetime_timestamp' },
2583 { oid
=> '1273', descr
=> 'extract field from time with time zone',
2584 proname
=> 'date_part', prorettype
=> 'float8', proargtypes
=> 'text timetz',
2585 prosrc
=> 'timetz_part' },
2586 { oid
=> '6201', descr
=> 'extract field from time with time zone',
2587 proname
=> 'extract', prorettype
=> 'numeric', proargtypes
=> 'text timetz',
2588 prosrc
=> 'extract_timetz' },
2590 proname
=> 'int84pl', prorettype
=> 'int8', proargtypes
=> 'int8 int4',
2591 prosrc
=> 'int84pl' },
2593 proname
=> 'int84mi', prorettype
=> 'int8', proargtypes
=> 'int8 int4',
2594 prosrc
=> 'int84mi' },
2596 proname
=> 'int84mul', prorettype
=> 'int8', proargtypes
=> 'int8 int4',
2597 prosrc
=> 'int84mul' },
2599 proname
=> 'int84div', prorettype
=> 'int8', proargtypes
=> 'int8 int4',
2600 prosrc
=> 'int84div' },
2602 proname
=> 'int48pl', prorettype
=> 'int8', proargtypes
=> 'int4 int8',
2603 prosrc
=> 'int48pl' },
2605 proname
=> 'int48mi', prorettype
=> 'int8', proargtypes
=> 'int4 int8',
2606 prosrc
=> 'int48mi' },
2608 proname
=> 'int48mul', prorettype
=> 'int8', proargtypes
=> 'int4 int8',
2609 prosrc
=> 'int48mul' },
2611 proname
=> 'int48div', prorettype
=> 'int8', proargtypes
=> 'int4 int8',
2612 prosrc
=> 'int48div' },
2615 proname
=> 'int82pl', prorettype
=> 'int8', proargtypes
=> 'int8 int2',
2616 prosrc
=> 'int82pl' },
2618 proname
=> 'int82mi', prorettype
=> 'int8', proargtypes
=> 'int8 int2',
2619 prosrc
=> 'int82mi' },
2621 proname
=> 'int82mul', prorettype
=> 'int8', proargtypes
=> 'int8 int2',
2622 prosrc
=> 'int82mul' },
2624 proname
=> 'int82div', prorettype
=> 'int8', proargtypes
=> 'int8 int2',
2625 prosrc
=> 'int82div' },
2627 proname
=> 'int28pl', prorettype
=> 'int8', proargtypes
=> 'int2 int8',
2628 prosrc
=> 'int28pl' },
2630 proname
=> 'int28mi', prorettype
=> 'int8', proargtypes
=> 'int2 int8',
2631 prosrc
=> 'int28mi' },
2633 proname
=> 'int28mul', prorettype
=> 'int8', proargtypes
=> 'int2 int8',
2634 prosrc
=> 'int28mul' },
2636 proname
=> 'int28div', prorettype
=> 'int8', proargtypes
=> 'int2 int8',
2637 prosrc
=> 'int28div' },
2639 { oid
=> '1287', descr
=> 'convert int8 to oid',
2640 proname
=> 'oid', prorettype
=> 'oid', proargtypes
=> 'int8',
2641 prosrc
=> 'i8tooid' },
2642 { oid
=> '1288', descr
=> 'convert oid to int8',
2643 proname
=> 'int8', proleakproof
=> 't', prorettype
=> 'int8',
2644 proargtypes
=> 'oid', prosrc
=> 'oidtoi8' },
2647 descr
=> 'trigger to suppress updates when new and old records match',
2648 proname
=> 'suppress_redundant_updates_trigger', provolatile
=> 'v',
2649 prorettype
=> 'trigger', proargtypes
=> '',
2650 prosrc
=> 'suppress_redundant_updates_trigger' },
2653 proname
=> 'tideq', proleakproof
=> 't', prorettype
=> 'bool',
2654 proargtypes
=> 'tid tid', prosrc
=> 'tideq' },
2655 { oid
=> '1294', descr
=> 'latest tid of a tuple',
2656 proname
=> 'currtid2', provolatile
=> 'v', proparallel
=> 'u',
2657 prorettype
=> 'tid', proargtypes
=> 'text tid',
2658 prosrc
=> 'currtid_byrelname' },
2660 proname
=> 'tidne', proleakproof
=> 't', prorettype
=> 'bool',
2661 proargtypes
=> 'tid tid', prosrc
=> 'tidne' },
2663 proname
=> 'tidgt', proleakproof
=> 't', prorettype
=> 'bool',
2664 proargtypes
=> 'tid tid', prosrc
=> 'tidgt' },
2666 proname
=> 'tidlt', proleakproof
=> 't', prorettype
=> 'bool',
2667 proargtypes
=> 'tid tid', prosrc
=> 'tidlt' },
2669 proname
=> 'tidge', proleakproof
=> 't', prorettype
=> 'bool',
2670 proargtypes
=> 'tid tid', prosrc
=> 'tidge' },
2672 proname
=> 'tidle', proleakproof
=> 't', prorettype
=> 'bool',
2673 proargtypes
=> 'tid tid', prosrc
=> 'tidle' },
2674 { oid
=> '2794', descr
=> 'less-equal-greater',
2675 proname
=> 'bttidcmp', proleakproof
=> 't', prorettype
=> 'int4',
2676 proargtypes
=> 'tid tid', prosrc
=> 'bttidcmp' },
2677 { oid
=> '2795', descr
=> 'larger of two',
2678 proname
=> 'tidlarger', prorettype
=> 'tid', proargtypes
=> 'tid tid',
2679 prosrc
=> 'tidlarger' },
2680 { oid
=> '2796', descr
=> 'smaller of two',
2681 proname
=> 'tidsmaller', prorettype
=> 'tid', proargtypes
=> 'tid tid',
2682 prosrc
=> 'tidsmaller' },
2683 { oid
=> '2233', descr
=> 'hash',
2684 proname
=> 'hashtid', prorettype
=> 'int4', proargtypes
=> 'tid',
2685 prosrc
=> 'hashtid' },
2686 { oid
=> '2234', descr
=> 'hash',
2687 proname
=> 'hashtidextended', prorettype
=> 'int8', proargtypes
=> 'tid int8',
2688 prosrc
=> 'hashtidextended' },
2691 proname
=> 'timedate_pl', prolang
=> 'sql', prorettype
=> 'timestamp',
2692 proargtypes
=> 'time date', prosrc
=> 'see system_functions.sql' },
2694 proname
=> 'datetimetz_pl', prorettype
=> 'timestamptz',
2695 proargtypes
=> 'date timetz', prosrc
=> 'datetimetz_timestamptz' },
2697 proname
=> 'timetzdate_pl', prolang
=> 'sql', prorettype
=> 'timestamptz',
2698 proargtypes
=> 'timetz date', prosrc
=> 'see system_functions.sql' },
2699 { oid
=> '1299', descr
=> 'current transaction time',
2700 proname
=> 'now', provolatile
=> 's', prorettype
=> 'timestamptz',
2701 proargtypes
=> '', prosrc
=> 'now' },
2702 { oid
=> '2647', descr
=> 'current transaction time',
2703 proname
=> 'transaction_timestamp', provolatile
=> 's',
2704 prorettype
=> 'timestamptz', proargtypes
=> '', prosrc
=> 'now' },
2705 { oid
=> '2648', descr
=> 'current statement time',
2706 proname
=> 'statement_timestamp', provolatile
=> 's',
2707 prorettype
=> 'timestamptz', proargtypes
=> '',
2708 prosrc
=> 'statement_timestamp' },
2709 { oid
=> '2649', descr
=> 'current clock time',
2710 proname
=> 'clock_timestamp', provolatile
=> 'v', prorettype
=> 'timestamptz',
2711 proargtypes
=> '', prosrc
=> 'clock_timestamp' },
2716 descr
=> 'restriction selectivity for position-comparison operators',
2717 proname
=> 'positionsel', provolatile
=> 's', prorettype
=> 'float8',
2718 proargtypes
=> 'internal oid internal int4', prosrc
=> 'positionsel' },
2720 descr
=> 'join selectivity for position-comparison operators',
2721 proname
=> 'positionjoinsel', provolatile
=> 's', prorettype
=> 'float8',
2722 proargtypes
=> 'internal oid internal int2 internal',
2723 prosrc
=> 'positionjoinsel' },
2725 descr
=> 'restriction selectivity for containment comparison operators',
2726 proname
=> 'contsel', provolatile
=> 's', prorettype
=> 'float8',
2727 proargtypes
=> 'internal oid internal int4', prosrc
=> 'contsel' },
2729 descr
=> 'join selectivity for containment comparison operators',
2730 proname
=> 'contjoinsel', provolatile
=> 's', prorettype
=> 'float8',
2731 proargtypes
=> 'internal oid internal int2 internal',
2732 prosrc
=> 'contjoinsel' },
2734 { oid
=> '1304', descr
=> 'intervals overlap?',
2735 proname
=> 'overlaps', proisstrict
=> 'f', prorettype
=> 'bool',
2736 proargtypes
=> 'timestamptz timestamptz timestamptz timestamptz',
2737 prosrc
=> 'overlaps_timestamp' },
2738 { oid
=> '1305', descr
=> 'intervals overlap?',
2739 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
2740 provolatile
=> 's', prorettype
=> 'bool',
2741 proargtypes
=> 'timestamptz interval timestamptz interval',
2742 prosrc
=> 'see system_functions.sql' },
2743 { oid
=> '1306', descr
=> 'intervals overlap?',
2744 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
2745 provolatile
=> 's', prorettype
=> 'bool',
2746 proargtypes
=> 'timestamptz timestamptz timestamptz interval',
2747 prosrc
=> 'see system_functions.sql' },
2748 { oid
=> '1307', descr
=> 'intervals overlap?',
2749 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
2750 provolatile
=> 's', prorettype
=> 'bool',
2751 proargtypes
=> 'timestamptz interval timestamptz timestamptz',
2752 prosrc
=> 'see system_functions.sql' },
2754 { oid
=> '1308', descr
=> 'intervals overlap?',
2755 proname
=> 'overlaps', proisstrict
=> 'f', prorettype
=> 'bool',
2756 proargtypes
=> 'time time time time', prosrc
=> 'overlaps_time' },
2757 { oid
=> '1309', descr
=> 'intervals overlap?',
2758 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
2759 prorettype
=> 'bool', proargtypes
=> 'time interval time interval',
2760 prosrc
=> 'see system_functions.sql' },
2761 { oid
=> '1310', descr
=> 'intervals overlap?',
2762 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
2763 prorettype
=> 'bool', proargtypes
=> 'time time time interval',
2764 prosrc
=> 'see system_functions.sql' },
2765 { oid
=> '1311', descr
=> 'intervals overlap?',
2766 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
2767 prorettype
=> 'bool', proargtypes
=> 'time interval time time',
2768 prosrc
=> 'see system_functions.sql' },
2770 { oid
=> '1312', descr
=> 'I/O',
2771 proname
=> 'timestamp_in', provolatile
=> 's', prorettype
=> 'timestamp',
2772 proargtypes
=> 'cstring oid int4', prosrc
=> 'timestamp_in' },
2773 { oid
=> '1313', descr
=> 'I/O',
2774 proname
=> 'timestamp_out', provolatile
=> 's', prorettype
=> 'cstring',
2775 proargtypes
=> 'timestamp', prosrc
=> 'timestamp_out' },
2776 { oid
=> '2905', descr
=> 'I/O typmod',
2777 proname
=> 'timestamptypmodin', prorettype
=> 'int4',
2778 proargtypes
=> '_cstring', prosrc
=> 'timestamptypmodin' },
2779 { oid
=> '2906', descr
=> 'I/O typmod',
2780 proname
=> 'timestamptypmodout', prorettype
=> 'cstring',
2781 proargtypes
=> 'int4', prosrc
=> 'timestamptypmodout' },
2782 { oid
=> '1314', descr
=> 'less-equal-greater',
2783 proname
=> 'timestamptz_cmp', proleakproof
=> 't', prorettype
=> 'int4',
2784 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'timestamp_cmp' },
2785 { oid
=> '1315', descr
=> 'less-equal-greater',
2786 proname
=> 'interval_cmp', proleakproof
=> 't', prorettype
=> 'int4',
2787 proargtypes
=> 'interval interval', prosrc
=> 'interval_cmp' },
2788 { oid
=> '1316', descr
=> 'convert timestamp to time',
2789 proname
=> 'time', prorettype
=> 'time', proargtypes
=> 'timestamp',
2790 prosrc
=> 'timestamp_time' },
2792 { oid
=> '1317', descr
=> 'length',
2793 proname
=> 'length', prorettype
=> 'int4', proargtypes
=> 'text',
2794 prosrc
=> 'textlen' },
2795 { oid
=> '1318', descr
=> 'character length',
2796 proname
=> 'length', prorettype
=> 'int4', proargtypes
=> 'bpchar',
2797 prosrc
=> 'bpcharlen' },
2800 proname
=> 'xideqint4', proleakproof
=> 't', prorettype
=> 'bool',
2801 proargtypes
=> 'xid int4', prosrc
=> 'xideq' },
2803 proname
=> 'xidneqint4', proleakproof
=> 't', prorettype
=> 'bool',
2804 proargtypes
=> 'xid int4', prosrc
=> 'xidneq' },
2807 proname
=> 'interval_div', prorettype
=> 'interval',
2808 proargtypes
=> 'interval float8', prosrc
=> 'interval_div' },
2810 { oid
=> '1339', descr
=> 'base 10 logarithm',
2811 proname
=> 'dlog10', prorettype
=> 'float8', proargtypes
=> 'float8',
2812 prosrc
=> 'dlog10' },
2813 { oid
=> '1340', descr
=> 'base 10 logarithm',
2814 proname
=> 'log', prorettype
=> 'float8', proargtypes
=> 'float8',
2815 prosrc
=> 'dlog10' },
2816 { oid
=> '1194', descr
=> 'base 10 logarithm',
2817 proname
=> 'log10', prorettype
=> 'float8', proargtypes
=> 'float8',
2818 prosrc
=> 'dlog10' },
2819 { oid
=> '1341', descr
=> 'natural logarithm',
2820 proname
=> 'ln', prorettype
=> 'float8', proargtypes
=> 'float8',
2821 prosrc
=> 'dlog1' },
2822 { oid
=> '1342', descr
=> 'round to nearest integer',
2823 proname
=> 'round', prorettype
=> 'float8', proargtypes
=> 'float8',
2824 prosrc
=> 'dround' },
2825 { oid
=> '1343', descr
=> 'truncate to integer',
2826 proname
=> 'trunc', prorettype
=> 'float8', proargtypes
=> 'float8',
2827 prosrc
=> 'dtrunc' },
2828 { oid
=> '1344', descr
=> 'square root',
2829 proname
=> 'sqrt', prorettype
=> 'float8', proargtypes
=> 'float8',
2830 prosrc
=> 'dsqrt' },
2831 { oid
=> '1345', descr
=> 'cube root',
2832 proname
=> 'cbrt', prorettype
=> 'float8', proargtypes
=> 'float8',
2833 prosrc
=> 'dcbrt' },
2834 { oid
=> '1346', descr
=> 'exponentiation',
2835 proname
=> 'pow', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
2837 { oid
=> '1368', descr
=> 'exponentiation',
2838 proname
=> 'power', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
2840 { oid
=> '1347', descr
=> 'natural exponential (e^x)',
2841 proname
=> 'exp', prorettype
=> 'float8', proargtypes
=> 'float8',
2844 # This form of obj_description is now deprecated, since it will fail if
2845 # OIDs are not unique across system catalogs. Use the other form instead.
2846 { oid
=> '1348', descr
=> 'deprecated, use two-argument form instead',
2847 proname
=> 'obj_description', prolang
=> 'sql', procost
=> '100',
2848 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'oid',
2849 prosrc
=> 'see system_functions.sql' },
2851 { oid
=> '1349', descr
=> 'print type names of oidvector field',
2852 proname
=> 'oidvectortypes', provolatile
=> 's', prorettype
=> 'text',
2853 proargtypes
=> 'oidvector', prosrc
=> 'oidvectortypes' },
2855 { oid
=> '1350', descr
=> 'I/O',
2856 proname
=> 'timetz_in', provolatile
=> 's', prorettype
=> 'timetz',
2857 proargtypes
=> 'cstring oid int4', prosrc
=> 'timetz_in' },
2858 { oid
=> '1351', descr
=> 'I/O',
2859 proname
=> 'timetz_out', prorettype
=> 'cstring', proargtypes
=> 'timetz',
2860 prosrc
=> 'timetz_out' },
2861 { oid
=> '2911', descr
=> 'I/O typmod',
2862 proname
=> 'timetztypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
2863 prosrc
=> 'timetztypmodin' },
2864 { oid
=> '2912', descr
=> 'I/O typmod',
2865 proname
=> 'timetztypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
2866 prosrc
=> 'timetztypmodout' },
2868 proname
=> 'timetz_eq', proleakproof
=> 't', prorettype
=> 'bool',
2869 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_eq' },
2871 proname
=> 'timetz_ne', proleakproof
=> 't', prorettype
=> 'bool',
2872 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_ne' },
2874 proname
=> 'timetz_lt', proleakproof
=> 't', prorettype
=> 'bool',
2875 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_lt' },
2877 proname
=> 'timetz_le', proleakproof
=> 't', prorettype
=> 'bool',
2878 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_le' },
2880 proname
=> 'timetz_ge', proleakproof
=> 't', prorettype
=> 'bool',
2881 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_ge' },
2883 proname
=> 'timetz_gt', proleakproof
=> 't', prorettype
=> 'bool',
2884 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_gt' },
2885 { oid
=> '1358', descr
=> 'less-equal-greater',
2886 proname
=> 'timetz_cmp', proleakproof
=> 't', prorettype
=> 'int4',
2887 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_cmp' },
2889 descr
=> 'convert date and time with time zone to timestamp with time zone',
2890 proname
=> 'timestamptz', prorettype
=> 'timestamptz',
2891 proargtypes
=> 'date timetz', prosrc
=> 'datetimetz_timestamptz' },
2893 { oid
=> '1367', descr
=> 'character length',
2894 proname
=> 'character_length', prorettype
=> 'int4', proargtypes
=> 'bpchar',
2895 prosrc
=> 'bpcharlen' },
2896 { oid
=> '1369', descr
=> 'character length',
2897 proname
=> 'character_length', prorettype
=> 'int4', proargtypes
=> 'text',
2898 prosrc
=> 'textlen' },
2900 { oid
=> '1370', descr
=> 'convert time to interval',
2901 proname
=> 'interval', proleakproof
=> 't', prorettype
=> 'interval',
2902 proargtypes
=> 'time', prosrc
=> 'time_interval' },
2903 { oid
=> '1372', descr
=> 'character length',
2904 proname
=> 'char_length', prorettype
=> 'int4', proargtypes
=> 'bpchar',
2905 prosrc
=> 'bpcharlen' },
2906 { oid
=> '1374', descr
=> 'octet length',
2907 proname
=> 'octet_length', prorettype
=> 'int4', proargtypes
=> 'text',
2908 prosrc
=> 'textoctetlen' },
2909 { oid
=> '1375', descr
=> 'octet length',
2910 proname
=> 'octet_length', prorettype
=> 'int4', proargtypes
=> 'bpchar',
2911 prosrc
=> 'bpcharoctetlen' },
2913 { oid
=> '1377', descr
=> 'larger of two',
2914 proname
=> 'time_larger', prorettype
=> 'time', proargtypes
=> 'time time',
2915 prosrc
=> 'time_larger' },
2916 { oid
=> '1378', descr
=> 'smaller of two',
2917 proname
=> 'time_smaller', prorettype
=> 'time', proargtypes
=> 'time time',
2918 prosrc
=> 'time_smaller' },
2919 { oid
=> '1379', descr
=> 'larger of two',
2920 proname
=> 'timetz_larger', prorettype
=> 'timetz',
2921 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_larger' },
2922 { oid
=> '1380', descr
=> 'smaller of two',
2923 proname
=> 'timetz_smaller', prorettype
=> 'timetz',
2924 proargtypes
=> 'timetz timetz', prosrc
=> 'timetz_smaller' },
2926 { oid
=> '1381', descr
=> 'character length',
2927 proname
=> 'char_length', prorettype
=> 'int4', proargtypes
=> 'text',
2928 prosrc
=> 'textlen' },
2930 { oid
=> '1384', descr
=> 'extract field from date',
2931 proname
=> 'date_part', prolang
=> 'sql', prorettype
=> 'float8',
2932 proargtypes
=> 'text date', prosrc
=> 'see system_functions.sql' },
2933 { oid
=> '6199', descr
=> 'extract field from date',
2934 proname
=> 'extract', prorettype
=> 'numeric', proargtypes
=> 'text date',
2935 prosrc
=> 'extract_date' },
2936 { oid
=> '1385', descr
=> 'extract field from time',
2937 proname
=> 'date_part', prorettype
=> 'float8', proargtypes
=> 'text time',
2938 prosrc
=> 'time_part' },
2939 { oid
=> '6200', descr
=> 'extract field from time',
2940 proname
=> 'extract', prorettype
=> 'numeric', proargtypes
=> 'text time',
2941 prosrc
=> 'extract_time' },
2943 descr
=> 'date difference from today preserving months and years',
2944 proname
=> 'age', prolang
=> 'sql', provolatile
=> 's',
2945 prorettype
=> 'interval', proargtypes
=> 'timestamptz',
2946 prosrc
=> 'see system_functions.sql' },
2949 descr
=> 'convert timestamp with time zone to time with time zone',
2950 proname
=> 'timetz', provolatile
=> 's', prorettype
=> 'timetz',
2951 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_timetz' },
2953 { oid
=> '1373', descr
=> 'finite date?',
2954 proname
=> 'isfinite', prorettype
=> 'bool', proargtypes
=> 'date',
2955 prosrc
=> 'date_finite' },
2956 { oid
=> '1389', descr
=> 'finite timestamp?',
2957 proname
=> 'isfinite', prorettype
=> 'bool', proargtypes
=> 'timestamptz',
2958 prosrc
=> 'timestamp_finite' },
2959 { oid
=> '1390', descr
=> 'finite interval?',
2960 proname
=> 'isfinite', prorettype
=> 'bool', proargtypes
=> 'interval',
2961 prosrc
=> 'interval_finite' },
2963 { oid
=> '1376', descr
=> 'factorial',
2964 proname
=> 'factorial', prorettype
=> 'numeric', proargtypes
=> 'int8',
2965 prosrc
=> 'numeric_fac' },
2966 { oid
=> '1394', descr
=> 'absolute value',
2967 proname
=> 'abs', prorettype
=> 'float4', proargtypes
=> 'float4',
2968 prosrc
=> 'float4abs' },
2969 { oid
=> '1395', descr
=> 'absolute value',
2970 proname
=> 'abs', prorettype
=> 'float8', proargtypes
=> 'float8',
2971 prosrc
=> 'float8abs' },
2972 { oid
=> '1396', descr
=> 'absolute value',
2973 proname
=> 'abs', prorettype
=> 'int8', proargtypes
=> 'int8',
2974 prosrc
=> 'int8abs' },
2975 { oid
=> '1397', descr
=> 'absolute value',
2976 proname
=> 'abs', prorettype
=> 'int4', proargtypes
=> 'int4',
2977 prosrc
=> 'int4abs' },
2978 { oid
=> '1398', descr
=> 'absolute value',
2979 proname
=> 'abs', prorettype
=> 'int2', proargtypes
=> 'int2',
2980 prosrc
=> 'int2abs' },
2984 { oid
=> '1400', descr
=> 'convert varchar to name',
2985 proname
=> 'name', proleakproof
=> 't', prorettype
=> 'name',
2986 proargtypes
=> 'varchar', prosrc
=> 'text_name' },
2987 { oid
=> '1401', descr
=> 'convert name to varchar',
2988 proname
=> 'varchar', proleakproof
=> 't', prorettype
=> 'varchar',
2989 proargtypes
=> 'name', prosrc
=> 'name_text' },
2991 { oid
=> '1402', descr
=> 'current schema name',
2992 proname
=> 'current_schema', provolatile
=> 's', proparallel
=> 'u',
2993 prorettype
=> 'name', proargtypes
=> '', prosrc
=> 'current_schema' },
2994 { oid
=> '1403', descr
=> 'current schema search list',
2995 proname
=> 'current_schemas', provolatile
=> 's', proparallel
=> 'u',
2996 prorettype
=> '_name', proargtypes
=> 'bool', prosrc
=> 'current_schemas' },
2998 { oid
=> '1404', descr
=> 'substitute portion of string',
2999 proname
=> 'overlay', prorettype
=> 'text',
3000 proargtypes
=> 'text text int4 int4', prosrc
=> 'textoverlay' },
3001 { oid
=> '1405', descr
=> 'substitute portion of string',
3002 proname
=> 'overlay', prorettype
=> 'text', proargtypes
=> 'text text int4',
3003 prosrc
=> 'textoverlay_no_len' },
3005 { oid
=> '1406', descr
=> 'vertically aligned',
3006 proname
=> 'isvertical', prorettype
=> 'bool', proargtypes
=> 'point point',
3007 prosrc
=> 'point_vert' },
3008 { oid
=> '1407', descr
=> 'horizontally aligned',
3009 proname
=> 'ishorizontal', prorettype
=> 'bool', proargtypes
=> 'point point',
3010 prosrc
=> 'point_horiz' },
3011 { oid
=> '1408', descr
=> 'parallel',
3012 proname
=> 'isparallel', prorettype
=> 'bool', proargtypes
=> 'lseg lseg',
3013 prosrc
=> 'lseg_parallel' },
3014 { oid
=> '1409', descr
=> 'perpendicular',
3015 proname
=> 'isperp', prorettype
=> 'bool', proargtypes
=> 'lseg lseg',
3016 prosrc
=> 'lseg_perp' },
3017 { oid
=> '1410', descr
=> 'vertical',
3018 proname
=> 'isvertical', prorettype
=> 'bool', proargtypes
=> 'lseg',
3019 prosrc
=> 'lseg_vertical' },
3020 { oid
=> '1411', descr
=> 'horizontal',
3021 proname
=> 'ishorizontal', prorettype
=> 'bool', proargtypes
=> 'lseg',
3022 prosrc
=> 'lseg_horizontal' },
3023 { oid
=> '1412', descr
=> 'parallel',
3024 proname
=> 'isparallel', prorettype
=> 'bool', proargtypes
=> 'line line',
3025 prosrc
=> 'line_parallel' },
3026 { oid
=> '1413', descr
=> 'perpendicular',
3027 proname
=> 'isperp', prorettype
=> 'bool', proargtypes
=> 'line line',
3028 prosrc
=> 'line_perp' },
3029 { oid
=> '1414', descr
=> 'vertical',
3030 proname
=> 'isvertical', prorettype
=> 'bool', proargtypes
=> 'line',
3031 prosrc
=> 'line_vertical' },
3032 { oid
=> '1415', descr
=> 'horizontal',
3033 proname
=> 'ishorizontal', prorettype
=> 'bool', proargtypes
=> 'line',
3034 prosrc
=> 'line_horizontal' },
3035 { oid
=> '1416', descr
=> 'center of',
3036 proname
=> 'point', prorettype
=> 'point', proargtypes
=> 'circle',
3037 prosrc
=> 'circle_center' },
3039 { oid
=> '1419', descr
=> 'convert interval to time',
3040 proname
=> 'time', prorettype
=> 'time', proargtypes
=> 'interval',
3041 prosrc
=> 'interval_time' },
3043 { oid
=> '1421', descr
=> 'convert points to box',
3044 proname
=> 'box', prorettype
=> 'box', proargtypes
=> 'point point',
3045 prosrc
=> 'points_box' },
3047 proname
=> 'box_add', prorettype
=> 'box', proargtypes
=> 'box point',
3048 prosrc
=> 'box_add' },
3050 proname
=> 'box_sub', prorettype
=> 'box', proargtypes
=> 'box point',
3051 prosrc
=> 'box_sub' },
3053 proname
=> 'box_mul', prorettype
=> 'box', proargtypes
=> 'box point',
3054 prosrc
=> 'box_mul' },
3056 proname
=> 'box_div', prorettype
=> 'box', proargtypes
=> 'box point',
3057 prosrc
=> 'box_div' },
3059 proname
=> 'path_contain_pt', prolang
=> 'sql', prorettype
=> 'bool',
3060 proargtypes
=> 'path point', prosrc
=> 'see system_functions.sql' },
3062 proname
=> 'poly_contain_pt', prorettype
=> 'bool',
3063 proargtypes
=> 'polygon point', prosrc
=> 'poly_contain_pt' },
3065 proname
=> 'pt_contained_poly', prorettype
=> 'bool',
3066 proargtypes
=> 'point polygon', prosrc
=> 'pt_contained_poly' },
3068 { oid
=> '1430', descr
=> 'path closed?',
3069 proname
=> 'isclosed', prorettype
=> 'bool', proargtypes
=> 'path',
3070 prosrc
=> 'path_isclosed' },
3071 { oid
=> '1431', descr
=> 'path open?',
3072 proname
=> 'isopen', prorettype
=> 'bool', proargtypes
=> 'path',
3073 prosrc
=> 'path_isopen' },
3075 proname
=> 'path_npoints', prorettype
=> 'int4', proargtypes
=> 'path',
3076 prosrc
=> 'path_npoints' },
3078 # pclose and popen might better be named close and open, but that crashes initdb.
3080 { oid
=> '1433', descr
=> 'close path',
3081 proname
=> 'pclose', prorettype
=> 'path', proargtypes
=> 'path',
3082 prosrc
=> 'path_close' },
3083 { oid
=> '1434', descr
=> 'open path',
3084 proname
=> 'popen', prorettype
=> 'path', proargtypes
=> 'path',
3085 prosrc
=> 'path_open' },
3088 proname
=> 'path_add', prorettype
=> 'path', proargtypes
=> 'path path',
3089 prosrc
=> 'path_add' },
3091 proname
=> 'path_add_pt', prorettype
=> 'path', proargtypes
=> 'path point',
3092 prosrc
=> 'path_add_pt' },
3094 proname
=> 'path_sub_pt', prorettype
=> 'path', proargtypes
=> 'path point',
3095 prosrc
=> 'path_sub_pt' },
3097 proname
=> 'path_mul_pt', prorettype
=> 'path', proargtypes
=> 'path point',
3098 prosrc
=> 'path_mul_pt' },
3100 proname
=> 'path_div_pt', prorettype
=> 'path', proargtypes
=> 'path point',
3101 prosrc
=> 'path_div_pt' },
3103 { oid
=> '1440', descr
=> 'convert x, y to point',
3104 proname
=> 'point', prorettype
=> 'point', proargtypes
=> 'float8 float8',
3105 prosrc
=> 'construct_point' },
3107 proname
=> 'point_add', prorettype
=> 'point', proargtypes
=> 'point point',
3108 prosrc
=> 'point_add' },
3110 proname
=> 'point_sub', prorettype
=> 'point', proargtypes
=> 'point point',
3111 prosrc
=> 'point_sub' },
3113 proname
=> 'point_mul', prorettype
=> 'point', proargtypes
=> 'point point',
3114 prosrc
=> 'point_mul' },
3116 proname
=> 'point_div', prorettype
=> 'point', proargtypes
=> 'point point',
3117 prosrc
=> 'point_div' },
3120 proname
=> 'poly_npoints', prorettype
=> 'int4', proargtypes
=> 'polygon',
3121 prosrc
=> 'poly_npoints' },
3122 { oid
=> '1446', descr
=> 'convert polygon to bounding box',
3123 proname
=> 'box', prorettype
=> 'box', proargtypes
=> 'polygon',
3124 prosrc
=> 'poly_box' },
3125 { oid
=> '1447', descr
=> 'convert polygon to path',
3126 proname
=> 'path', prorettype
=> 'path', proargtypes
=> 'polygon',
3127 prosrc
=> 'poly_path' },
3128 { oid
=> '1448', descr
=> 'convert box to polygon',
3129 proname
=> 'polygon', prorettype
=> 'polygon', proargtypes
=> 'box',
3130 prosrc
=> 'box_poly' },
3131 { oid
=> '1449', descr
=> 'convert path to polygon',
3132 proname
=> 'polygon', prorettype
=> 'polygon', proargtypes
=> 'path',
3133 prosrc
=> 'path_poly' },
3135 { oid
=> '1450', descr
=> 'I/O',
3136 proname
=> 'circle_in', prorettype
=> 'circle', proargtypes
=> 'cstring',
3137 prosrc
=> 'circle_in' },
3138 { oid
=> '1451', descr
=> 'I/O',
3139 proname
=> 'circle_out', prorettype
=> 'cstring', proargtypes
=> 'circle',
3140 prosrc
=> 'circle_out' },
3142 proname
=> 'circle_same', prorettype
=> 'bool',
3143 proargtypes
=> 'circle circle', prosrc
=> 'circle_same' },
3145 proname
=> 'circle_contain', prorettype
=> 'bool',
3146 proargtypes
=> 'circle circle', prosrc
=> 'circle_contain' },
3148 proname
=> 'circle_left', prorettype
=> 'bool',
3149 proargtypes
=> 'circle circle', prosrc
=> 'circle_left' },
3151 proname
=> 'circle_overleft', prorettype
=> 'bool',
3152 proargtypes
=> 'circle circle', prosrc
=> 'circle_overleft' },
3154 proname
=> 'circle_overright', prorettype
=> 'bool',
3155 proargtypes
=> 'circle circle', prosrc
=> 'circle_overright' },
3157 proname
=> 'circle_right', prorettype
=> 'bool',
3158 proargtypes
=> 'circle circle', prosrc
=> 'circle_right' },
3160 proname
=> 'circle_contained', prorettype
=> 'bool',
3161 proargtypes
=> 'circle circle', prosrc
=> 'circle_contained' },
3163 proname
=> 'circle_overlap', prorettype
=> 'bool',
3164 proargtypes
=> 'circle circle', prosrc
=> 'circle_overlap' },
3166 proname
=> 'circle_below', prorettype
=> 'bool',
3167 proargtypes
=> 'circle circle', prosrc
=> 'circle_below' },
3169 proname
=> 'circle_above', prorettype
=> 'bool',
3170 proargtypes
=> 'circle circle', prosrc
=> 'circle_above' },
3172 proname
=> 'circle_eq', proleakproof
=> 't', prorettype
=> 'bool',
3173 proargtypes
=> 'circle circle', prosrc
=> 'circle_eq' },
3175 proname
=> 'circle_ne', proleakproof
=> 't', prorettype
=> 'bool',
3176 proargtypes
=> 'circle circle', prosrc
=> 'circle_ne' },
3178 proname
=> 'circle_lt', proleakproof
=> 't', prorettype
=> 'bool',
3179 proargtypes
=> 'circle circle', prosrc
=> 'circle_lt' },
3181 proname
=> 'circle_gt', proleakproof
=> 't', prorettype
=> 'bool',
3182 proargtypes
=> 'circle circle', prosrc
=> 'circle_gt' },
3184 proname
=> 'circle_le', proleakproof
=> 't', prorettype
=> 'bool',
3185 proargtypes
=> 'circle circle', prosrc
=> 'circle_le' },
3187 proname
=> 'circle_ge', proleakproof
=> 't', prorettype
=> 'bool',
3188 proargtypes
=> 'circle circle', prosrc
=> 'circle_ge' },
3189 { oid
=> '1468', descr
=> 'area of circle',
3190 proname
=> 'area', prorettype
=> 'float8', proargtypes
=> 'circle',
3191 prosrc
=> 'circle_area' },
3192 { oid
=> '1469', descr
=> 'diameter of circle',
3193 proname
=> 'diameter', prorettype
=> 'float8', proargtypes
=> 'circle',
3194 prosrc
=> 'circle_diameter' },
3195 { oid
=> '1470', descr
=> 'radius of circle',
3196 proname
=> 'radius', prorettype
=> 'float8', proargtypes
=> 'circle',
3197 prosrc
=> 'circle_radius' },
3199 proname
=> 'circle_distance', prorettype
=> 'float8',
3200 proargtypes
=> 'circle circle', prosrc
=> 'circle_distance' },
3202 proname
=> 'circle_center', prorettype
=> 'point', proargtypes
=> 'circle',
3203 prosrc
=> 'circle_center' },
3204 { oid
=> '1473', descr
=> 'convert point and radius to circle',
3205 proname
=> 'circle', prorettype
=> 'circle', proargtypes
=> 'point float8',
3206 prosrc
=> 'cr_circle' },
3207 { oid
=> '1474', descr
=> 'convert polygon to circle',
3208 proname
=> 'circle', prorettype
=> 'circle', proargtypes
=> 'polygon',
3209 prosrc
=> 'poly_circle' },
3210 { oid
=> '1475', descr
=> 'convert vertex count and circle to polygon',
3211 proname
=> 'polygon', prorettype
=> 'polygon', proargtypes
=> 'int4 circle',
3212 prosrc
=> 'circle_poly' },
3214 proname
=> 'dist_pc', prorettype
=> 'float8', proargtypes
=> 'point circle',
3215 prosrc
=> 'dist_pc' },
3217 proname
=> 'circle_contain_pt', prorettype
=> 'bool',
3218 proargtypes
=> 'circle point', prosrc
=> 'circle_contain_pt' },
3220 proname
=> 'pt_contained_circle', prorettype
=> 'bool',
3221 proargtypes
=> 'point circle', prosrc
=> 'pt_contained_circle' },
3222 { oid
=> '4091', descr
=> 'convert point to empty box',
3223 proname
=> 'box', prorettype
=> 'box', proargtypes
=> 'point',
3224 prosrc
=> 'point_box' },
3225 { oid
=> '1479', descr
=> 'convert box to circle',
3226 proname
=> 'circle', prorettype
=> 'circle', proargtypes
=> 'box',
3227 prosrc
=> 'box_circle' },
3228 { oid
=> '1480', descr
=> 'convert circle to box',
3229 proname
=> 'box', prorettype
=> 'box', proargtypes
=> 'circle',
3230 prosrc
=> 'circle_box' },
3233 proname
=> 'lseg_ne', proleakproof
=> 't', prorettype
=> 'bool',
3234 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_ne' },
3236 proname
=> 'lseg_lt', proleakproof
=> 't', prorettype
=> 'bool',
3237 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_lt' },
3239 proname
=> 'lseg_le', proleakproof
=> 't', prorettype
=> 'bool',
3240 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_le' },
3242 proname
=> 'lseg_gt', proleakproof
=> 't', prorettype
=> 'bool',
3243 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_gt' },
3245 proname
=> 'lseg_ge', proleakproof
=> 't', prorettype
=> 'bool',
3246 proargtypes
=> 'lseg lseg', prosrc
=> 'lseg_ge' },
3248 proname
=> 'lseg_length', prorettype
=> 'float8', proargtypes
=> 'lseg',
3249 prosrc
=> 'lseg_length' },
3251 proname
=> 'close_ls', prorettype
=> 'point', proargtypes
=> 'line lseg',
3252 prosrc
=> 'close_ls' },
3254 proname
=> 'close_lseg', prorettype
=> 'point', proargtypes
=> 'lseg lseg',
3255 prosrc
=> 'close_lseg' },
3257 { oid
=> '1490', descr
=> 'I/O',
3258 proname
=> 'line_in', prorettype
=> 'line', proargtypes
=> 'cstring',
3259 prosrc
=> 'line_in' },
3260 { oid
=> '1491', descr
=> 'I/O',
3261 proname
=> 'line_out', prorettype
=> 'cstring', proargtypes
=> 'line',
3262 prosrc
=> 'line_out' },
3264 proname
=> 'line_eq', prorettype
=> 'bool', proargtypes
=> 'line line',
3265 prosrc
=> 'line_eq' },
3266 { oid
=> '1493', descr
=> 'construct line from points',
3267 proname
=> 'line', prorettype
=> 'line', proargtypes
=> 'point point',
3268 prosrc
=> 'line_construct_pp' },
3270 proname
=> 'line_interpt', prorettype
=> 'point', proargtypes
=> 'line line',
3271 prosrc
=> 'line_interpt' },
3273 proname
=> 'line_intersect', prorettype
=> 'bool', proargtypes
=> 'line line',
3274 prosrc
=> 'line_intersect' },
3276 proname
=> 'line_parallel', prorettype
=> 'bool', proargtypes
=> 'line line',
3277 prosrc
=> 'line_parallel' },
3279 proname
=> 'line_perp', prorettype
=> 'bool', proargtypes
=> 'line line',
3280 prosrc
=> 'line_perp' },
3282 proname
=> 'line_vertical', prorettype
=> 'bool', proargtypes
=> 'line',
3283 prosrc
=> 'line_vertical' },
3285 proname
=> 'line_horizontal', prorettype
=> 'bool', proargtypes
=> 'line',
3286 prosrc
=> 'line_horizontal' },
3290 { oid
=> '1530', descr
=> 'distance between endpoints',
3291 proname
=> 'length', prorettype
=> 'float8', proargtypes
=> 'lseg',
3292 prosrc
=> 'lseg_length' },
3293 { oid
=> '1531', descr
=> 'sum of path segments',
3294 proname
=> 'length', prorettype
=> 'float8', proargtypes
=> 'path',
3295 prosrc
=> 'path_length' },
3297 { oid
=> '1532', descr
=> 'center of',
3298 proname
=> 'point', prorettype
=> 'point', proargtypes
=> 'lseg',
3299 prosrc
=> 'lseg_center' },
3300 { oid
=> '1534', descr
=> 'center of',
3301 proname
=> 'point', prorettype
=> 'point', proargtypes
=> 'box',
3302 prosrc
=> 'box_center' },
3303 { oid
=> '1540', descr
=> 'center of',
3304 proname
=> 'point', prorettype
=> 'point', proargtypes
=> 'polygon',
3305 prosrc
=> 'poly_center' },
3306 { oid
=> '1541', descr
=> 'diagonal of',
3307 proname
=> 'lseg', prorettype
=> 'lseg', proargtypes
=> 'box',
3308 prosrc
=> 'box_diagonal' },
3309 { oid
=> '1542', descr
=> 'center of',
3310 proname
=> 'center', prorettype
=> 'point', proargtypes
=> 'box',
3311 prosrc
=> 'box_center' },
3312 { oid
=> '1543', descr
=> 'center of',
3313 proname
=> 'center', prorettype
=> 'point', proargtypes
=> 'circle',
3314 prosrc
=> 'circle_center' },
3315 { oid
=> '1544', descr
=> 'convert circle to 12-vertex polygon',
3316 proname
=> 'polygon', prolang
=> 'sql', prorettype
=> 'polygon',
3317 proargtypes
=> 'circle', prosrc
=> 'see system_functions.sql' },
3318 { oid
=> '1545', descr
=> 'number of points',
3319 proname
=> 'npoints', prorettype
=> 'int4', proargtypes
=> 'path',
3320 prosrc
=> 'path_npoints' },
3321 { oid
=> '1556', descr
=> 'number of points',
3322 proname
=> 'npoints', prorettype
=> 'int4', proargtypes
=> 'polygon',
3323 prosrc
=> 'poly_npoints' },
3325 { oid
=> '1564', descr
=> 'I/O',
3326 proname
=> 'bit_in', prorettype
=> 'bit', proargtypes
=> 'cstring oid int4',
3327 prosrc
=> 'bit_in' },
3328 { oid
=> '1565', descr
=> 'I/O',
3329 proname
=> 'bit_out', prorettype
=> 'cstring', proargtypes
=> 'bit',
3330 prosrc
=> 'bit_out' },
3331 { oid
=> '2919', descr
=> 'I/O typmod',
3332 proname
=> 'bittypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
3333 prosrc
=> 'bittypmodin' },
3334 { oid
=> '2920', descr
=> 'I/O typmod',
3335 proname
=> 'bittypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
3336 prosrc
=> 'bittypmodout' },
3338 { oid
=> '1569', descr
=> 'matches LIKE expression',
3339 proname
=> 'like', prosupport
=> 'textlike_support', prorettype
=> 'bool',
3340 proargtypes
=> 'text text', prosrc
=> 'textlike' },
3341 { oid
=> '1570', descr
=> 'does not match LIKE expression',
3342 proname
=> 'notlike', prorettype
=> 'bool', proargtypes
=> 'text text',
3343 prosrc
=> 'textnlike' },
3344 { oid
=> '1571', descr
=> 'matches LIKE expression',
3345 proname
=> 'like', prosupport
=> 'textlike_support', prorettype
=> 'bool',
3346 proargtypes
=> 'name text', prosrc
=> 'namelike' },
3347 { oid
=> '1572', descr
=> 'does not match LIKE expression',
3348 proname
=> 'notlike', prorettype
=> 'bool', proargtypes
=> 'name text',
3349 prosrc
=> 'namenlike' },
3351 # SEQUENCE functions
3352 { oid
=> '1574', descr
=> 'sequence next value',
3353 proname
=> 'nextval', provolatile
=> 'v', proparallel
=> 'u',
3354 prorettype
=> 'int8', proargtypes
=> 'regclass', prosrc
=> 'nextval_oid' },
3355 { oid
=> '1575', descr
=> 'sequence current value',
3356 proname
=> 'currval', provolatile
=> 'v', proparallel
=> 'u',
3357 prorettype
=> 'int8', proargtypes
=> 'regclass', prosrc
=> 'currval_oid' },
3358 { oid
=> '1576', descr
=> 'set sequence value',
3359 proname
=> 'setval', provolatile
=> 'v', proparallel
=> 'u',
3360 prorettype
=> 'int8', proargtypes
=> 'regclass int8',
3361 prosrc
=> 'setval_oid' },
3362 { oid
=> '1765', descr
=> 'set sequence value and is_called status',
3363 proname
=> 'setval', provolatile
=> 'v', proparallel
=> 'u',
3364 prorettype
=> 'int8', proargtypes
=> 'regclass int8 bool',
3365 prosrc
=> 'setval3_oid' },
3367 descr
=> 'sequence parameters, for use by information schema',
3368 proname
=> 'pg_sequence_parameters', provolatile
=> 's',
3369 prorettype
=> 'record', proargtypes
=> 'oid',
3370 proallargtypes
=> '{oid,int8,int8,int8,int8,bool,int8,oid}',
3371 proargmodes
=> '{i,o,o,o,o,o,o,o}',
3372 proargnames
=> '{sequence_oid,start_value,minimum_value,maximum_value,increment,cycle_option,cache_size,data_type}',
3373 prosrc
=> 'pg_sequence_parameters' },
3374 { oid
=> '4032', descr
=> 'sequence last value',
3375 proname
=> 'pg_sequence_last_value', provolatile
=> 'v', proparallel
=> 'u',
3376 prorettype
=> 'int8', proargtypes
=> 'regclass',
3377 prosrc
=> 'pg_sequence_last_value' },
3378 { oid
=> '9876', descr
=> 'return sequence tuple, for use by pg_dump',
3379 proname
=> 'pg_get_sequence_data', provolatile
=> 'v', proparallel
=> 'u',
3380 prorettype
=> 'record', proargtypes
=> 'regclass',
3381 proallargtypes
=> '{regclass,int8,bool}', proargmodes
=> '{i,o,o}',
3382 proargnames
=> '{sequence_oid,last_value,is_called}',
3383 prosrc
=> 'pg_get_sequence_data' },
3385 { oid
=> '275', descr
=> 'return the next oid for a system table',
3386 proname
=> 'pg_nextoid', provolatile
=> 'v', proparallel
=> 'u',
3387 prorettype
=> 'oid', proargtypes
=> 'regclass name regclass',
3388 prosrc
=> 'pg_nextoid' },
3389 { oid
=> '6241', descr
=> 'stop making pinned objects during initdb',
3390 proname
=> 'pg_stop_making_pinned_objects', provolatile
=> 'v',
3391 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> '',
3392 prosrc
=> 'pg_stop_making_pinned_objects' },
3394 { oid
=> '1579', descr
=> 'I/O',
3395 proname
=> 'varbit_in', prorettype
=> 'varbit',
3396 proargtypes
=> 'cstring oid int4', prosrc
=> 'varbit_in' },
3397 { oid
=> '1580', descr
=> 'I/O',
3398 proname
=> 'varbit_out', prorettype
=> 'cstring', proargtypes
=> 'varbit',
3399 prosrc
=> 'varbit_out' },
3400 { oid
=> '2902', descr
=> 'I/O typmod',
3401 proname
=> 'varbittypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
3402 prosrc
=> 'varbittypmodin' },
3403 { oid
=> '2921', descr
=> 'I/O typmod',
3404 proname
=> 'varbittypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
3405 prosrc
=> 'varbittypmodout' },
3408 proname
=> 'biteq', proleakproof
=> 't', prorettype
=> 'bool',
3409 proargtypes
=> 'bit bit', prosrc
=> 'biteq' },
3411 proname
=> 'bitne', proleakproof
=> 't', prorettype
=> 'bool',
3412 proargtypes
=> 'bit bit', prosrc
=> 'bitne' },
3414 proname
=> 'bitge', proleakproof
=> 't', prorettype
=> 'bool',
3415 proargtypes
=> 'bit bit', prosrc
=> 'bitge' },
3417 proname
=> 'bitgt', proleakproof
=> 't', prorettype
=> 'bool',
3418 proargtypes
=> 'bit bit', prosrc
=> 'bitgt' },
3420 proname
=> 'bitle', proleakproof
=> 't', prorettype
=> 'bool',
3421 proargtypes
=> 'bit bit', prosrc
=> 'bitle' },
3423 proname
=> 'bitlt', proleakproof
=> 't', prorettype
=> 'bool',
3424 proargtypes
=> 'bit bit', prosrc
=> 'bitlt' },
3425 { oid
=> '1596', descr
=> 'less-equal-greater',
3426 proname
=> 'bitcmp', proleakproof
=> 't', prorettype
=> 'int4',
3427 proargtypes
=> 'bit bit', prosrc
=> 'bitcmp' },
3429 { oid
=> '1598', descr
=> 'random value',
3430 proname
=> 'random', provolatile
=> 'v', proparallel
=> 'r',
3431 prorettype
=> 'float8', proargtypes
=> '', prosrc
=> 'drandom' },
3432 { oid
=> '6212', descr
=> 'random value from normal distribution',
3433 proname
=> 'random_normal', provolatile
=> 'v', proparallel
=> 'r',
3434 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
3435 prosrc
=> 'drandom_normal' },
3436 { oid
=> '6339', descr
=> 'random integer in range',
3437 proname
=> 'random', provolatile
=> 'v', proparallel
=> 'r',
3438 prorettype
=> 'int4', proargtypes
=> 'int4 int4', proargnames
=> '{min,max}',
3439 prosrc
=> 'int4random' },
3440 { oid
=> '6340', descr
=> 'random bigint in range',
3441 proname
=> 'random', provolatile
=> 'v', proparallel
=> 'r',
3442 prorettype
=> 'int8', proargtypes
=> 'int8 int8', proargnames
=> '{min,max}',
3443 prosrc
=> 'int8random' },
3444 { oid
=> '6341', descr
=> 'random numeric in range',
3445 proname
=> 'random', provolatile
=> 'v', proparallel
=> 'r',
3446 prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
3447 proargnames
=> '{min,max}', prosrc
=> 'numeric_random' },
3448 { oid
=> '1599', descr
=> 'set random seed',
3449 proname
=> 'setseed', provolatile
=> 'v', proparallel
=> 'r',
3450 prorettype
=> 'void', proargtypes
=> 'float8', prosrc
=> 'setseed' },
3454 { oid
=> '1600', descr
=> 'arcsine',
3455 proname
=> 'asin', prorettype
=> 'float8', proargtypes
=> 'float8',
3456 prosrc
=> 'dasin' },
3457 { oid
=> '1601', descr
=> 'arccosine',
3458 proname
=> 'acos', prorettype
=> 'float8', proargtypes
=> 'float8',
3459 prosrc
=> 'dacos' },
3460 { oid
=> '1602', descr
=> 'arctangent',
3461 proname
=> 'atan', prorettype
=> 'float8', proargtypes
=> 'float8',
3462 prosrc
=> 'datan' },
3463 { oid
=> '1603', descr
=> 'arctangent, two arguments',
3464 proname
=> 'atan2', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
3465 prosrc
=> 'datan2' },
3466 { oid
=> '1604', descr
=> 'sine',
3467 proname
=> 'sin', prorettype
=> 'float8', proargtypes
=> 'float8',
3469 { oid
=> '1605', descr
=> 'cosine',
3470 proname
=> 'cos', prorettype
=> 'float8', proargtypes
=> 'float8',
3472 { oid
=> '1606', descr
=> 'tangent',
3473 proname
=> 'tan', prorettype
=> 'float8', proargtypes
=> 'float8',
3475 { oid
=> '1607', descr
=> 'cotangent',
3476 proname
=> 'cot', prorettype
=> 'float8', proargtypes
=> 'float8',
3479 { oid
=> '2731', descr
=> 'arcsine, degrees',
3480 proname
=> 'asind', prorettype
=> 'float8', proargtypes
=> 'float8',
3481 prosrc
=> 'dasind' },
3482 { oid
=> '2732', descr
=> 'arccosine, degrees',
3483 proname
=> 'acosd', prorettype
=> 'float8', proargtypes
=> 'float8',
3484 prosrc
=> 'dacosd' },
3485 { oid
=> '2733', descr
=> 'arctangent, degrees',
3486 proname
=> 'atand', prorettype
=> 'float8', proargtypes
=> 'float8',
3487 prosrc
=> 'datand' },
3488 { oid
=> '2734', descr
=> 'arctangent, two arguments, degrees',
3489 proname
=> 'atan2d', prorettype
=> 'float8', proargtypes
=> 'float8 float8',
3490 prosrc
=> 'datan2d' },
3491 { oid
=> '2735', descr
=> 'sine, degrees',
3492 proname
=> 'sind', prorettype
=> 'float8', proargtypes
=> 'float8',
3493 prosrc
=> 'dsind' },
3494 { oid
=> '2736', descr
=> 'cosine, degrees',
3495 proname
=> 'cosd', prorettype
=> 'float8', proargtypes
=> 'float8',
3496 prosrc
=> 'dcosd' },
3497 { oid
=> '2737', descr
=> 'tangent, degrees',
3498 proname
=> 'tand', prorettype
=> 'float8', proargtypes
=> 'float8',
3499 prosrc
=> 'dtand' },
3500 { oid
=> '2738', descr
=> 'cotangent, degrees',
3501 proname
=> 'cotd', prorettype
=> 'float8', proargtypes
=> 'float8',
3502 prosrc
=> 'dcotd' },
3504 { oid
=> '1608', descr
=> 'radians to degrees',
3505 proname
=> 'degrees', prorettype
=> 'float8', proargtypes
=> 'float8',
3506 prosrc
=> 'degrees' },
3507 { oid
=> '1609', descr
=> 'degrees to radians',
3508 proname
=> 'radians', prorettype
=> 'float8', proargtypes
=> 'float8',
3509 prosrc
=> 'radians' },
3510 { oid
=> '1610', descr
=> 'PI',
3511 proname
=> 'pi', prorettype
=> 'float8', proargtypes
=> '', prosrc
=> 'dpi' },
3513 { oid
=> '2462', descr
=> 'hyperbolic sine',
3514 proname
=> 'sinh', prorettype
=> 'float8', proargtypes
=> 'float8',
3515 prosrc
=> 'dsinh' },
3516 { oid
=> '2463', descr
=> 'hyperbolic cosine',
3517 proname
=> 'cosh', prorettype
=> 'float8', proargtypes
=> 'float8',
3518 prosrc
=> 'dcosh' },
3519 { oid
=> '2464', descr
=> 'hyperbolic tangent',
3520 proname
=> 'tanh', prorettype
=> 'float8', proargtypes
=> 'float8',
3521 prosrc
=> 'dtanh' },
3522 { oid
=> '2465', descr
=> 'inverse hyperbolic sine',
3523 proname
=> 'asinh', prorettype
=> 'float8', proargtypes
=> 'float8',
3524 prosrc
=> 'dasinh' },
3525 { oid
=> '2466', descr
=> 'inverse hyperbolic cosine',
3526 proname
=> 'acosh', prorettype
=> 'float8', proargtypes
=> 'float8',
3527 prosrc
=> 'dacosh' },
3528 { oid
=> '2467', descr
=> 'inverse hyperbolic tangent',
3529 proname
=> 'atanh', prorettype
=> 'float8', proargtypes
=> 'float8',
3530 prosrc
=> 'datanh' },
3532 { oid
=> '6219', descr
=> 'error function',
3533 proname
=> 'erf', prorettype
=> 'float8', proargtypes
=> 'float8',
3535 { oid
=> '6220', descr
=> 'complementary error function',
3536 proname
=> 'erfc', prorettype
=> 'float8', proargtypes
=> 'float8',
3537 prosrc
=> 'derfc' },
3540 proname
=> 'interval_mul', prorettype
=> 'interval',
3541 proargtypes
=> 'interval float8', prosrc
=> 'interval_mul' },
3543 { oid
=> '1620', descr
=> 'convert first char to int4',
3544 proname
=> 'ascii', prorettype
=> 'int4', proargtypes
=> 'text',
3545 prosrc
=> 'ascii' },
3546 { oid
=> '1621', descr
=> 'convert int4 to char',
3547 proname
=> 'chr', prorettype
=> 'text', proargtypes
=> 'int4',
3549 { oid
=> '1622', descr
=> 'replicate string n times',
3550 proname
=> 'repeat', prorettype
=> 'text', proargtypes
=> 'text int4',
3551 prosrc
=> 'repeat' },
3553 { oid
=> '1623', descr
=> 'convert SQL regexp pattern to POSIX style',
3554 proname
=> 'similar_escape', proisstrict
=> 'f', prorettype
=> 'text',
3555 proargtypes
=> 'text text', prosrc
=> 'similar_escape' },
3556 { oid
=> '1986', descr
=> 'convert SQL regexp pattern to POSIX style',
3557 proname
=> 'similar_to_escape', prorettype
=> 'text',
3558 proargtypes
=> 'text text', prosrc
=> 'similar_to_escape_2' },
3559 { oid
=> '1987', descr
=> 'convert SQL regexp pattern to POSIX style',
3560 proname
=> 'similar_to_escape', prorettype
=> 'text', proargtypes
=> 'text',
3561 prosrc
=> 'similar_to_escape_1' },
3564 proname
=> 'mul_d_interval', prorettype
=> 'interval',
3565 proargtypes
=> 'float8 interval', prosrc
=> 'mul_d_interval' },
3568 proname
=> 'bpcharlike', prosupport
=> 'textlike_support',
3569 prorettype
=> 'bool', proargtypes
=> 'bpchar text', prosrc
=> 'textlike' },
3571 proname
=> 'bpcharnlike', prorettype
=> 'bool', proargtypes
=> 'bpchar text',
3572 prosrc
=> 'textnlike' },
3575 proname
=> 'texticlike', prosupport
=> 'texticlike_support',
3576 prorettype
=> 'bool', proargtypes
=> 'text text', prosrc
=> 'texticlike' },
3577 { oid
=> '1025', descr
=> 'planner support for texticlike',
3578 proname
=> 'texticlike_support', prorettype
=> 'internal',
3579 proargtypes
=> 'internal', prosrc
=> 'texticlike_support' },
3581 proname
=> 'texticnlike', prorettype
=> 'bool', proargtypes
=> 'text text',
3582 prosrc
=> 'texticnlike' },
3584 proname
=> 'nameiclike', prosupport
=> 'texticlike_support',
3585 prorettype
=> 'bool', proargtypes
=> 'name text', prosrc
=> 'nameiclike' },
3587 proname
=> 'nameicnlike', prorettype
=> 'bool', proargtypes
=> 'name text',
3588 prosrc
=> 'nameicnlike' },
3589 { oid
=> '1637', descr
=> 'convert LIKE pattern to use backslash escapes',
3590 proname
=> 'like_escape', prorettype
=> 'text', proargtypes
=> 'text text',
3591 prosrc
=> 'like_escape' },
3594 proname
=> 'bpcharicregexeq', prosupport
=> 'texticregexeq_support',
3595 prorettype
=> 'bool', proargtypes
=> 'bpchar text',
3596 prosrc
=> 'texticregexeq' },
3598 proname
=> 'bpcharicregexne', prorettype
=> 'bool',
3599 proargtypes
=> 'bpchar text', prosrc
=> 'texticregexne' },
3601 proname
=> 'bpcharregexeq', prosupport
=> 'textregexeq_support',
3602 prorettype
=> 'bool', proargtypes
=> 'bpchar text', prosrc
=> 'textregexeq' },
3604 proname
=> 'bpcharregexne', prorettype
=> 'bool',
3605 proargtypes
=> 'bpchar text', prosrc
=> 'textregexne' },
3607 proname
=> 'bpchariclike', prosupport
=> 'texticlike_support',
3608 prorettype
=> 'bool', proargtypes
=> 'bpchar text', prosrc
=> 'texticlike' },
3610 proname
=> 'bpcharicnlike', prorettype
=> 'bool',
3611 proargtypes
=> 'bpchar text', prosrc
=> 'texticnlike' },
3613 # Oracle Compatibility Related Functions - By Edmund Mergl <E.Mergl@bawue.de>
3614 { oid
=> '868', descr
=> 'position of substring',
3615 proname
=> 'strpos', prorettype
=> 'int4', proargtypes
=> 'text text',
3616 prosrc
=> 'textpos' },
3617 { oid
=> '870', descr
=> 'lowercase',
3618 proname
=> 'lower', prorettype
=> 'text', proargtypes
=> 'text',
3619 prosrc
=> 'lower' },
3620 { oid
=> '871', descr
=> 'uppercase',
3621 proname
=> 'upper', prorettype
=> 'text', proargtypes
=> 'text',
3622 prosrc
=> 'upper' },
3623 { oid
=> '872', descr
=> 'capitalize each word',
3624 proname
=> 'initcap', prorettype
=> 'text', proargtypes
=> 'text',
3625 prosrc
=> 'initcap' },
3626 { oid
=> '9569', descr
=> 'fold case',
3627 proname
=> 'casefold', prorettype
=> 'text', proargtypes
=> 'text',
3628 prosrc
=> 'casefold' },
3629 { oid
=> '873', descr
=> 'left-pad string to length',
3630 proname
=> 'lpad', prorettype
=> 'text', proargtypes
=> 'text int4 text',
3632 { oid
=> '874', descr
=> 'right-pad string to length',
3633 proname
=> 'rpad', prorettype
=> 'text', proargtypes
=> 'text int4 text',
3635 { oid
=> '875', descr
=> 'trim selected characters from left end of string',
3636 proname
=> 'ltrim', prorettype
=> 'text', proargtypes
=> 'text text',
3637 prosrc
=> 'ltrim' },
3638 { oid
=> '876', descr
=> 'trim selected characters from right end of string',
3639 proname
=> 'rtrim', prorettype
=> 'text', proargtypes
=> 'text text',
3640 prosrc
=> 'rtrim' },
3641 { oid
=> '877', descr
=> 'extract portion of string',
3642 proname
=> 'substr', prorettype
=> 'text', proargtypes
=> 'text int4 int4',
3643 prosrc
=> 'text_substr' },
3644 { oid
=> '878', descr
=> 'map a set of characters appearing in string',
3645 proname
=> 'translate', prorettype
=> 'text', proargtypes
=> 'text text text',
3646 prosrc
=> 'translate' },
3647 { oid
=> '879', descr
=> 'left-pad string to length',
3648 proname
=> 'lpad', prolang
=> 'sql', prorettype
=> 'text',
3649 proargtypes
=> 'text int4', prosrc
=> 'see system_functions.sql' },
3650 { oid
=> '880', descr
=> 'right-pad string to length',
3651 proname
=> 'rpad', prolang
=> 'sql', prorettype
=> 'text',
3652 proargtypes
=> 'text int4', prosrc
=> 'see system_functions.sql' },
3653 { oid
=> '881', descr
=> 'trim spaces from left end of string',
3654 proname
=> 'ltrim', prorettype
=> 'text', proargtypes
=> 'text',
3655 prosrc
=> 'ltrim1' },
3656 { oid
=> '882', descr
=> 'trim spaces from right end of string',
3657 proname
=> 'rtrim', prorettype
=> 'text', proargtypes
=> 'text',
3658 prosrc
=> 'rtrim1' },
3659 { oid
=> '883', descr
=> 'extract portion of string',
3660 proname
=> 'substr', prorettype
=> 'text', proargtypes
=> 'text int4',
3661 prosrc
=> 'text_substr_no_len' },
3662 { oid
=> '884', descr
=> 'trim selected characters from both ends of string',
3663 proname
=> 'btrim', prorettype
=> 'text', proargtypes
=> 'text text',
3664 prosrc
=> 'btrim' },
3665 { oid
=> '885', descr
=> 'trim spaces from both ends of string',
3666 proname
=> 'btrim', prorettype
=> 'text', proargtypes
=> 'text',
3667 prosrc
=> 'btrim1' },
3669 { oid
=> '936', descr
=> 'extract portion of string',
3670 proname
=> 'substring', prorettype
=> 'text', proargtypes
=> 'text int4 int4',
3671 prosrc
=> 'text_substr' },
3672 { oid
=> '937', descr
=> 'extract portion of string',
3673 proname
=> 'substring', prorettype
=> 'text', proargtypes
=> 'text int4',
3674 prosrc
=> 'text_substr_no_len' },
3676 descr
=> 'replace all occurrences in string of old_substr with new_substr',
3677 proname
=> 'replace', prorettype
=> 'text', proargtypes
=> 'text text text',
3678 prosrc
=> 'replace_text' },
3679 { oid
=> '2284', descr
=> 'replace text using regexp',
3680 proname
=> 'regexp_replace', prorettype
=> 'text',
3681 proargtypes
=> 'text text text',
3682 proargnames
=> '{string, pattern, replacement}',
3683 prosrc
=> 'textregexreplace_noopt' },
3684 { oid
=> '2285', descr
=> 'replace text using regexp',
3685 proname
=> 'regexp_replace', prorettype
=> 'text',
3686 proargtypes
=> 'text text text text',
3687 proargnames
=> '{string, pattern, replacement, flags}',
3688 prosrc
=> 'textregexreplace' },
3689 { oid
=> '6251', descr
=> 'replace text using regexp',
3690 proname
=> 'regexp_replace', prorettype
=> 'text',
3691 proargtypes
=> 'text text text int4 int4 text',
3692 proargnames
=> '{string, pattern, replacement, start, N, flags}',
3693 prosrc
=> 'textregexreplace_extended' },
3694 { oid
=> '6252', descr
=> 'replace text using regexp',
3695 proname
=> 'regexp_replace', prorettype
=> 'text',
3696 proargtypes
=> 'text text text int4 int4',
3697 proargnames
=> '{string, pattern, replacement, start, N}',
3698 prosrc
=> 'textregexreplace_extended_no_flags' },
3699 { oid
=> '6253', descr
=> 'replace text using regexp',
3700 proname
=> 'regexp_replace', prorettype
=> 'text',
3701 proargtypes
=> 'text text text int4',
3702 proargnames
=> '{string, pattern, replacement, start}',
3703 prosrc
=> 'textregexreplace_extended_no_n' },
3704 { oid
=> '3396', descr
=> 'find first match for regexp',
3705 proname
=> 'regexp_match', prorettype
=> '_text', proargtypes
=> 'text text',
3706 proargnames
=> '{string, pattern}', prosrc
=> 'regexp_match_no_flags' },
3707 { oid
=> '3397', descr
=> 'find first match for regexp',
3708 proname
=> 'regexp_match', prorettype
=> '_text',
3709 proargtypes
=> 'text text text', proargnames
=> '{string, pattern, flags}',
3710 prosrc
=> 'regexp_match' },
3711 { oid
=> '2763', descr
=> 'find match(es) for regexp',
3712 proname
=> 'regexp_matches', prorows
=> '1', proretset
=> 't',
3713 prorettype
=> '_text', proargtypes
=> 'text text',
3714 proargnames
=> '{string, pattern}', prosrc
=> 'regexp_matches_no_flags' },
3715 { oid
=> '2764', descr
=> 'find match(es) for regexp',
3716 proname
=> 'regexp_matches', prorows
=> '10', proretset
=> 't',
3717 prorettype
=> '_text', proargtypes
=> 'text text text',
3718 proargnames
=> '{string, pattern, flags}', prosrc
=> 'regexp_matches' },
3719 { oid
=> '6254', descr
=> 'count regexp matches',
3720 proname
=> 'regexp_count', prorettype
=> 'int4', proargtypes
=> 'text text',
3721 proargnames
=> '{string, pattern}', prosrc
=> 'regexp_count_no_start' },
3722 { oid
=> '6255', descr
=> 'count regexp matches',
3723 proname
=> 'regexp_count', prorettype
=> 'int4',
3724 proargtypes
=> 'text text int4', proargnames
=> '{string, pattern, start}',
3725 prosrc
=> 'regexp_count_no_flags' },
3726 { oid
=> '6256', descr
=> 'count regexp matches',
3727 proname
=> 'regexp_count', prorettype
=> 'int4',
3728 proargtypes
=> 'text text int4 text',
3729 proargnames
=> '{string, pattern, start, flags}', prosrc
=> 'regexp_count' },
3730 { oid
=> '6257', descr
=> 'position of regexp match',
3731 proname
=> 'regexp_instr', prorettype
=> 'int4', proargtypes
=> 'text text',
3732 proargnames
=> '{string, pattern}', prosrc
=> 'regexp_instr_no_start' },
3733 { oid
=> '6258', descr
=> 'position of regexp match',
3734 proname
=> 'regexp_instr', prorettype
=> 'int4',
3735 proargtypes
=> 'text text int4', proargnames
=> '{string, pattern, start}',
3736 prosrc
=> 'regexp_instr_no_n' },
3737 { oid
=> '6259', descr
=> 'position of regexp match',
3738 proname
=> 'regexp_instr', prorettype
=> 'int4',
3739 proargtypes
=> 'text text int4 int4',
3740 proargnames
=> '{string, pattern, start, N}',
3741 prosrc
=> 'regexp_instr_no_endoption' },
3742 { oid
=> '6260', descr
=> 'position of regexp match',
3743 proname
=> 'regexp_instr', prorettype
=> 'int4',
3744 proargtypes
=> 'text text int4 int4 int4',
3745 proargnames
=> '{string, pattern, start, N, endoption}',
3746 prosrc
=> 'regexp_instr_no_flags' },
3747 { oid
=> '6261', descr
=> 'position of regexp match',
3748 proname
=> 'regexp_instr', prorettype
=> 'int4',
3749 proargtypes
=> 'text text int4 int4 int4 text',
3750 proargnames
=> '{string, pattern, start, N, endoption, flags}',
3751 prosrc
=> 'regexp_instr_no_subexpr' },
3752 { oid
=> '6262', descr
=> 'position of regexp match',
3753 proname
=> 'regexp_instr', prorettype
=> 'int4',
3754 proargtypes
=> 'text text int4 int4 int4 text int4',
3755 proargnames
=> '{string, pattern, start, N, endoption, flags, subexpr}',
3756 prosrc
=> 'regexp_instr' },
3757 { oid
=> '6263', descr
=> 'test for regexp match',
3758 proname
=> 'regexp_like', prorettype
=> 'bool', proargtypes
=> 'text text',
3759 proargnames
=> '{string, pattern}', prosrc
=> 'regexp_like_no_flags' },
3760 { oid
=> '6264', descr
=> 'test for regexp match',
3761 proname
=> 'regexp_like', prorettype
=> 'bool',
3762 proargtypes
=> 'text text text', proargnames
=> '{string, pattern,flags}',
3763 prosrc
=> 'regexp_like' },
3764 { oid
=> '6265', descr
=> 'extract substring that matches regexp',
3765 proname
=> 'regexp_substr', prorettype
=> 'text', proargtypes
=> 'text text',
3766 proargnames
=> '{string, pattern}', prosrc
=> 'regexp_substr_no_start' },
3767 { oid
=> '6266', descr
=> 'extract substring that matches regexp',
3768 proname
=> 'regexp_substr', prorettype
=> 'text',
3769 proargtypes
=> 'text text int4', proargnames
=> '{string, pattern, start}',
3770 prosrc
=> 'regexp_substr_no_n' },
3771 { oid
=> '6267', descr
=> 'extract substring that matches regexp',
3772 proname
=> 'regexp_substr', prorettype
=> 'text',
3773 proargtypes
=> 'text text int4 int4',
3774 proargnames
=> '{string, pattern, start, N}',
3775 prosrc
=> 'regexp_substr_no_flags' },
3776 { oid
=> '6268', descr
=> 'extract substring that matches regexp',
3777 proname
=> 'regexp_substr', prorettype
=> 'text',
3778 proargtypes
=> 'text text int4 int4 text',
3779 proargnames
=> '{string, pattern, start, N, flags}',
3780 prosrc
=> 'regexp_substr_no_subexpr' },
3781 { oid
=> '6269', descr
=> 'extract substring that matches regexp',
3782 proname
=> 'regexp_substr', prorettype
=> 'text',
3783 proargtypes
=> 'text text int4 int4 text int4',
3784 proargnames
=> '{string, pattern, start, N, flags, subexpr}',
3785 prosrc
=> 'regexp_substr' },
3786 { oid
=> '2088', descr
=> 'split string by field_sep and return field_num',
3787 proname
=> 'split_part', prorettype
=> 'text',
3788 proargtypes
=> 'text text int4', prosrc
=> 'split_part' },
3789 { oid
=> '2765', descr
=> 'split string by pattern',
3790 proname
=> 'regexp_split_to_table', prorows
=> '1000', proretset
=> 't',
3791 prorettype
=> 'text', proargtypes
=> 'text text',
3792 proargnames
=> '{string, pattern}',
3793 prosrc
=> 'regexp_split_to_table_no_flags' },
3794 { oid
=> '2766', descr
=> 'split string by pattern',
3795 proname
=> 'regexp_split_to_table', prorows
=> '1000', proretset
=> 't',
3796 prorettype
=> 'text', proargtypes
=> 'text text text',
3797 proargnames
=> '{string, pattern, flags}',
3798 prosrc
=> 'regexp_split_to_table' },
3799 { oid
=> '2767', descr
=> 'split string by pattern',
3800 proname
=> 'regexp_split_to_array', prorettype
=> '_text',
3801 proargtypes
=> 'text text', proargnames
=> '{string, pattern}',
3802 prosrc
=> 'regexp_split_to_array_no_flags' },
3803 { oid
=> '2768', descr
=> 'split string by pattern',
3804 proname
=> 'regexp_split_to_array', prorettype
=> '_text',
3805 proargtypes
=> 'text text text', proargnames
=> '{string, pattern, flags}',
3806 prosrc
=> 'regexp_split_to_array' },
3807 { oid
=> '6330', descr
=> 'convert int4 number to binary',
3808 proname
=> 'to_bin', prorettype
=> 'text', proargtypes
=> 'int4',
3809 prosrc
=> 'to_bin32' },
3810 { oid
=> '6331', descr
=> 'convert int8 number to binary',
3811 proname
=> 'to_bin', prorettype
=> 'text', proargtypes
=> 'int8',
3812 prosrc
=> 'to_bin64' },
3813 { oid
=> '6332', descr
=> 'convert int4 number to oct',
3814 proname
=> 'to_oct', prorettype
=> 'text', proargtypes
=> 'int4',
3815 prosrc
=> 'to_oct32' },
3816 { oid
=> '6333', descr
=> 'convert int8 number to oct',
3817 proname
=> 'to_oct', prorettype
=> 'text', proargtypes
=> 'int8',
3818 prosrc
=> 'to_oct64' },
3819 { oid
=> '2089', descr
=> 'convert int4 number to hex',
3820 proname
=> 'to_hex', prorettype
=> 'text', proargtypes
=> 'int4',
3821 prosrc
=> 'to_hex32' },
3822 { oid
=> '2090', descr
=> 'convert int8 number to hex',
3823 proname
=> 'to_hex', prorettype
=> 'text', proargtypes
=> 'int8',
3824 prosrc
=> 'to_hex64' },
3826 # for character set encoding support
3828 # return database encoding name
3829 { oid
=> '1039', descr
=> 'encoding name of current database',
3830 proname
=> 'getdatabaseencoding', provolatile
=> 's', prorettype
=> 'name',
3831 proargtypes
=> '', prosrc
=> 'getdatabaseencoding' },
3833 # return client encoding name i.e. session encoding
3834 { oid
=> '810', descr
=> 'encoding name of current database',
3835 proname
=> 'pg_client_encoding', provolatile
=> 's', prorettype
=> 'name',
3836 proargtypes
=> '', prosrc
=> 'pg_client_encoding' },
3838 { oid
=> '1713', descr
=> 'length of string in specified encoding',
3839 proname
=> 'length', provolatile
=> 's', prorettype
=> 'int4',
3840 proargtypes
=> 'bytea name', prosrc
=> 'length_in_encoding' },
3843 descr
=> 'convert string with specified source encoding name',
3844 proname
=> 'convert_from', provolatile
=> 's', prorettype
=> 'text',
3845 proargtypes
=> 'bytea name', prosrc
=> 'pg_convert_from' },
3848 descr
=> 'convert string with specified destination encoding name',
3849 proname
=> 'convert_to', provolatile
=> 's', prorettype
=> 'bytea',
3850 proargtypes
=> 'text name', prosrc
=> 'pg_convert_to' },
3852 { oid
=> '1813', descr
=> 'convert string with specified encoding names',
3853 proname
=> 'convert', provolatile
=> 's', prorettype
=> 'bytea',
3854 proargtypes
=> 'bytea name name', prosrc
=> 'pg_convert' },
3856 { oid
=> '1264', descr
=> 'convert encoding name to encoding id',
3857 proname
=> 'pg_char_to_encoding', provolatile
=> 's', prorettype
=> 'int4',
3858 proargtypes
=> 'name', prosrc
=> 'PG_char_to_encoding' },
3860 { oid
=> '1597', descr
=> 'convert encoding id to encoding name',
3861 proname
=> 'pg_encoding_to_char', provolatile
=> 's', prorettype
=> 'name',
3862 proargtypes
=> 'int4', prosrc
=> 'PG_encoding_to_char' },
3865 descr
=> 'maximum octet length of a character in given encoding',
3866 proname
=> 'pg_encoding_max_length', prorettype
=> 'int4',
3867 proargtypes
=> 'int4', prosrc
=> 'pg_encoding_max_length_sql' },
3870 proname
=> 'oidgt', proleakproof
=> 't', prorettype
=> 'bool',
3871 proargtypes
=> 'oid oid', prosrc
=> 'oidgt' },
3873 proname
=> 'oidge', proleakproof
=> 't', prorettype
=> 'bool',
3874 proargtypes
=> 'oid oid', prosrc
=> 'oidge' },
3876 # System-view support functions
3877 { oid
=> '1573', descr
=> 'source text of a rule',
3878 proname
=> 'pg_get_ruledef', provolatile
=> 's', prorettype
=> 'text',
3879 proargtypes
=> 'oid', prosrc
=> 'pg_get_ruledef' },
3880 { oid
=> '1640', descr
=> 'select statement of a view',
3881 proname
=> 'pg_get_viewdef', provolatile
=> 's', proparallel
=> 'r',
3882 prorettype
=> 'text', proargtypes
=> 'text',
3883 prosrc
=> 'pg_get_viewdef_name' },
3884 { oid
=> '1641', descr
=> 'select statement of a view',
3885 proname
=> 'pg_get_viewdef', provolatile
=> 's', proparallel
=> 'r',
3886 prorettype
=> 'text', proargtypes
=> 'oid', prosrc
=> 'pg_get_viewdef' },
3887 { oid
=> '1642', descr
=> 'role name by OID (with fallback)',
3888 proname
=> 'pg_get_userbyid', provolatile
=> 's', prorettype
=> 'name',
3889 proargtypes
=> 'oid', prosrc
=> 'pg_get_userbyid' },
3890 { oid
=> '1643', descr
=> 'index description',
3891 proname
=> 'pg_get_indexdef', provolatile
=> 's', prorettype
=> 'text',
3892 proargtypes
=> 'oid', prosrc
=> 'pg_get_indexdef' },
3893 { oid
=> '3415', descr
=> 'extended statistics object description',
3894 proname
=> 'pg_get_statisticsobjdef', provolatile
=> 's',
3895 prorettype
=> 'text', proargtypes
=> 'oid',
3896 prosrc
=> 'pg_get_statisticsobjdef' },
3897 { oid
=> '6174', descr
=> 'extended statistics columns',
3898 proname
=> 'pg_get_statisticsobjdef_columns', provolatile
=> 's',
3899 prorettype
=> 'text', proargtypes
=> 'oid',
3900 prosrc
=> 'pg_get_statisticsobjdef_columns' },
3901 { oid
=> '6173', descr
=> 'extended statistics expressions',
3902 proname
=> 'pg_get_statisticsobjdef_expressions', provolatile
=> 's',
3903 prorettype
=> '_text', proargtypes
=> 'oid',
3904 prosrc
=> 'pg_get_statisticsobjdef_expressions' },
3905 { oid
=> '3352', descr
=> 'partition key description',
3906 proname
=> 'pg_get_partkeydef', provolatile
=> 's', prorettype
=> 'text',
3907 proargtypes
=> 'oid', prosrc
=> 'pg_get_partkeydef' },
3908 { oid
=> '3408', descr
=> 'partition constraint description',
3909 proname
=> 'pg_get_partition_constraintdef', provolatile
=> 's',
3910 prorettype
=> 'text', proargtypes
=> 'oid',
3911 prosrc
=> 'pg_get_partition_constraintdef' },
3912 { oid
=> '1662', descr
=> 'trigger description',
3913 proname
=> 'pg_get_triggerdef', provolatile
=> 's', prorettype
=> 'text',
3914 proargtypes
=> 'oid', prosrc
=> 'pg_get_triggerdef' },
3915 { oid
=> '1387', descr
=> 'constraint description',
3916 proname
=> 'pg_get_constraintdef', provolatile
=> 's', prorettype
=> 'text',
3917 proargtypes
=> 'oid', prosrc
=> 'pg_get_constraintdef' },
3918 { oid
=> '1716', descr
=> 'deparse an encoded expression',
3919 proname
=> 'pg_get_expr', provolatile
=> 's', prorettype
=> 'text',
3920 proargtypes
=> 'pg_node_tree oid', prosrc
=> 'pg_get_expr' },
3921 { oid
=> '1665', descr
=> 'name of sequence for a serial column',
3922 proname
=> 'pg_get_serial_sequence', provolatile
=> 's', prorettype
=> 'text',
3923 proargtypes
=> 'text text', prosrc
=> 'pg_get_serial_sequence' },
3924 { oid
=> '2098', descr
=> 'definition of a function',
3925 proname
=> 'pg_get_functiondef', provolatile
=> 's', prorettype
=> 'text',
3926 proargtypes
=> 'oid', prosrc
=> 'pg_get_functiondef' },
3927 { oid
=> '2162', descr
=> 'argument list of a function',
3928 proname
=> 'pg_get_function_arguments', provolatile
=> 's',
3929 prorettype
=> 'text', proargtypes
=> 'oid',
3930 prosrc
=> 'pg_get_function_arguments' },
3931 { oid
=> '2232', descr
=> 'identity argument list of a function',
3932 proname
=> 'pg_get_function_identity_arguments', provolatile
=> 's',
3933 prorettype
=> 'text', proargtypes
=> 'oid',
3934 prosrc
=> 'pg_get_function_identity_arguments' },
3935 { oid
=> '2165', descr
=> 'result type of a function',
3936 proname
=> 'pg_get_function_result', provolatile
=> 's', prorettype
=> 'text',
3937 proargtypes
=> 'oid', prosrc
=> 'pg_get_function_result' },
3938 { oid
=> '3808', descr
=> 'function argument default',
3939 proname
=> 'pg_get_function_arg_default', provolatile
=> 's',
3940 prorettype
=> 'text', proargtypes
=> 'oid int4',
3941 prosrc
=> 'pg_get_function_arg_default' },
3942 { oid
=> '6197', descr
=> 'function SQL body',
3943 proname
=> 'pg_get_function_sqlbody', provolatile
=> 's',
3944 prorettype
=> 'text', proargtypes
=> 'oid',
3945 prosrc
=> 'pg_get_function_sqlbody' },
3947 { oid
=> '1686', descr
=> 'list of SQL keywords',
3948 proname
=> 'pg_get_keywords', procost
=> '10', prorows
=> '500',
3949 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
3950 proargtypes
=> '', proallargtypes
=> '{text,char,bool,text,text}',
3951 proargmodes
=> '{o,o,o,o,o}',
3952 proargnames
=> '{word,catcode,barelabel,catdesc,baredesc}',
3953 prosrc
=> 'pg_get_keywords' },
3955 { oid
=> '6159', descr
=> 'list of catalog foreign key relationships',
3956 proname
=> 'pg_get_catalog_foreign_keys', procost
=> '10', prorows
=> '250',
3957 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
3959 proallargtypes
=> '{regclass,_text,regclass,_text,bool,bool}',
3960 proargmodes
=> '{o,o,o,o,o,o}',
3961 proargnames
=> '{fktable,fkcols,pktable,pkcols,is_array,is_opt}',
3962 prosrc
=> 'pg_get_catalog_foreign_keys' },
3964 { oid
=> '2289', descr
=> 'convert generic options array to name/value table',
3965 proname
=> 'pg_options_to_table', prorows
=> '3', proretset
=> 't',
3966 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> '_text',
3967 proallargtypes
=> '{_text,text,text}', proargmodes
=> '{i,o,o}',
3968 proargnames
=> '{options_array,option_name,option_value}',
3969 prosrc
=> 'pg_options_to_table' },
3971 { oid
=> '1619', descr
=> 'type of the argument',
3972 proname
=> 'pg_typeof', proisstrict
=> 'f', provolatile
=> 's',
3973 prorettype
=> 'regtype', proargtypes
=> 'any', prosrc
=> 'pg_typeof' },
3974 { oid
=> '6315', descr
=> 'base type of a domain type',
3975 proname
=> 'pg_basetype', provolatile
=> 's', prorettype
=> 'regtype',
3976 proargtypes
=> 'regtype', prosrc
=> 'pg_basetype' },
3978 descr
=> 'collation of the argument; implementation of the COLLATION FOR expression',
3979 proname
=> 'pg_collation_for', proisstrict
=> 'f', provolatile
=> 's',
3980 prorettype
=> 'text', proargtypes
=> 'any', prosrc
=> 'pg_collation_for' },
3982 { oid
=> '3842', descr
=> 'is a relation insertable/updatable/deletable',
3983 proname
=> 'pg_relation_is_updatable', procost
=> '10', provolatile
=> 's',
3984 prorettype
=> 'int4', proargtypes
=> 'regclass bool',
3985 prosrc
=> 'pg_relation_is_updatable' },
3986 { oid
=> '3843', descr
=> 'is a column updatable',
3987 proname
=> 'pg_column_is_updatable', procost
=> '10', provolatile
=> 's',
3988 prorettype
=> 'bool', proargtypes
=> 'regclass int2 bool',
3989 prosrc
=> 'pg_column_is_updatable' },
3991 { oid
=> '6120', descr
=> 'oid of replica identity index if any',
3992 proname
=> 'pg_get_replica_identity_index', procost
=> '10',
3993 provolatile
=> 's', prorettype
=> 'regclass', proargtypes
=> 'regclass',
3994 prosrc
=> 'pg_get_replica_identity_index' },
3996 # Deferrable unique constraint trigger
3997 { oid
=> '1250', descr
=> 'deferred UNIQUE constraint check',
3998 proname
=> 'unique_key_recheck', provolatile
=> 'v', prorettype
=> 'trigger',
3999 proargtypes
=> '', prosrc
=> 'unique_key_recheck' },
4001 # Generic referential integrity constraint triggers
4002 { oid
=> '1644', descr
=> 'referential integrity FOREIGN KEY ... REFERENCES',
4003 proname
=> 'RI_FKey_check_ins', provolatile
=> 'v', prorettype
=> 'trigger',
4004 proargtypes
=> '', prosrc
=> 'RI_FKey_check_ins' },
4005 { oid
=> '1645', descr
=> 'referential integrity FOREIGN KEY ... REFERENCES',
4006 proname
=> 'RI_FKey_check_upd', provolatile
=> 'v', prorettype
=> 'trigger',
4007 proargtypes
=> '', prosrc
=> 'RI_FKey_check_upd' },
4008 { oid
=> '1646', descr
=> 'referential integrity ON DELETE CASCADE',
4009 proname
=> 'RI_FKey_cascade_del', provolatile
=> 'v', prorettype
=> 'trigger',
4010 proargtypes
=> '', prosrc
=> 'RI_FKey_cascade_del' },
4011 { oid
=> '1647', descr
=> 'referential integrity ON UPDATE CASCADE',
4012 proname
=> 'RI_FKey_cascade_upd', provolatile
=> 'v', prorettype
=> 'trigger',
4013 proargtypes
=> '', prosrc
=> 'RI_FKey_cascade_upd' },
4014 { oid
=> '1648', descr
=> 'referential integrity ON DELETE RESTRICT',
4015 proname
=> 'RI_FKey_restrict_del', provolatile
=> 'v',
4016 prorettype
=> 'trigger', proargtypes
=> '',
4017 prosrc
=> 'RI_FKey_restrict_del' },
4018 { oid
=> '1649', descr
=> 'referential integrity ON UPDATE RESTRICT',
4019 proname
=> 'RI_FKey_restrict_upd', provolatile
=> 'v',
4020 prorettype
=> 'trigger', proargtypes
=> '',
4021 prosrc
=> 'RI_FKey_restrict_upd' },
4022 { oid
=> '1650', descr
=> 'referential integrity ON DELETE SET NULL',
4023 proname
=> 'RI_FKey_setnull_del', provolatile
=> 'v', prorettype
=> 'trigger',
4024 proargtypes
=> '', prosrc
=> 'RI_FKey_setnull_del' },
4025 { oid
=> '1651', descr
=> 'referential integrity ON UPDATE SET NULL',
4026 proname
=> 'RI_FKey_setnull_upd', provolatile
=> 'v', prorettype
=> 'trigger',
4027 proargtypes
=> '', prosrc
=> 'RI_FKey_setnull_upd' },
4028 { oid
=> '1652', descr
=> 'referential integrity ON DELETE SET DEFAULT',
4029 proname
=> 'RI_FKey_setdefault_del', provolatile
=> 'v',
4030 prorettype
=> 'trigger', proargtypes
=> '',
4031 prosrc
=> 'RI_FKey_setdefault_del' },
4032 { oid
=> '1653', descr
=> 'referential integrity ON UPDATE SET DEFAULT',
4033 proname
=> 'RI_FKey_setdefault_upd', provolatile
=> 'v',
4034 prorettype
=> 'trigger', proargtypes
=> '',
4035 prosrc
=> 'RI_FKey_setdefault_upd' },
4036 { oid
=> '1654', descr
=> 'referential integrity ON DELETE NO ACTION',
4037 proname
=> 'RI_FKey_noaction_del', provolatile
=> 'v',
4038 prorettype
=> 'trigger', proargtypes
=> '',
4039 prosrc
=> 'RI_FKey_noaction_del' },
4040 { oid
=> '1655', descr
=> 'referential integrity ON UPDATE NO ACTION',
4041 proname
=> 'RI_FKey_noaction_upd', provolatile
=> 'v',
4042 prorettype
=> 'trigger', proargtypes
=> '',
4043 prosrc
=> 'RI_FKey_noaction_upd' },
4046 proname
=> 'varbiteq', proleakproof
=> 't', prorettype
=> 'bool',
4047 proargtypes
=> 'varbit varbit', prosrc
=> 'biteq' },
4049 proname
=> 'varbitne', proleakproof
=> 't', prorettype
=> 'bool',
4050 proargtypes
=> 'varbit varbit', prosrc
=> 'bitne' },
4052 proname
=> 'varbitge', proleakproof
=> 't', prorettype
=> 'bool',
4053 proargtypes
=> 'varbit varbit', prosrc
=> 'bitge' },
4055 proname
=> 'varbitgt', proleakproof
=> 't', prorettype
=> 'bool',
4056 proargtypes
=> 'varbit varbit', prosrc
=> 'bitgt' },
4058 proname
=> 'varbitle', proleakproof
=> 't', prorettype
=> 'bool',
4059 proargtypes
=> 'varbit varbit', prosrc
=> 'bitle' },
4061 proname
=> 'varbitlt', proleakproof
=> 't', prorettype
=> 'bool',
4062 proargtypes
=> 'varbit varbit', prosrc
=> 'bitlt' },
4063 { oid
=> '1672', descr
=> 'less-equal-greater',
4064 proname
=> 'varbitcmp', proleakproof
=> 't', prorettype
=> 'int4',
4065 proargtypes
=> 'varbit varbit', prosrc
=> 'bitcmp' },
4067 # avoid the C names bitand and bitor, since they are C++ keywords
4069 proname
=> 'bitand', prorettype
=> 'bit', proargtypes
=> 'bit bit',
4070 prosrc
=> 'bit_and' },
4072 proname
=> 'bitor', prorettype
=> 'bit', proargtypes
=> 'bit bit',
4073 prosrc
=> 'bit_or' },
4075 proname
=> 'bitxor', prorettype
=> 'bit', proargtypes
=> 'bit bit',
4076 prosrc
=> 'bitxor' },
4078 proname
=> 'bitnot', prorettype
=> 'bit', proargtypes
=> 'bit',
4079 prosrc
=> 'bitnot' },
4081 proname
=> 'bitshiftleft', prorettype
=> 'bit', proargtypes
=> 'bit int4',
4082 prosrc
=> 'bitshiftleft' },
4084 proname
=> 'bitshiftright', prorettype
=> 'bit', proargtypes
=> 'bit int4',
4085 prosrc
=> 'bitshiftright' },
4087 proname
=> 'bitcat', prorettype
=> 'varbit', proargtypes
=> 'varbit varbit',
4088 prosrc
=> 'bitcat' },
4089 { oid
=> '1680', descr
=> 'extract portion of bitstring',
4090 proname
=> 'substring', prorettype
=> 'bit', proargtypes
=> 'bit int4 int4',
4091 prosrc
=> 'bitsubstr' },
4092 { oid
=> '1681', descr
=> 'bitstring length',
4093 proname
=> 'length', prorettype
=> 'int4', proargtypes
=> 'bit',
4094 prosrc
=> 'bitlength' },
4095 { oid
=> '1682', descr
=> 'octet length',
4096 proname
=> 'octet_length', prorettype
=> 'int4', proargtypes
=> 'bit',
4097 prosrc
=> 'bitoctetlength' },
4098 { oid
=> '1683', descr
=> 'convert int4 to bitstring',
4099 proname
=> 'bit', prorettype
=> 'bit', proargtypes
=> 'int4 int4',
4100 prosrc
=> 'bitfromint4' },
4101 { oid
=> '1684', descr
=> 'convert bitstring to int4',
4102 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'bit',
4103 prosrc
=> 'bittoint4' },
4105 { oid
=> '1685', descr
=> 'adjust bit() to typmod length',
4106 proname
=> 'bit', prorettype
=> 'bit', proargtypes
=> 'bit int4 bool',
4108 { oid
=> '3158', descr
=> 'planner support for varbit length coercion',
4109 proname
=> 'varbit_support', prorettype
=> 'internal',
4110 proargtypes
=> 'internal', prosrc
=> 'varbit_support' },
4111 { oid
=> '1687', descr
=> 'adjust varbit() to typmod length',
4112 proname
=> 'varbit', prosupport
=> 'varbit_support', prorettype
=> 'varbit',
4113 proargtypes
=> 'varbit int4 bool', prosrc
=> 'varbit' },
4115 { oid
=> '1698', descr
=> 'position of sub-bitstring',
4116 proname
=> 'position', prorettype
=> 'int4', proargtypes
=> 'bit bit',
4117 prosrc
=> 'bitposition' },
4118 { oid
=> '1699', descr
=> 'extract portion of bitstring',
4119 proname
=> 'substring', prorettype
=> 'bit', proargtypes
=> 'bit int4',
4120 prosrc
=> 'bitsubstr_no_len' },
4122 { oid
=> '3030', descr
=> 'substitute portion of bitstring',
4123 proname
=> 'overlay', prorettype
=> 'bit', proargtypes
=> 'bit bit int4 int4',
4124 prosrc
=> 'bitoverlay' },
4125 { oid
=> '3031', descr
=> 'substitute portion of bitstring',
4126 proname
=> 'overlay', prorettype
=> 'bit', proargtypes
=> 'bit bit int4',
4127 prosrc
=> 'bitoverlay_no_len' },
4128 { oid
=> '3032', descr
=> 'get bit',
4129 proname
=> 'get_bit', prorettype
=> 'int4', proargtypes
=> 'bit int4',
4130 prosrc
=> 'bitgetbit' },
4131 { oid
=> '3033', descr
=> 'set bit',
4132 proname
=> 'set_bit', prorettype
=> 'bit', proargtypes
=> 'bit int4 int4',
4133 prosrc
=> 'bitsetbit' },
4134 { oid
=> '6162', descr
=> 'number of set bits',
4135 proname
=> 'bit_count', prorettype
=> 'int8', proargtypes
=> 'bit',
4136 prosrc
=> 'bit_bit_count' },
4138 # for macaddr type support
4139 { oid
=> '436', descr
=> 'I/O',
4140 proname
=> 'macaddr_in', prorettype
=> 'macaddr', proargtypes
=> 'cstring',
4141 prosrc
=> 'macaddr_in' },
4142 { oid
=> '437', descr
=> 'I/O',
4143 proname
=> 'macaddr_out', prorettype
=> 'cstring', proargtypes
=> 'macaddr',
4144 prosrc
=> 'macaddr_out' },
4146 { oid
=> '753', descr
=> 'MACADDR manufacturer fields',
4147 proname
=> 'trunc', prorettype
=> 'macaddr', proargtypes
=> 'macaddr',
4148 prosrc
=> 'macaddr_trunc' },
4151 proname
=> 'macaddr_eq', proleakproof
=> 't', prorettype
=> 'bool',
4152 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_eq' },
4154 proname
=> 'macaddr_lt', proleakproof
=> 't', prorettype
=> 'bool',
4155 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_lt' },
4157 proname
=> 'macaddr_le', proleakproof
=> 't', prorettype
=> 'bool',
4158 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_le' },
4160 proname
=> 'macaddr_gt', proleakproof
=> 't', prorettype
=> 'bool',
4161 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_gt' },
4163 proname
=> 'macaddr_ge', proleakproof
=> 't', prorettype
=> 'bool',
4164 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_ge' },
4166 proname
=> 'macaddr_ne', proleakproof
=> 't', prorettype
=> 'bool',
4167 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_ne' },
4168 { oid
=> '836', descr
=> 'less-equal-greater',
4169 proname
=> 'macaddr_cmp', proleakproof
=> 't', prorettype
=> 'int4',
4170 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_cmp' },
4172 proname
=> 'macaddr_not', prorettype
=> 'macaddr', proargtypes
=> 'macaddr',
4173 prosrc
=> 'macaddr_not' },
4175 proname
=> 'macaddr_and', prorettype
=> 'macaddr',
4176 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_and' },
4178 proname
=> 'macaddr_or', prorettype
=> 'macaddr',
4179 proargtypes
=> 'macaddr macaddr', prosrc
=> 'macaddr_or' },
4180 { oid
=> '3359', descr
=> 'sort support',
4181 proname
=> 'macaddr_sortsupport', prorettype
=> 'void',
4182 proargtypes
=> 'internal', prosrc
=> 'macaddr_sortsupport' },
4184 # for macaddr8 type support
4185 { oid
=> '4110', descr
=> 'I/O',
4186 proname
=> 'macaddr8_in', prorettype
=> 'macaddr8', proargtypes
=> 'cstring',
4187 prosrc
=> 'macaddr8_in' },
4188 { oid
=> '4111', descr
=> 'I/O',
4189 proname
=> 'macaddr8_out', prorettype
=> 'cstring', proargtypes
=> 'macaddr8',
4190 prosrc
=> 'macaddr8_out' },
4192 { oid
=> '4112', descr
=> 'MACADDR8 manufacturer fields',
4193 proname
=> 'trunc', prorettype
=> 'macaddr8', proargtypes
=> 'macaddr8',
4194 prosrc
=> 'macaddr8_trunc' },
4197 proname
=> 'macaddr8_eq', proleakproof
=> 't', prorettype
=> 'bool',
4198 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_eq' },
4200 proname
=> 'macaddr8_lt', proleakproof
=> 't', prorettype
=> 'bool',
4201 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_lt' },
4203 proname
=> 'macaddr8_le', proleakproof
=> 't', prorettype
=> 'bool',
4204 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_le' },
4206 proname
=> 'macaddr8_gt', proleakproof
=> 't', prorettype
=> 'bool',
4207 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_gt' },
4209 proname
=> 'macaddr8_ge', proleakproof
=> 't', prorettype
=> 'bool',
4210 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_ge' },
4212 proname
=> 'macaddr8_ne', proleakproof
=> 't', prorettype
=> 'bool',
4213 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_ne' },
4214 { oid
=> '4119', descr
=> 'less-equal-greater',
4215 proname
=> 'macaddr8_cmp', proleakproof
=> 't', prorettype
=> 'int4',
4216 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_cmp' },
4218 proname
=> 'macaddr8_not', prorettype
=> 'macaddr8',
4219 proargtypes
=> 'macaddr8', prosrc
=> 'macaddr8_not' },
4221 proname
=> 'macaddr8_and', prorettype
=> 'macaddr8',
4222 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_and' },
4224 proname
=> 'macaddr8_or', prorettype
=> 'macaddr8',
4225 proargtypes
=> 'macaddr8 macaddr8', prosrc
=> 'macaddr8_or' },
4226 { oid
=> '4123', descr
=> 'convert macaddr to macaddr8',
4227 proname
=> 'macaddr8', proleakproof
=> 't', prorettype
=> 'macaddr8',
4228 proargtypes
=> 'macaddr', prosrc
=> 'macaddrtomacaddr8' },
4229 { oid
=> '4124', descr
=> 'convert macaddr8 to macaddr',
4230 proname
=> 'macaddr', prorettype
=> 'macaddr', proargtypes
=> 'macaddr8',
4231 prosrc
=> 'macaddr8tomacaddr' },
4232 { oid
=> '4125', descr
=> 'set 7th bit in macaddr8',
4233 proname
=> 'macaddr8_set7bit', prorettype
=> 'macaddr8',
4234 proargtypes
=> 'macaddr8', prosrc
=> 'macaddr8_set7bit' },
4236 # for inet type support
4237 { oid
=> '910', descr
=> 'I/O',
4238 proname
=> 'inet_in', prorettype
=> 'inet', proargtypes
=> 'cstring',
4239 prosrc
=> 'inet_in' },
4240 { oid
=> '911', descr
=> 'I/O',
4241 proname
=> 'inet_out', prorettype
=> 'cstring', proargtypes
=> 'inet',
4242 prosrc
=> 'inet_out' },
4244 # for cidr type support
4245 { oid
=> '1267', descr
=> 'I/O',
4246 proname
=> 'cidr_in', prorettype
=> 'cidr', proargtypes
=> 'cstring',
4247 prosrc
=> 'cidr_in' },
4248 { oid
=> '1427', descr
=> 'I/O',
4249 proname
=> 'cidr_out', prorettype
=> 'cstring', proargtypes
=> 'cidr',
4250 prosrc
=> 'cidr_out' },
4252 # these are used for both inet and cidr
4254 proname
=> 'network_eq', proleakproof
=> 't', prorettype
=> 'bool',
4255 proargtypes
=> 'inet inet', prosrc
=> 'network_eq' },
4257 proname
=> 'network_lt', proleakproof
=> 't', prorettype
=> 'bool',
4258 proargtypes
=> 'inet inet', prosrc
=> 'network_lt' },
4260 proname
=> 'network_le', proleakproof
=> 't', prorettype
=> 'bool',
4261 proargtypes
=> 'inet inet', prosrc
=> 'network_le' },
4263 proname
=> 'network_gt', proleakproof
=> 't', prorettype
=> 'bool',
4264 proargtypes
=> 'inet inet', prosrc
=> 'network_gt' },
4266 proname
=> 'network_ge', proleakproof
=> 't', prorettype
=> 'bool',
4267 proargtypes
=> 'inet inet', prosrc
=> 'network_ge' },
4269 proname
=> 'network_ne', proleakproof
=> 't', prorettype
=> 'bool',
4270 proargtypes
=> 'inet inet', prosrc
=> 'network_ne' },
4271 { oid
=> '3562', descr
=> 'larger of two',
4272 proname
=> 'network_larger', prorettype
=> 'inet', proargtypes
=> 'inet inet',
4273 prosrc
=> 'network_larger' },
4274 { oid
=> '3563', descr
=> 'smaller of two',
4275 proname
=> 'network_smaller', prorettype
=> 'inet',
4276 proargtypes
=> 'inet inet', prosrc
=> 'network_smaller' },
4277 { oid
=> '926', descr
=> 'less-equal-greater',
4278 proname
=> 'network_cmp', proleakproof
=> 't', prorettype
=> 'int4',
4279 proargtypes
=> 'inet inet', prosrc
=> 'network_cmp' },
4281 proname
=> 'network_sub', prosupport
=> 'network_subset_support',
4282 prorettype
=> 'bool', proargtypes
=> 'inet inet', prosrc
=> 'network_sub' },
4284 proname
=> 'network_subeq', prosupport
=> 'network_subset_support',
4285 prorettype
=> 'bool', proargtypes
=> 'inet inet', prosrc
=> 'network_subeq' },
4287 proname
=> 'network_sup', prosupport
=> 'network_subset_support',
4288 prorettype
=> 'bool', proargtypes
=> 'inet inet', prosrc
=> 'network_sup' },
4290 proname
=> 'network_supeq', prosupport
=> 'network_subset_support',
4291 prorettype
=> 'bool', proargtypes
=> 'inet inet', prosrc
=> 'network_supeq' },
4292 { oid
=> '1173', descr
=> 'planner support for network_sub/superset',
4293 proname
=> 'network_subset_support', prorettype
=> 'internal',
4294 proargtypes
=> 'internal', prosrc
=> 'network_subset_support' },
4297 proname
=> 'network_overlap', prorettype
=> 'bool',
4298 proargtypes
=> 'inet inet', prosrc
=> 'network_overlap' },
4299 { oid
=> '5033', descr
=> 'sort support',
4300 proname
=> 'network_sortsupport', prorettype
=> 'void',
4301 proargtypes
=> 'internal', prosrc
=> 'network_sortsupport' },
4303 # inet/cidr functions
4304 { oid
=> '598', descr
=> 'abbreviated display of inet value',
4305 proname
=> 'abbrev', prorettype
=> 'text', proargtypes
=> 'inet',
4306 prosrc
=> 'inet_abbrev' },
4307 { oid
=> '599', descr
=> 'abbreviated display of cidr value',
4308 proname
=> 'abbrev', prorettype
=> 'text', proargtypes
=> 'cidr',
4309 prosrc
=> 'cidr_abbrev' },
4310 { oid
=> '605', descr
=> 'change netmask of inet',
4311 proname
=> 'set_masklen', prorettype
=> 'inet', proargtypes
=> 'inet int4',
4312 prosrc
=> 'inet_set_masklen' },
4313 { oid
=> '635', descr
=> 'change netmask of cidr',
4314 proname
=> 'set_masklen', prorettype
=> 'cidr', proargtypes
=> 'cidr int4',
4315 prosrc
=> 'cidr_set_masklen' },
4316 { oid
=> '711', descr
=> 'address family (4 for IPv4, 6 for IPv6)',
4317 proname
=> 'family', prorettype
=> 'int4', proargtypes
=> 'inet',
4318 prosrc
=> 'network_family' },
4319 { oid
=> '683', descr
=> 'network part of address',
4320 proname
=> 'network', prorettype
=> 'cidr', proargtypes
=> 'inet',
4321 prosrc
=> 'network_network' },
4322 { oid
=> '696', descr
=> 'netmask of address',
4323 proname
=> 'netmask', prorettype
=> 'inet', proargtypes
=> 'inet',
4324 prosrc
=> 'network_netmask' },
4325 { oid
=> '697', descr
=> 'netmask length',
4326 proname
=> 'masklen', prorettype
=> 'int4', proargtypes
=> 'inet',
4327 prosrc
=> 'network_masklen' },
4328 { oid
=> '698', descr
=> 'broadcast address of network',
4329 proname
=> 'broadcast', prorettype
=> 'inet', proargtypes
=> 'inet',
4330 prosrc
=> 'network_broadcast' },
4331 { oid
=> '699', descr
=> 'show address octets only',
4332 proname
=> 'host', prorettype
=> 'text', proargtypes
=> 'inet',
4333 prosrc
=> 'network_host' },
4334 { oid
=> '730', descr
=> 'show all parts of inet/cidr value',
4335 proname
=> 'text', prorettype
=> 'text', proargtypes
=> 'inet',
4336 prosrc
=> 'network_show' },
4337 { oid
=> '1362', descr
=> 'hostmask of address',
4338 proname
=> 'hostmask', prorettype
=> 'inet', proargtypes
=> 'inet',
4339 prosrc
=> 'network_hostmask' },
4340 { oid
=> '1715', descr
=> 'convert inet to cidr',
4341 proname
=> 'cidr', prorettype
=> 'cidr', proargtypes
=> 'inet',
4342 prosrc
=> 'inet_to_cidr' },
4344 { oid
=> '2196', descr
=> 'inet address of the client',
4345 proname
=> 'inet_client_addr', proisstrict
=> 'f', provolatile
=> 's',
4346 proparallel
=> 'r', prorettype
=> 'inet', proargtypes
=> '',
4347 prosrc
=> 'inet_client_addr' },
4348 { oid
=> '2197', descr
=> 'client\'s port number for this connection',
4349 proname
=> 'inet_client_port', proisstrict
=> 'f', provolatile
=> 's',
4350 proparallel
=> 'r', prorettype
=> 'int4', proargtypes
=> '',
4351 prosrc
=> 'inet_client_port' },
4352 { oid
=> '2198', descr
=> 'inet address of the server',
4353 proname
=> 'inet_server_addr', proisstrict
=> 'f', provolatile
=> 's',
4354 proparallel
=> 'r', prorettype
=> 'inet', proargtypes
=> '',
4355 prosrc
=> 'inet_server_addr' },
4356 { oid
=> '2199', descr
=> 'server\'s port number for this connection',
4357 proname
=> 'inet_server_port', proisstrict
=> 'f', provolatile
=> 's',
4358 proparallel
=> 'r', prorettype
=> 'int4', proargtypes
=> '',
4359 prosrc
=> 'inet_server_port' },
4362 proname
=> 'inetnot', prorettype
=> 'inet', proargtypes
=> 'inet',
4363 prosrc
=> 'inetnot' },
4365 proname
=> 'inetand', prorettype
=> 'inet', proargtypes
=> 'inet inet',
4366 prosrc
=> 'inetand' },
4368 proname
=> 'inetor', prorettype
=> 'inet', proargtypes
=> 'inet inet',
4369 prosrc
=> 'inetor' },
4371 proname
=> 'inetpl', prorettype
=> 'inet', proargtypes
=> 'inet int8',
4372 prosrc
=> 'inetpl' },
4374 proname
=> 'int8pl_inet', prolang
=> 'sql', prorettype
=> 'inet',
4375 proargtypes
=> 'int8 inet', prosrc
=> 'see system_functions.sql' },
4377 proname
=> 'inetmi_int8', prorettype
=> 'inet', proargtypes
=> 'inet int8',
4378 prosrc
=> 'inetmi_int8' },
4380 proname
=> 'inetmi', prorettype
=> 'int8', proargtypes
=> 'inet inet',
4381 prosrc
=> 'inetmi' },
4382 { oid
=> '4071', descr
=> 'are the addresses from the same family?',
4383 proname
=> 'inet_same_family', prorettype
=> 'bool',
4384 proargtypes
=> 'inet inet', prosrc
=> 'inet_same_family' },
4386 descr
=> 'the smallest network which includes both of the given networks',
4387 proname
=> 'inet_merge', prorettype
=> 'cidr', proargtypes
=> 'inet inet',
4388 prosrc
=> 'inet_merge' },
4390 # GiST support for inet and cidr
4391 { oid
=> '3553', descr
=> 'GiST support',
4392 proname
=> 'inet_gist_consistent', prorettype
=> 'bool',
4393 proargtypes
=> 'internal inet int2 oid internal',
4394 prosrc
=> 'inet_gist_consistent' },
4395 { oid
=> '3554', descr
=> 'GiST support',
4396 proname
=> 'inet_gist_union', prorettype
=> 'inet',
4397 proargtypes
=> 'internal internal', prosrc
=> 'inet_gist_union' },
4398 { oid
=> '3555', descr
=> 'GiST support',
4399 proname
=> 'inet_gist_compress', prorettype
=> 'internal',
4400 proargtypes
=> 'internal', prosrc
=> 'inet_gist_compress' },
4401 { oid
=> '3573', descr
=> 'GiST support',
4402 proname
=> 'inet_gist_fetch', prorettype
=> 'internal',
4403 proargtypes
=> 'internal', prosrc
=> 'inet_gist_fetch' },
4404 { oid
=> '3557', descr
=> 'GiST support',
4405 proname
=> 'inet_gist_penalty', prorettype
=> 'internal',
4406 proargtypes
=> 'internal internal internal', prosrc
=> 'inet_gist_penalty' },
4407 { oid
=> '3558', descr
=> 'GiST support',
4408 proname
=> 'inet_gist_picksplit', prorettype
=> 'internal',
4409 proargtypes
=> 'internal internal', prosrc
=> 'inet_gist_picksplit' },
4410 { oid
=> '3559', descr
=> 'GiST support',
4411 proname
=> 'inet_gist_same', prorettype
=> 'internal',
4412 proargtypes
=> 'inet inet internal', prosrc
=> 'inet_gist_same' },
4414 # SP-GiST support for inet and cidr
4415 { oid
=> '3795', descr
=> 'SP-GiST support',
4416 proname
=> 'inet_spg_config', prorettype
=> 'void',
4417 proargtypes
=> 'internal internal', prosrc
=> 'inet_spg_config' },
4418 { oid
=> '3796', descr
=> 'SP-GiST support',
4419 proname
=> 'inet_spg_choose', prorettype
=> 'void',
4420 proargtypes
=> 'internal internal', prosrc
=> 'inet_spg_choose' },
4421 { oid
=> '3797', descr
=> 'SP-GiST support',
4422 proname
=> 'inet_spg_picksplit', prorettype
=> 'void',
4423 proargtypes
=> 'internal internal', prosrc
=> 'inet_spg_picksplit' },
4424 { oid
=> '3798', descr
=> 'SP-GiST support',
4425 proname
=> 'inet_spg_inner_consistent', prorettype
=> 'void',
4426 proargtypes
=> 'internal internal', prosrc
=> 'inet_spg_inner_consistent' },
4427 { oid
=> '3799', descr
=> 'SP-GiST support',
4428 proname
=> 'inet_spg_leaf_consistent', prorettype
=> 'bool',
4429 proargtypes
=> 'internal internal', prosrc
=> 'inet_spg_leaf_consistent' },
4431 # Selectivity estimation for inet and cidr
4432 { oid
=> '3560', descr
=> 'restriction selectivity for network operators',
4433 proname
=> 'networksel', provolatile
=> 's', prorettype
=> 'float8',
4434 proargtypes
=> 'internal oid internal int4', prosrc
=> 'networksel' },
4435 { oid
=> '3561', descr
=> 'join selectivity for network operators',
4436 proname
=> 'networkjoinsel', provolatile
=> 's', prorettype
=> 'float8',
4437 proargtypes
=> 'internal oid internal int2 internal',
4438 prosrc
=> 'networkjoinsel' },
4441 proname
=> 'time_mi_time', prorettype
=> 'interval',
4442 proargtypes
=> 'time time', prosrc
=> 'time_mi_time' },
4445 proname
=> 'boolle', proleakproof
=> 't', prorettype
=> 'bool',
4446 proargtypes
=> 'bool bool', prosrc
=> 'boolle' },
4448 proname
=> 'boolge', proleakproof
=> 't', prorettype
=> 'bool',
4449 proargtypes
=> 'bool bool', prosrc
=> 'boolge' },
4450 { oid
=> '1693', descr
=> 'less-equal-greater',
4451 proname
=> 'btboolcmp', proleakproof
=> 't', prorettype
=> 'int4',
4452 proargtypes
=> 'bool bool', prosrc
=> 'btboolcmp' },
4454 { oid
=> '1688', descr
=> 'hash',
4455 proname
=> 'time_hash', prorettype
=> 'int4', proargtypes
=> 'time',
4456 prosrc
=> 'time_hash' },
4457 { oid
=> '3409', descr
=> 'hash',
4458 proname
=> 'time_hash_extended', prorettype
=> 'int8',
4459 proargtypes
=> 'time int8', prosrc
=> 'time_hash_extended' },
4460 { oid
=> '1696', descr
=> 'hash',
4461 proname
=> 'timetz_hash', prorettype
=> 'int4', proargtypes
=> 'timetz',
4462 prosrc
=> 'timetz_hash' },
4463 { oid
=> '3410', descr
=> 'hash',
4464 proname
=> 'timetz_hash_extended', prorettype
=> 'int8',
4465 proargtypes
=> 'timetz int8', prosrc
=> 'timetz_hash_extended' },
4466 { oid
=> '1697', descr
=> 'hash',
4467 proname
=> 'interval_hash', prorettype
=> 'int4', proargtypes
=> 'interval',
4468 prosrc
=> 'interval_hash' },
4469 { oid
=> '3418', descr
=> 'hash',
4470 proname
=> 'interval_hash_extended', prorettype
=> 'int8',
4471 proargtypes
=> 'interval int8', prosrc
=> 'interval_hash_extended' },
4473 # OID's 1700 - 1799 NUMERIC data type
4475 { oid
=> '1701', descr
=> 'I/O',
4476 proname
=> 'numeric_in', prorettype
=> 'numeric',
4477 proargtypes
=> 'cstring oid int4', prosrc
=> 'numeric_in' },
4478 { oid
=> '1702', descr
=> 'I/O',
4479 proname
=> 'numeric_out', prorettype
=> 'cstring', proargtypes
=> 'numeric',
4480 prosrc
=> 'numeric_out' },
4481 { oid
=> '2917', descr
=> 'I/O typmod',
4482 proname
=> 'numerictypmodin', prorettype
=> 'int4', proargtypes
=> '_cstring',
4483 prosrc
=> 'numerictypmodin' },
4484 { oid
=> '2918', descr
=> 'I/O typmod',
4485 proname
=> 'numerictypmodout', prorettype
=> 'cstring', proargtypes
=> 'int4',
4486 prosrc
=> 'numerictypmodout' },
4487 { oid
=> '3157', descr
=> 'planner support for numeric length coercion',
4488 proname
=> 'numeric_support', prorettype
=> 'internal',
4489 proargtypes
=> 'internal', prosrc
=> 'numeric_support' },
4490 { oid
=> '1703', descr
=> 'adjust numeric to typmod precision/scale',
4491 proname
=> 'numeric', prosupport
=> 'numeric_support',
4492 prorettype
=> 'numeric', proargtypes
=> 'numeric int4', prosrc
=> 'numeric' },
4494 proname
=> 'numeric_abs', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4495 prosrc
=> 'numeric_abs' },
4496 { oid
=> '1705', descr
=> 'absolute value',
4497 proname
=> 'abs', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4498 prosrc
=> 'numeric_abs' },
4499 { oid
=> '1706', descr
=> 'sign of value',
4500 proname
=> 'sign', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4501 prosrc
=> 'numeric_sign' },
4502 { oid
=> '1707', descr
=> 'value rounded to \'scale\'',
4503 proname
=> 'round', prorettype
=> 'numeric', proargtypes
=> 'numeric int4',
4504 prosrc
=> 'numeric_round' },
4505 { oid
=> '1708', descr
=> 'value rounded to \'scale\' of zero',
4506 proname
=> 'round', prolang
=> 'sql', prorettype
=> 'numeric',
4507 proargtypes
=> 'numeric', prosrc
=> 'see system_functions.sql' },
4508 { oid
=> '1709', descr
=> 'value truncated to \'scale\'',
4509 proname
=> 'trunc', prorettype
=> 'numeric', proargtypes
=> 'numeric int4',
4510 prosrc
=> 'numeric_trunc' },
4511 { oid
=> '1710', descr
=> 'value truncated to \'scale\' of zero',
4512 proname
=> 'trunc', prolang
=> 'sql', prorettype
=> 'numeric',
4513 proargtypes
=> 'numeric', prosrc
=> 'see system_functions.sql' },
4514 { oid
=> '1711', descr
=> 'nearest integer >= value',
4515 proname
=> 'ceil', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4516 prosrc
=> 'numeric_ceil' },
4517 { oid
=> '2167', descr
=> 'nearest integer >= value',
4518 proname
=> 'ceiling', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4519 prosrc
=> 'numeric_ceil' },
4520 { oid
=> '1712', descr
=> 'nearest integer <= value',
4521 proname
=> 'floor', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4522 prosrc
=> 'numeric_floor' },
4524 proname
=> 'numeric_eq', prorettype
=> 'bool',
4525 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_eq' },
4527 proname
=> 'numeric_ne', prorettype
=> 'bool',
4528 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_ne' },
4530 proname
=> 'numeric_gt', prorettype
=> 'bool',
4531 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_gt' },
4533 proname
=> 'numeric_ge', prorettype
=> 'bool',
4534 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_ge' },
4536 proname
=> 'numeric_lt', prorettype
=> 'bool',
4537 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_lt' },
4539 proname
=> 'numeric_le', prorettype
=> 'bool',
4540 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_le' },
4542 proname
=> 'numeric_add', prorettype
=> 'numeric',
4543 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_add' },
4545 proname
=> 'numeric_sub', prorettype
=> 'numeric',
4546 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_sub' },
4548 proname
=> 'numeric_mul', prorettype
=> 'numeric',
4549 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_mul' },
4551 proname
=> 'numeric_div', prorettype
=> 'numeric',
4552 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_div' },
4553 { oid
=> '1728', descr
=> 'modulus',
4554 proname
=> 'mod', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4555 prosrc
=> 'numeric_mod' },
4557 proname
=> 'numeric_mod', prorettype
=> 'numeric',
4558 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_mod' },
4559 { oid
=> '5048', descr
=> 'greatest common divisor',
4560 proname
=> 'gcd', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4561 prosrc
=> 'numeric_gcd' },
4562 { oid
=> '5049', descr
=> 'least common multiple',
4563 proname
=> 'lcm', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4564 prosrc
=> 'numeric_lcm' },
4565 { oid
=> '1730', descr
=> 'square root',
4566 proname
=> 'sqrt', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4567 prosrc
=> 'numeric_sqrt' },
4568 { oid
=> '1731', descr
=> 'square root',
4569 proname
=> 'numeric_sqrt', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4570 prosrc
=> 'numeric_sqrt' },
4571 { oid
=> '1732', descr
=> 'natural exponential (e^x)',
4572 proname
=> 'exp', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4573 prosrc
=> 'numeric_exp' },
4574 { oid
=> '1733', descr
=> 'natural exponential (e^x)',
4575 proname
=> 'numeric_exp', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4576 prosrc
=> 'numeric_exp' },
4577 { oid
=> '1734', descr
=> 'natural logarithm',
4578 proname
=> 'ln', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4579 prosrc
=> 'numeric_ln' },
4580 { oid
=> '1735', descr
=> 'natural logarithm',
4581 proname
=> 'numeric_ln', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4582 prosrc
=> 'numeric_ln' },
4583 { oid
=> '1736', descr
=> 'logarithm base m of n',
4584 proname
=> 'log', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4585 prosrc
=> 'numeric_log' },
4586 { oid
=> '1737', descr
=> 'logarithm base m of n',
4587 proname
=> 'numeric_log', prorettype
=> 'numeric',
4588 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_log' },
4589 { oid
=> '1738', descr
=> 'exponentiation',
4590 proname
=> 'pow', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4591 prosrc
=> 'numeric_power' },
4592 { oid
=> '2169', descr
=> 'exponentiation',
4593 proname
=> 'power', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4594 prosrc
=> 'numeric_power' },
4596 proname
=> 'numeric_power', prorettype
=> 'numeric',
4597 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_power' },
4598 { oid
=> '3281', descr
=> 'number of decimal digits in the fractional part',
4599 proname
=> 'scale', prorettype
=> 'int4', proargtypes
=> 'numeric',
4600 prosrc
=> 'numeric_scale' },
4601 { oid
=> '5042', descr
=> 'minimum scale needed to represent the value',
4602 proname
=> 'min_scale', prorettype
=> 'int4', proargtypes
=> 'numeric',
4603 prosrc
=> 'numeric_min_scale' },
4605 descr
=> 'numeric with minimum scale needed to represent the value',
4606 proname
=> 'trim_scale', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4607 prosrc
=> 'numeric_trim_scale' },
4608 { oid
=> '1740', descr
=> 'convert int4 to numeric',
4609 proname
=> 'numeric', proleakproof
=> 't', prorettype
=> 'numeric',
4610 proargtypes
=> 'int4', prosrc
=> 'int4_numeric' },
4611 { oid
=> '1741', descr
=> 'base 10 logarithm',
4612 proname
=> 'log', prolang
=> 'sql', prorettype
=> 'numeric',
4613 proargtypes
=> 'numeric', prosrc
=> 'see system_functions.sql' },
4614 { oid
=> '1481', descr
=> 'base 10 logarithm',
4615 proname
=> 'log10', prolang
=> 'sql', prorettype
=> 'numeric',
4616 proargtypes
=> 'numeric', prosrc
=> 'see system_functions.sql' },
4617 { oid
=> '1742', descr
=> 'convert float4 to numeric',
4618 proname
=> 'numeric', proleakproof
=> 't', prorettype
=> 'numeric',
4619 proargtypes
=> 'float4', prosrc
=> 'float4_numeric' },
4620 { oid
=> '1743', descr
=> 'convert float8 to numeric',
4621 proname
=> 'numeric', proleakproof
=> 't', prorettype
=> 'numeric',
4622 proargtypes
=> 'float8', prosrc
=> 'float8_numeric' },
4623 { oid
=> '1744', descr
=> 'convert numeric to int4',
4624 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'numeric',
4625 prosrc
=> 'numeric_int4' },
4626 { oid
=> '1745', descr
=> 'convert numeric to float4',
4627 proname
=> 'float4', prorettype
=> 'float4', proargtypes
=> 'numeric',
4628 prosrc
=> 'numeric_float4' },
4629 { oid
=> '1746', descr
=> 'convert numeric to float8',
4630 proname
=> 'float8', prorettype
=> 'float8', proargtypes
=> 'numeric',
4631 prosrc
=> 'numeric_float8' },
4632 { oid
=> '1973', descr
=> 'trunc(x/y)',
4633 proname
=> 'div', prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
4634 prosrc
=> 'numeric_div_trunc' },
4635 { oid
=> '1980', descr
=> 'trunc(x/y)',
4636 proname
=> 'numeric_div_trunc', prorettype
=> 'numeric',
4637 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_div_trunc' },
4638 { oid
=> '2170', descr
=> 'bucket number of operand in equal-width histogram',
4639 proname
=> 'width_bucket', prorettype
=> 'int4',
4640 proargtypes
=> 'numeric numeric numeric int4',
4641 prosrc
=> 'width_bucket_numeric' },
4644 proname
=> 'time_pl_interval', prorettype
=> 'time',
4645 proargtypes
=> 'time interval', prosrc
=> 'time_pl_interval' },
4647 proname
=> 'time_mi_interval', prorettype
=> 'time',
4648 proargtypes
=> 'time interval', prosrc
=> 'time_mi_interval' },
4650 proname
=> 'timetz_pl_interval', prorettype
=> 'timetz',
4651 proargtypes
=> 'timetz interval', prosrc
=> 'timetz_pl_interval' },
4653 proname
=> 'timetz_mi_interval', prorettype
=> 'timetz',
4654 proargtypes
=> 'timetz interval', prosrc
=> 'timetz_mi_interval' },
4656 { oid
=> '1764', descr
=> 'increment by one',
4657 proname
=> 'numeric_inc', prorettype
=> 'numeric', proargtypes
=> 'numeric',
4658 prosrc
=> 'numeric_inc' },
4659 { oid
=> '1766', descr
=> 'smaller of two',
4660 proname
=> 'numeric_smaller', prorettype
=> 'numeric',
4661 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_smaller' },
4662 { oid
=> '1767', descr
=> 'larger of two',
4663 proname
=> 'numeric_larger', prorettype
=> 'numeric',
4664 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_larger' },
4665 { oid
=> '1769', descr
=> 'less-equal-greater',
4666 proname
=> 'numeric_cmp', prorettype
=> 'int4',
4667 proargtypes
=> 'numeric numeric', prosrc
=> 'numeric_cmp' },
4668 { oid
=> '3283', descr
=> 'sort support',
4669 proname
=> 'numeric_sortsupport', prorettype
=> 'void',
4670 proargtypes
=> 'internal', prosrc
=> 'numeric_sortsupport' },
4672 proname
=> 'numeric_uminus', prorettype
=> 'numeric',
4673 proargtypes
=> 'numeric', prosrc
=> 'numeric_uminus' },
4674 { oid
=> '1779', descr
=> 'convert numeric to int8',
4675 proname
=> 'int8', prorettype
=> 'int8', proargtypes
=> 'numeric',
4676 prosrc
=> 'numeric_int8' },
4677 { oid
=> '1781', descr
=> 'convert int8 to numeric',
4678 proname
=> 'numeric', proleakproof
=> 't', prorettype
=> 'numeric',
4679 proargtypes
=> 'int8', prosrc
=> 'int8_numeric' },
4680 { oid
=> '1782', descr
=> 'convert int2 to numeric',
4681 proname
=> 'numeric', proleakproof
=> 't', prorettype
=> 'numeric',
4682 proargtypes
=> 'int2', prosrc
=> 'int2_numeric' },
4683 { oid
=> '1783', descr
=> 'convert numeric to int2',
4684 proname
=> 'int2', prorettype
=> 'int2', proargtypes
=> 'numeric',
4685 prosrc
=> 'numeric_int2' },
4686 { oid
=> '6103', descr
=> 'convert numeric to pg_lsn',
4687 proname
=> 'pg_lsn', prorettype
=> 'pg_lsn', proargtypes
=> 'numeric',
4688 prosrc
=> 'numeric_pg_lsn' },
4690 { oid
=> '3556', descr
=> 'convert jsonb to boolean',
4691 proname
=> 'bool', prorettype
=> 'bool', proargtypes
=> 'jsonb',
4692 prosrc
=> 'jsonb_bool' },
4693 { oid
=> '3449', descr
=> 'convert jsonb to numeric',
4694 proname
=> 'numeric', prorettype
=> 'numeric', proargtypes
=> 'jsonb',
4695 prosrc
=> 'jsonb_numeric' },
4696 { oid
=> '3450', descr
=> 'convert jsonb to int2',
4697 proname
=> 'int2', prorettype
=> 'int2', proargtypes
=> 'jsonb',
4698 prosrc
=> 'jsonb_int2' },
4699 { oid
=> '3451', descr
=> 'convert jsonb to int4',
4700 proname
=> 'int4', prorettype
=> 'int4', proargtypes
=> 'jsonb',
4701 prosrc
=> 'jsonb_int4' },
4702 { oid
=> '3452', descr
=> 'convert jsonb to int8',
4703 proname
=> 'int8', prorettype
=> 'int8', proargtypes
=> 'jsonb',
4704 prosrc
=> 'jsonb_int8' },
4705 { oid
=> '3453', descr
=> 'convert jsonb to float4',
4706 proname
=> 'float4', prorettype
=> 'float4', proargtypes
=> 'jsonb',
4707 prosrc
=> 'jsonb_float4' },
4708 { oid
=> '2580', descr
=> 'convert jsonb to float8',
4709 proname
=> 'float8', prorettype
=> 'float8', proargtypes
=> 'jsonb',
4710 prosrc
=> 'jsonb_float8' },
4713 { oid
=> '1770', descr
=> 'format timestamp with time zone to text',
4714 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4715 proargtypes
=> 'timestamptz text', prosrc
=> 'timestamptz_to_char' },
4716 { oid
=> '1772', descr
=> 'format numeric to text',
4717 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4718 proargtypes
=> 'numeric text', prosrc
=> 'numeric_to_char' },
4719 { oid
=> '1773', descr
=> 'format int4 to text',
4720 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4721 proargtypes
=> 'int4 text', prosrc
=> 'int4_to_char' },
4722 { oid
=> '1774', descr
=> 'format int8 to text',
4723 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4724 proargtypes
=> 'int8 text', prosrc
=> 'int8_to_char' },
4725 { oid
=> '1775', descr
=> 'format float4 to text',
4726 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4727 proargtypes
=> 'float4 text', prosrc
=> 'float4_to_char' },
4728 { oid
=> '1776', descr
=> 'format float8 to text',
4729 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4730 proargtypes
=> 'float8 text', prosrc
=> 'float8_to_char' },
4731 { oid
=> '1777', descr
=> 'convert text to numeric',
4732 proname
=> 'to_number', provolatile
=> 's', prorettype
=> 'numeric',
4733 proargtypes
=> 'text text', prosrc
=> 'numeric_to_number' },
4734 { oid
=> '1778', descr
=> 'convert text to timestamp with time zone',
4735 proname
=> 'to_timestamp', provolatile
=> 's', prorettype
=> 'timestamptz',
4736 proargtypes
=> 'text text', prosrc
=> 'to_timestamp' },
4737 { oid
=> '1780', descr
=> 'convert text to date',
4738 proname
=> 'to_date', provolatile
=> 's', prorettype
=> 'date',
4739 proargtypes
=> 'text text', prosrc
=> 'to_date' },
4740 { oid
=> '1768', descr
=> 'format interval to text',
4741 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
4742 proargtypes
=> 'interval text', prosrc
=> 'interval_to_char' },
4744 { oid
=> '1282', descr
=> 'quote an identifier for usage in a querystring',
4745 proname
=> 'quote_ident', prorettype
=> 'text', proargtypes
=> 'text',
4746 prosrc
=> 'quote_ident' },
4747 { oid
=> '1283', descr
=> 'quote a literal for usage in a querystring',
4748 proname
=> 'quote_literal', prorettype
=> 'text', proargtypes
=> 'text',
4749 prosrc
=> 'quote_literal' },
4750 { oid
=> '1285', descr
=> 'quote a data value for usage in a querystring',
4751 proname
=> 'quote_literal', prolang
=> 'sql', provolatile
=> 's',
4752 prorettype
=> 'text', proargtypes
=> 'anyelement',
4753 prosrc
=> 'select pg_catalog.quote_literal($1::pg_catalog.text)' },
4755 descr
=> 'quote a possibly-null literal for usage in a querystring',
4756 proname
=> 'quote_nullable', proisstrict
=> 'f', prorettype
=> 'text',
4757 proargtypes
=> 'text', prosrc
=> 'quote_nullable' },
4759 descr
=> 'quote a possibly-null data value for usage in a querystring',
4760 proname
=> 'quote_nullable', prolang
=> 'sql', proisstrict
=> 'f',
4761 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'anyelement',
4762 prosrc
=> 'select pg_catalog.quote_nullable($1::pg_catalog.text)' },
4764 { oid
=> '1798', descr
=> 'I/O',
4765 proname
=> 'oidin', prorettype
=> 'oid', proargtypes
=> 'cstring',
4766 prosrc
=> 'oidin' },
4767 { oid
=> '1799', descr
=> 'I/O',
4768 proname
=> 'oidout', prorettype
=> 'cstring', proargtypes
=> 'oid',
4769 prosrc
=> 'oidout' },
4771 { oid
=> '3058', descr
=> 'concatenate values',
4772 proname
=> 'concat', provariadic
=> 'any', proisstrict
=> 'f',
4773 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'any',
4774 proallargtypes
=> '{any}', proargmodes
=> '{v}', prosrc
=> 'text_concat' },
4775 { oid
=> '3059', descr
=> 'concatenate values with separators',
4776 proname
=> 'concat_ws', provariadic
=> 'any', proisstrict
=> 'f',
4777 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'text any',
4778 proallargtypes
=> '{text,any}', proargmodes
=> '{i,v}',
4779 prosrc
=> 'text_concat_ws' },
4780 { oid
=> '3060', descr
=> 'extract the first n characters',
4781 proname
=> 'left', prorettype
=> 'text', proargtypes
=> 'text int4',
4782 prosrc
=> 'text_left' },
4783 { oid
=> '3061', descr
=> 'extract the last n characters',
4784 proname
=> 'right', prorettype
=> 'text', proargtypes
=> 'text int4',
4785 prosrc
=> 'text_right' },
4786 { oid
=> '3062', descr
=> 'reverse text',
4787 proname
=> 'reverse', prorettype
=> 'text', proargtypes
=> 'text',
4788 prosrc
=> 'text_reverse' },
4789 { oid
=> '3539', descr
=> 'format text message',
4790 proname
=> 'format', provariadic
=> 'any', proisstrict
=> 'f',
4791 provolatile
=> 's', prorettype
=> 'text', proargtypes
=> 'text any',
4792 proallargtypes
=> '{text,any}', proargmodes
=> '{i,v}',
4793 prosrc
=> 'text_format' },
4794 { oid
=> '3540', descr
=> 'format text message',
4795 proname
=> 'format', proisstrict
=> 'f', provolatile
=> 's',
4796 prorettype
=> 'text', proargtypes
=> 'text', prosrc
=> 'text_format_nv' },
4798 { oid
=> '1810', descr
=> 'length in bits',
4799 proname
=> 'bit_length', prolang
=> 'sql', prorettype
=> 'int4',
4800 proargtypes
=> 'bytea', prosrc
=> 'see system_functions.sql' },
4801 { oid
=> '1811', descr
=> 'length in bits',
4802 proname
=> 'bit_length', prolang
=> 'sql', prorettype
=> 'int4',
4803 proargtypes
=> 'text', prosrc
=> 'see system_functions.sql' },
4804 { oid
=> '1812', descr
=> 'length in bits',
4805 proname
=> 'bit_length', prolang
=> 'sql', prorettype
=> 'int4',
4806 proargtypes
=> 'bit', prosrc
=> 'see system_functions.sql' },
4808 # Selectivity estimators for LIKE and related operators
4809 { oid
=> '1814', descr
=> 'restriction selectivity of ILIKE',
4810 proname
=> 'iclikesel', provolatile
=> 's', prorettype
=> 'float8',
4811 proargtypes
=> 'internal oid internal int4', prosrc
=> 'iclikesel' },
4812 { oid
=> '1815', descr
=> 'restriction selectivity of NOT ILIKE',
4813 proname
=> 'icnlikesel', provolatile
=> 's', prorettype
=> 'float8',
4814 proargtypes
=> 'internal oid internal int4', prosrc
=> 'icnlikesel' },
4815 { oid
=> '1816', descr
=> 'join selectivity of ILIKE',
4816 proname
=> 'iclikejoinsel', provolatile
=> 's', prorettype
=> 'float8',
4817 proargtypes
=> 'internal oid internal int2 internal',
4818 prosrc
=> 'iclikejoinsel' },
4819 { oid
=> '1817', descr
=> 'join selectivity of NOT ILIKE',
4820 proname
=> 'icnlikejoinsel', provolatile
=> 's', prorettype
=> 'float8',
4821 proargtypes
=> 'internal oid internal int2 internal',
4822 prosrc
=> 'icnlikejoinsel' },
4823 { oid
=> '1818', descr
=> 'restriction selectivity of regex match',
4824 proname
=> 'regexeqsel', provolatile
=> 's', prorettype
=> 'float8',
4825 proargtypes
=> 'internal oid internal int4', prosrc
=> 'regexeqsel' },
4826 { oid
=> '1819', descr
=> 'restriction selectivity of LIKE',
4827 proname
=> 'likesel', provolatile
=> 's', prorettype
=> 'float8',
4828 proargtypes
=> 'internal oid internal int4', prosrc
=> 'likesel' },
4830 descr
=> 'restriction selectivity of case-insensitive regex match',
4831 proname
=> 'icregexeqsel', provolatile
=> 's', prorettype
=> 'float8',
4832 proargtypes
=> 'internal oid internal int4', prosrc
=> 'icregexeqsel' },
4833 { oid
=> '1821', descr
=> 'restriction selectivity of regex non-match',
4834 proname
=> 'regexnesel', provolatile
=> 's', prorettype
=> 'float8',
4835 proargtypes
=> 'internal oid internal int4', prosrc
=> 'regexnesel' },
4836 { oid
=> '1822', descr
=> 'restriction selectivity of NOT LIKE',
4837 proname
=> 'nlikesel', provolatile
=> 's', prorettype
=> 'float8',
4838 proargtypes
=> 'internal oid internal int4', prosrc
=> 'nlikesel' },
4840 descr
=> 'restriction selectivity of case-insensitive regex non-match',
4841 proname
=> 'icregexnesel', provolatile
=> 's', prorettype
=> 'float8',
4842 proargtypes
=> 'internal oid internal int4', prosrc
=> 'icregexnesel' },
4843 { oid
=> '1824', descr
=> 'join selectivity of regex match',
4844 proname
=> 'regexeqjoinsel', provolatile
=> 's', prorettype
=> 'float8',
4845 proargtypes
=> 'internal oid internal int2 internal',
4846 prosrc
=> 'regexeqjoinsel' },
4847 { oid
=> '1825', descr
=> 'join selectivity of LIKE',
4848 proname
=> 'likejoinsel', provolatile
=> 's', prorettype
=> 'float8',
4849 proargtypes
=> 'internal oid internal int2 internal',
4850 prosrc
=> 'likejoinsel' },
4851 { oid
=> '1826', descr
=> 'join selectivity of case-insensitive regex match',
4852 proname
=> 'icregexeqjoinsel', provolatile
=> 's', prorettype
=> 'float8',
4853 proargtypes
=> 'internal oid internal int2 internal',
4854 prosrc
=> 'icregexeqjoinsel' },
4855 { oid
=> '1827', descr
=> 'join selectivity of regex non-match',
4856 proname
=> 'regexnejoinsel', provolatile
=> 's', prorettype
=> 'float8',
4857 proargtypes
=> 'internal oid internal int2 internal',
4858 prosrc
=> 'regexnejoinsel' },
4859 { oid
=> '1828', descr
=> 'join selectivity of NOT LIKE',
4860 proname
=> 'nlikejoinsel', provolatile
=> 's', prorettype
=> 'float8',
4861 proargtypes
=> 'internal oid internal int2 internal',
4862 prosrc
=> 'nlikejoinsel' },
4864 descr
=> 'join selectivity of case-insensitive regex non-match',
4865 proname
=> 'icregexnejoinsel', provolatile
=> 's', prorettype
=> 'float8',
4866 proargtypes
=> 'internal oid internal int2 internal',
4867 prosrc
=> 'icregexnejoinsel' },
4868 { oid
=> '3437', descr
=> 'restriction selectivity of exact prefix',
4869 proname
=> 'prefixsel', provolatile
=> 's', prorettype
=> 'float8',
4870 proargtypes
=> 'internal oid internal int4', prosrc
=> 'prefixsel' },
4871 { oid
=> '3438', descr
=> 'join selectivity of exact prefix',
4872 proname
=> 'prefixjoinsel', provolatile
=> 's', prorettype
=> 'float8',
4873 proargtypes
=> 'internal oid internal int2 internal',
4874 prosrc
=> 'prefixjoinsel' },
4876 # Aggregate-related functions
4877 { oid
=> '1830', descr
=> 'aggregate final function',
4878 proname
=> 'float8_avg', prorettype
=> 'float8', proargtypes
=> '_float8',
4879 prosrc
=> 'float8_avg' },
4880 { oid
=> '2512', descr
=> 'aggregate final function',
4881 proname
=> 'float8_var_pop', prorettype
=> 'float8', proargtypes
=> '_float8',
4882 prosrc
=> 'float8_var_pop' },
4883 { oid
=> '1831', descr
=> 'aggregate final function',
4884 proname
=> 'float8_var_samp', prorettype
=> 'float8',
4885 proargtypes
=> '_float8', prosrc
=> 'float8_var_samp' },
4886 { oid
=> '2513', descr
=> 'aggregate final function',
4887 proname
=> 'float8_stddev_pop', prorettype
=> 'float8',
4888 proargtypes
=> '_float8', prosrc
=> 'float8_stddev_pop' },
4889 { oid
=> '1832', descr
=> 'aggregate final function',
4890 proname
=> 'float8_stddev_samp', prorettype
=> 'float8',
4891 proargtypes
=> '_float8', prosrc
=> 'float8_stddev_samp' },
4892 { oid
=> '1833', descr
=> 'aggregate transition function',
4893 proname
=> 'numeric_accum', proisstrict
=> 'f', prorettype
=> 'internal',
4894 proargtypes
=> 'internal numeric', prosrc
=> 'numeric_accum' },
4895 { oid
=> '3341', descr
=> 'aggregate combine function',
4896 proname
=> 'numeric_combine', proisstrict
=> 'f', prorettype
=> 'internal',
4897 proargtypes
=> 'internal internal', prosrc
=> 'numeric_combine' },
4898 { oid
=> '2858', descr
=> 'aggregate transition function',
4899 proname
=> 'numeric_avg_accum', proisstrict
=> 'f', prorettype
=> 'internal',
4900 proargtypes
=> 'internal numeric', prosrc
=> 'numeric_avg_accum' },
4901 { oid
=> '3337', descr
=> 'aggregate combine function',
4902 proname
=> 'numeric_avg_combine', proisstrict
=> 'f',
4903 prorettype
=> 'internal', proargtypes
=> 'internal internal',
4904 prosrc
=> 'numeric_avg_combine' },
4905 { oid
=> '2740', descr
=> 'aggregate serial function',
4906 proname
=> 'numeric_avg_serialize', prorettype
=> 'bytea',
4907 proargtypes
=> 'internal', prosrc
=> 'numeric_avg_serialize' },
4908 { oid
=> '2741', descr
=> 'aggregate deserial function',
4909 proname
=> 'numeric_avg_deserialize', prorettype
=> 'internal',
4910 proargtypes
=> 'bytea internal', prosrc
=> 'numeric_avg_deserialize' },
4911 { oid
=> '3335', descr
=> 'aggregate serial function',
4912 proname
=> 'numeric_serialize', prorettype
=> 'bytea',
4913 proargtypes
=> 'internal', prosrc
=> 'numeric_serialize' },
4914 { oid
=> '3336', descr
=> 'aggregate deserial function',
4915 proname
=> 'numeric_deserialize', prorettype
=> 'internal',
4916 proargtypes
=> 'bytea internal', prosrc
=> 'numeric_deserialize' },
4917 { oid
=> '3548', descr
=> 'aggregate transition function',
4918 proname
=> 'numeric_accum_inv', proisstrict
=> 'f', prorettype
=> 'internal',
4919 proargtypes
=> 'internal numeric', prosrc
=> 'numeric_accum_inv' },
4920 { oid
=> '1834', descr
=> 'aggregate transition function',
4921 proname
=> 'int2_accum', proisstrict
=> 'f', prorettype
=> 'internal',
4922 proargtypes
=> 'internal int2', prosrc
=> 'int2_accum' },
4923 { oid
=> '1835', descr
=> 'aggregate transition function',
4924 proname
=> 'int4_accum', proisstrict
=> 'f', prorettype
=> 'internal',
4925 proargtypes
=> 'internal int4', prosrc
=> 'int4_accum' },
4926 { oid
=> '1836', descr
=> 'aggregate transition function',
4927 proname
=> 'int8_accum', proisstrict
=> 'f', prorettype
=> 'internal',
4928 proargtypes
=> 'internal int8', prosrc
=> 'int8_accum' },
4929 { oid
=> '3338', descr
=> 'aggregate combine function',
4930 proname
=> 'numeric_poly_combine', proisstrict
=> 'f',
4931 prorettype
=> 'internal', proargtypes
=> 'internal internal',
4932 prosrc
=> 'numeric_poly_combine' },
4933 { oid
=> '3339', descr
=> 'aggregate serial function',
4934 proname
=> 'numeric_poly_serialize', prorettype
=> 'bytea',
4935 proargtypes
=> 'internal', prosrc
=> 'numeric_poly_serialize' },
4936 { oid
=> '3340', descr
=> 'aggregate deserial function',
4937 proname
=> 'numeric_poly_deserialize', prorettype
=> 'internal',
4938 proargtypes
=> 'bytea internal', prosrc
=> 'numeric_poly_deserialize' },
4939 { oid
=> '2746', descr
=> 'aggregate transition function',
4940 proname
=> 'int8_avg_accum', proisstrict
=> 'f', prorettype
=> 'internal',
4941 proargtypes
=> 'internal int8', prosrc
=> 'int8_avg_accum' },
4942 { oid
=> '3567', descr
=> 'aggregate transition function',
4943 proname
=> 'int2_accum_inv', proisstrict
=> 'f', prorettype
=> 'internal',
4944 proargtypes
=> 'internal int2', prosrc
=> 'int2_accum_inv' },
4945 { oid
=> '3568', descr
=> 'aggregate transition function',
4946 proname
=> 'int4_accum_inv', proisstrict
=> 'f', prorettype
=> 'internal',
4947 proargtypes
=> 'internal int4', prosrc
=> 'int4_accum_inv' },
4948 { oid
=> '3569', descr
=> 'aggregate transition function',
4949 proname
=> 'int8_accum_inv', proisstrict
=> 'f', prorettype
=> 'internal',
4950 proargtypes
=> 'internal int8', prosrc
=> 'int8_accum_inv' },
4951 { oid
=> '3387', descr
=> 'aggregate transition function',
4952 proname
=> 'int8_avg_accum_inv', proisstrict
=> 'f', prorettype
=> 'internal',
4953 proargtypes
=> 'internal int8', prosrc
=> 'int8_avg_accum_inv' },
4954 { oid
=> '2785', descr
=> 'aggregate combine function',
4955 proname
=> 'int8_avg_combine', proisstrict
=> 'f', prorettype
=> 'internal',
4956 proargtypes
=> 'internal internal', prosrc
=> 'int8_avg_combine' },
4957 { oid
=> '2786', descr
=> 'aggregate serial function',
4958 proname
=> 'int8_avg_serialize', prorettype
=> 'bytea',
4959 proargtypes
=> 'internal', prosrc
=> 'int8_avg_serialize' },
4960 { oid
=> '2787', descr
=> 'aggregate deserial function',
4961 proname
=> 'int8_avg_deserialize', prorettype
=> 'internal',
4962 proargtypes
=> 'bytea internal', prosrc
=> 'int8_avg_deserialize' },
4963 { oid
=> '3324', descr
=> 'aggregate combine function',
4964 proname
=> 'int4_avg_combine', prorettype
=> '_int8',
4965 proargtypes
=> '_int8 _int8', prosrc
=> 'int4_avg_combine' },
4966 { oid
=> '3178', descr
=> 'aggregate final function',
4967 proname
=> 'numeric_sum', proisstrict
=> 'f', prorettype
=> 'numeric',
4968 proargtypes
=> 'internal', prosrc
=> 'numeric_sum' },
4969 { oid
=> '1837', descr
=> 'aggregate final function',
4970 proname
=> 'numeric_avg', proisstrict
=> 'f', prorettype
=> 'numeric',
4971 proargtypes
=> 'internal', prosrc
=> 'numeric_avg' },
4972 { oid
=> '2514', descr
=> 'aggregate final function',
4973 proname
=> 'numeric_var_pop', proisstrict
=> 'f', prorettype
=> 'numeric',
4974 proargtypes
=> 'internal', prosrc
=> 'numeric_var_pop' },
4975 { oid
=> '1838', descr
=> 'aggregate final function',
4976 proname
=> 'numeric_var_samp', proisstrict
=> 'f', prorettype
=> 'numeric',
4977 proargtypes
=> 'internal', prosrc
=> 'numeric_var_samp' },
4978 { oid
=> '2596', descr
=> 'aggregate final function',
4979 proname
=> 'numeric_stddev_pop', proisstrict
=> 'f', prorettype
=> 'numeric',
4980 proargtypes
=> 'internal', prosrc
=> 'numeric_stddev_pop' },
4981 { oid
=> '1839', descr
=> 'aggregate final function',
4982 proname
=> 'numeric_stddev_samp', proisstrict
=> 'f', prorettype
=> 'numeric',
4983 proargtypes
=> 'internal', prosrc
=> 'numeric_stddev_samp' },
4984 { oid
=> '1840', descr
=> 'aggregate transition function',
4985 proname
=> 'int2_sum', proisstrict
=> 'f', prorettype
=> 'int8',
4986 proargtypes
=> 'int8 int2', prosrc
=> 'int2_sum' },
4987 { oid
=> '1841', descr
=> 'aggregate transition function',
4988 proname
=> 'int4_sum', proisstrict
=> 'f', prorettype
=> 'int8',
4989 proargtypes
=> 'int8 int4', prosrc
=> 'int4_sum' },
4990 { oid
=> '1842', descr
=> 'aggregate transition function',
4991 proname
=> 'int8_sum', proisstrict
=> 'f', prorettype
=> 'numeric',
4992 proargtypes
=> 'numeric int8', prosrc
=> 'int8_sum' },
4993 { oid
=> '3388', descr
=> 'aggregate final function',
4994 proname
=> 'numeric_poly_sum', proisstrict
=> 'f', prorettype
=> 'numeric',
4995 proargtypes
=> 'internal', prosrc
=> 'numeric_poly_sum' },
4996 { oid
=> '3389', descr
=> 'aggregate final function',
4997 proname
=> 'numeric_poly_avg', proisstrict
=> 'f', prorettype
=> 'numeric',
4998 proargtypes
=> 'internal', prosrc
=> 'numeric_poly_avg' },
4999 { oid
=> '3390', descr
=> 'aggregate final function',
5000 proname
=> 'numeric_poly_var_pop', proisstrict
=> 'f',
5001 prorettype
=> 'numeric', proargtypes
=> 'internal',
5002 prosrc
=> 'numeric_poly_var_pop' },
5003 { oid
=> '3391', descr
=> 'aggregate final function',
5004 proname
=> 'numeric_poly_var_samp', proisstrict
=> 'f',
5005 prorettype
=> 'numeric', proargtypes
=> 'internal',
5006 prosrc
=> 'numeric_poly_var_samp' },
5007 { oid
=> '3392', descr
=> 'aggregate final function',
5008 proname
=> 'numeric_poly_stddev_pop', proisstrict
=> 'f',
5009 prorettype
=> 'numeric', proargtypes
=> 'internal',
5010 prosrc
=> 'numeric_poly_stddev_pop' },
5011 { oid
=> '3393', descr
=> 'aggregate final function',
5012 proname
=> 'numeric_poly_stddev_samp', proisstrict
=> 'f',
5013 prorettype
=> 'numeric', proargtypes
=> 'internal',
5014 prosrc
=> 'numeric_poly_stddev_samp' },
5016 { oid
=> '1843', descr
=> 'aggregate transition function',
5017 proname
=> 'interval_avg_accum', proisstrict
=> 'f', prorettype
=> 'internal',
5018 proargtypes
=> 'internal interval', prosrc
=> 'interval_avg_accum' },
5019 { oid
=> '3325', descr
=> 'aggregate combine function',
5020 proname
=> 'interval_avg_combine', proisstrict
=> 'f',
5021 prorettype
=> 'internal', proargtypes
=> 'internal internal',
5022 prosrc
=> 'interval_avg_combine' },
5023 { oid
=> '3549', descr
=> 'aggregate transition function',
5024 proname
=> 'interval_avg_accum_inv', proisstrict
=> 'f',
5025 prorettype
=> 'internal', proargtypes
=> 'internal interval',
5026 prosrc
=> 'interval_avg_accum_inv' },
5027 { oid
=> '6324', descr
=> 'aggregate serial function',
5028 proname
=> 'interval_avg_serialize', prorettype
=> 'bytea',
5029 proargtypes
=> 'internal', prosrc
=> 'interval_avg_serialize' },
5030 { oid
=> '6325', descr
=> 'aggregate deserial function',
5031 proname
=> 'interval_avg_deserialize', prorettype
=> 'internal',
5032 proargtypes
=> 'bytea internal', prosrc
=> 'interval_avg_deserialize' },
5033 { oid
=> '1844', descr
=> 'aggregate final function',
5034 proname
=> 'interval_avg', proisstrict
=> 'f', prorettype
=> 'interval',
5035 proargtypes
=> 'internal', prosrc
=> 'interval_avg' },
5036 { oid
=> '6326', descr
=> 'aggregate final function',
5037 proname
=> 'interval_sum', proisstrict
=> 'f', prorettype
=> 'interval',
5038 proargtypes
=> 'internal', prosrc
=> 'interval_sum' },
5039 { oid
=> '1962', descr
=> 'aggregate transition function',
5040 proname
=> 'int2_avg_accum', prorettype
=> '_int8',
5041 proargtypes
=> '_int8 int2', prosrc
=> 'int2_avg_accum' },
5042 { oid
=> '1963', descr
=> 'aggregate transition function',
5043 proname
=> 'int4_avg_accum', prorettype
=> '_int8',
5044 proargtypes
=> '_int8 int4', prosrc
=> 'int4_avg_accum' },
5045 { oid
=> '3570', descr
=> 'aggregate transition function',
5046 proname
=> 'int2_avg_accum_inv', prorettype
=> '_int8',
5047 proargtypes
=> '_int8 int2', prosrc
=> 'int2_avg_accum_inv' },
5048 { oid
=> '3571', descr
=> 'aggregate transition function',
5049 proname
=> 'int4_avg_accum_inv', prorettype
=> '_int8',
5050 proargtypes
=> '_int8 int4', prosrc
=> 'int4_avg_accum_inv' },
5051 { oid
=> '1964', descr
=> 'aggregate final function',
5052 proname
=> 'int8_avg', prorettype
=> 'numeric', proargtypes
=> '_int8',
5053 prosrc
=> 'int8_avg' },
5054 { oid
=> '3572', descr
=> 'aggregate final function',
5055 proname
=> 'int2int4_sum', prorettype
=> 'int8', proargtypes
=> '_int8',
5056 prosrc
=> 'int2int4_sum' },
5057 { oid
=> '2805', descr
=> 'aggregate transition function',
5058 proname
=> 'int8inc_float8_float8', prorettype
=> 'int8',
5059 proargtypes
=> 'int8 float8 float8', prosrc
=> 'int8inc_float8_float8' },
5060 { oid
=> '2806', descr
=> 'aggregate transition function',
5061 proname
=> 'float8_regr_accum', prorettype
=> '_float8',
5062 proargtypes
=> '_float8 float8 float8', prosrc
=> 'float8_regr_accum' },
5063 { oid
=> '3342', descr
=> 'aggregate combine function',
5064 proname
=> 'float8_regr_combine', prorettype
=> '_float8',
5065 proargtypes
=> '_float8 _float8', prosrc
=> 'float8_regr_combine' },
5066 { oid
=> '2807', descr
=> 'aggregate final function',
5067 proname
=> 'float8_regr_sxx', prorettype
=> 'float8',
5068 proargtypes
=> '_float8', prosrc
=> 'float8_regr_sxx' },
5069 { oid
=> '2808', descr
=> 'aggregate final function',
5070 proname
=> 'float8_regr_syy', prorettype
=> 'float8',
5071 proargtypes
=> '_float8', prosrc
=> 'float8_regr_syy' },
5072 { oid
=> '2809', descr
=> 'aggregate final function',
5073 proname
=> 'float8_regr_sxy', prorettype
=> 'float8',
5074 proargtypes
=> '_float8', prosrc
=> 'float8_regr_sxy' },
5075 { oid
=> '2810', descr
=> 'aggregate final function',
5076 proname
=> 'float8_regr_avgx', prorettype
=> 'float8',
5077 proargtypes
=> '_float8', prosrc
=> 'float8_regr_avgx' },
5078 { oid
=> '2811', descr
=> 'aggregate final function',
5079 proname
=> 'float8_regr_avgy', prorettype
=> 'float8',
5080 proargtypes
=> '_float8', prosrc
=> 'float8_regr_avgy' },
5081 { oid
=> '2812', descr
=> 'aggregate final function',
5082 proname
=> 'float8_regr_r2', prorettype
=> 'float8', proargtypes
=> '_float8',
5083 prosrc
=> 'float8_regr_r2' },
5084 { oid
=> '2813', descr
=> 'aggregate final function',
5085 proname
=> 'float8_regr_slope', prorettype
=> 'float8',
5086 proargtypes
=> '_float8', prosrc
=> 'float8_regr_slope' },
5087 { oid
=> '2814', descr
=> 'aggregate final function',
5088 proname
=> 'float8_regr_intercept', prorettype
=> 'float8',
5089 proargtypes
=> '_float8', prosrc
=> 'float8_regr_intercept' },
5090 { oid
=> '2815', descr
=> 'aggregate final function',
5091 proname
=> 'float8_covar_pop', prorettype
=> 'float8',
5092 proargtypes
=> '_float8', prosrc
=> 'float8_covar_pop' },
5093 { oid
=> '2816', descr
=> 'aggregate final function',
5094 proname
=> 'float8_covar_samp', prorettype
=> 'float8',
5095 proargtypes
=> '_float8', prosrc
=> 'float8_covar_samp' },
5096 { oid
=> '2817', descr
=> 'aggregate final function',
5097 proname
=> 'float8_corr', prorettype
=> 'float8', proargtypes
=> '_float8',
5098 prosrc
=> 'float8_corr' },
5100 { oid
=> '3535', descr
=> 'aggregate transition function',
5101 proname
=> 'string_agg_transfn', proisstrict
=> 'f', prorettype
=> 'internal',
5102 proargtypes
=> 'internal text text', prosrc
=> 'string_agg_transfn' },
5103 { oid
=> '6299', descr
=> 'aggregate combine function',
5104 proname
=> 'string_agg_combine', proisstrict
=> 'f', prorettype
=> 'internal',
5105 proargtypes
=> 'internal internal', prosrc
=> 'string_agg_combine' },
5106 { oid
=> '6300', descr
=> 'aggregate serial function',
5107 proname
=> 'string_agg_serialize', prorettype
=> 'bytea',
5108 proargtypes
=> 'internal', prosrc
=> 'string_agg_serialize' },
5109 { oid
=> '6301', descr
=> 'aggregate deserial function',
5110 proname
=> 'string_agg_deserialize', prorettype
=> 'internal',
5111 proargtypes
=> 'bytea internal', prosrc
=> 'string_agg_deserialize' },
5112 { oid
=> '3536', descr
=> 'aggregate final function',
5113 proname
=> 'string_agg_finalfn', proisstrict
=> 'f', prorettype
=> 'text',
5114 proargtypes
=> 'internal', prosrc
=> 'string_agg_finalfn' },
5115 { oid
=> '3538', descr
=> 'concatenate aggregate input into a string',
5116 proname
=> 'string_agg', prokind
=> 'a', proisstrict
=> 'f',
5117 prorettype
=> 'text', proargtypes
=> 'text text',
5118 proargnames
=> '{value,delimiter}', prosrc
=> 'aggregate_dummy' },
5119 { oid
=> '3543', descr
=> 'aggregate transition function',
5120 proname
=> 'bytea_string_agg_transfn', proisstrict
=> 'f',
5121 prorettype
=> 'internal', proargtypes
=> 'internal bytea bytea',
5122 prosrc
=> 'bytea_string_agg_transfn' },
5123 { oid
=> '3544', descr
=> 'aggregate final function',
5124 proname
=> 'bytea_string_agg_finalfn', proisstrict
=> 'f',
5125 prorettype
=> 'bytea', proargtypes
=> 'internal',
5126 prosrc
=> 'bytea_string_agg_finalfn' },
5127 { oid
=> '3545', descr
=> 'concatenate aggregate input into a bytea',
5128 proname
=> 'string_agg', prokind
=> 'a', proisstrict
=> 'f',
5129 prorettype
=> 'bytea', proargtypes
=> 'bytea bytea',
5130 proargnames
=> '{value,delimiter}', prosrc
=> 'aggregate_dummy' },
5132 # To ASCII conversion
5133 { oid
=> '1845', descr
=> 'encode text from DB encoding to ASCII text',
5134 proname
=> 'to_ascii', prorettype
=> 'text', proargtypes
=> 'text',
5135 prosrc
=> 'to_ascii_default' },
5136 { oid
=> '1846', descr
=> 'encode text from encoding to ASCII text',
5137 proname
=> 'to_ascii', prorettype
=> 'text', proargtypes
=> 'text int4',
5138 prosrc
=> 'to_ascii_enc' },
5139 { oid
=> '1847', descr
=> 'encode text from encoding to ASCII text',
5140 proname
=> 'to_ascii', prorettype
=> 'text', proargtypes
=> 'text name',
5141 prosrc
=> 'to_ascii_encname' },
5144 proname
=> 'interval_pl_time', prolang
=> 'sql', prorettype
=> 'time',
5145 proargtypes
=> 'interval time', prosrc
=> 'see system_functions.sql' },
5148 proname
=> 'int28eq', proleakproof
=> 't', prorettype
=> 'bool',
5149 proargtypes
=> 'int2 int8', prosrc
=> 'int28eq' },
5151 proname
=> 'int28ne', proleakproof
=> 't', prorettype
=> 'bool',
5152 proargtypes
=> 'int2 int8', prosrc
=> 'int28ne' },
5154 proname
=> 'int28lt', proleakproof
=> 't', prorettype
=> 'bool',
5155 proargtypes
=> 'int2 int8', prosrc
=> 'int28lt' },
5157 proname
=> 'int28gt', proleakproof
=> 't', prorettype
=> 'bool',
5158 proargtypes
=> 'int2 int8', prosrc
=> 'int28gt' },
5160 proname
=> 'int28le', proleakproof
=> 't', prorettype
=> 'bool',
5161 proargtypes
=> 'int2 int8', prosrc
=> 'int28le' },
5163 proname
=> 'int28ge', proleakproof
=> 't', prorettype
=> 'bool',
5164 proargtypes
=> 'int2 int8', prosrc
=> 'int28ge' },
5167 proname
=> 'int82eq', proleakproof
=> 't', prorettype
=> 'bool',
5168 proargtypes
=> 'int8 int2', prosrc
=> 'int82eq' },
5170 proname
=> 'int82ne', proleakproof
=> 't', prorettype
=> 'bool',
5171 proargtypes
=> 'int8 int2', prosrc
=> 'int82ne' },
5173 proname
=> 'int82lt', proleakproof
=> 't', prorettype
=> 'bool',
5174 proargtypes
=> 'int8 int2', prosrc
=> 'int82lt' },
5176 proname
=> 'int82gt', proleakproof
=> 't', prorettype
=> 'bool',
5177 proargtypes
=> 'int8 int2', prosrc
=> 'int82gt' },
5179 proname
=> 'int82le', proleakproof
=> 't', prorettype
=> 'bool',
5180 proargtypes
=> 'int8 int2', prosrc
=> 'int82le' },
5182 proname
=> 'int82ge', proleakproof
=> 't', prorettype
=> 'bool',
5183 proargtypes
=> 'int8 int2', prosrc
=> 'int82ge' },
5186 proname
=> 'int2and', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
5187 prosrc
=> 'int2and' },
5189 proname
=> 'int2or', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
5190 prosrc
=> 'int2or' },
5192 proname
=> 'int2xor', prorettype
=> 'int2', proargtypes
=> 'int2 int2',
5193 prosrc
=> 'int2xor' },
5195 proname
=> 'int2not', prorettype
=> 'int2', proargtypes
=> 'int2',
5196 prosrc
=> 'int2not' },
5198 proname
=> 'int2shl', prorettype
=> 'int2', proargtypes
=> 'int2 int4',
5199 prosrc
=> 'int2shl' },
5201 proname
=> 'int2shr', prorettype
=> 'int2', proargtypes
=> 'int2 int4',
5202 prosrc
=> 'int2shr' },
5205 proname
=> 'int4and', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
5206 prosrc
=> 'int4and' },
5208 proname
=> 'int4or', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
5209 prosrc
=> 'int4or' },
5211 proname
=> 'int4xor', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
5212 prosrc
=> 'int4xor' },
5214 proname
=> 'int4not', prorettype
=> 'int4', proargtypes
=> 'int4',
5215 prosrc
=> 'int4not' },
5217 proname
=> 'int4shl', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
5218 prosrc
=> 'int4shl' },
5220 proname
=> 'int4shr', prorettype
=> 'int4', proargtypes
=> 'int4 int4',
5221 prosrc
=> 'int4shr' },
5224 proname
=> 'int8and', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
5225 prosrc
=> 'int8and' },
5227 proname
=> 'int8or', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
5228 prosrc
=> 'int8or' },
5230 proname
=> 'int8xor', prorettype
=> 'int8', proargtypes
=> 'int8 int8',
5231 prosrc
=> 'int8xor' },
5233 proname
=> 'int8not', prorettype
=> 'int8', proargtypes
=> 'int8',
5234 prosrc
=> 'int8not' },
5236 proname
=> 'int8shl', prorettype
=> 'int8', proargtypes
=> 'int8 int4',
5237 prosrc
=> 'int8shl' },
5239 proname
=> 'int8shr', prorettype
=> 'int8', proargtypes
=> 'int8 int4',
5240 prosrc
=> 'int8shr' },
5243 proname
=> 'int8up', prorettype
=> 'int8', proargtypes
=> 'int8',
5244 prosrc
=> 'int8up' },
5246 proname
=> 'int2up', prorettype
=> 'int2', proargtypes
=> 'int2',
5247 prosrc
=> 'int2up' },
5249 proname
=> 'int4up', prorettype
=> 'int4', proargtypes
=> 'int4',
5250 prosrc
=> 'int4up' },
5252 proname
=> 'float4up', prorettype
=> 'float4', proargtypes
=> 'float4',
5253 prosrc
=> 'float4up' },
5255 proname
=> 'float8up', prorettype
=> 'float8', proargtypes
=> 'float8',
5256 prosrc
=> 'float8up' },
5258 proname
=> 'numeric_uplus', prorettype
=> 'numeric', proargtypes
=> 'numeric',
5259 prosrc
=> 'numeric_uplus' },
5261 { oid
=> '1922', descr
=> 'user privilege on relation by username, rel name',
5262 proname
=> 'has_table_privilege', provolatile
=> 's', prorettype
=> 'bool',
5263 proargtypes
=> 'name text text', prosrc
=> 'has_table_privilege_name_name' },
5264 { oid
=> '1923', descr
=> 'user privilege on relation by username, rel oid',
5265 proname
=> 'has_table_privilege', provolatile
=> 's', prorettype
=> 'bool',
5266 proargtypes
=> 'name oid text', prosrc
=> 'has_table_privilege_name_id' },
5267 { oid
=> '1924', descr
=> 'user privilege on relation by user oid, rel name',
5268 proname
=> 'has_table_privilege', provolatile
=> 's', prorettype
=> 'bool',
5269 proargtypes
=> 'oid text text', prosrc
=> 'has_table_privilege_id_name' },
5270 { oid
=> '1925', descr
=> 'user privilege on relation by user oid, rel oid',
5271 proname
=> 'has_table_privilege', provolatile
=> 's', prorettype
=> 'bool',
5272 proargtypes
=> 'oid oid text', prosrc
=> 'has_table_privilege_id_id' },
5273 { oid
=> '1926', descr
=> 'current user privilege on relation by rel name',
5274 proname
=> 'has_table_privilege', provolatile
=> 's', prorettype
=> 'bool',
5275 proargtypes
=> 'text text', prosrc
=> 'has_table_privilege_name' },
5276 { oid
=> '1927', descr
=> 'current user privilege on relation by rel oid',
5277 proname
=> 'has_table_privilege', provolatile
=> 's', prorettype
=> 'bool',
5278 proargtypes
=> 'oid text', prosrc
=> 'has_table_privilege_id' },
5280 { oid
=> '2181', descr
=> 'user privilege on sequence by username, seq name',
5281 proname
=> 'has_sequence_privilege', provolatile
=> 's', prorettype
=> 'bool',
5282 proargtypes
=> 'name text text',
5283 prosrc
=> 'has_sequence_privilege_name_name' },
5284 { oid
=> '2182', descr
=> 'user privilege on sequence by username, seq oid',
5285 proname
=> 'has_sequence_privilege', provolatile
=> 's', prorettype
=> 'bool',
5286 proargtypes
=> 'name oid text', prosrc
=> 'has_sequence_privilege_name_id' },
5287 { oid
=> '2183', descr
=> 'user privilege on sequence by user oid, seq name',
5288 proname
=> 'has_sequence_privilege', provolatile
=> 's', prorettype
=> 'bool',
5289 proargtypes
=> 'oid text text', prosrc
=> 'has_sequence_privilege_id_name' },
5290 { oid
=> '2184', descr
=> 'user privilege on sequence by user oid, seq oid',
5291 proname
=> 'has_sequence_privilege', provolatile
=> 's', prorettype
=> 'bool',
5292 proargtypes
=> 'oid oid text', prosrc
=> 'has_sequence_privilege_id_id' },
5293 { oid
=> '2185', descr
=> 'current user privilege on sequence by seq name',
5294 proname
=> 'has_sequence_privilege', provolatile
=> 's', prorettype
=> 'bool',
5295 proargtypes
=> 'text text', prosrc
=> 'has_sequence_privilege_name' },
5296 { oid
=> '2186', descr
=> 'current user privilege on sequence by seq oid',
5297 proname
=> 'has_sequence_privilege', provolatile
=> 's', prorettype
=> 'bool',
5298 proargtypes
=> 'oid text', prosrc
=> 'has_sequence_privilege_id' },
5301 descr
=> 'user privilege on column by username, rel name, col name',
5302 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5303 proargtypes
=> 'name text text text',
5304 prosrc
=> 'has_column_privilege_name_name_name' },
5306 descr
=> 'user privilege on column by username, rel name, col attnum',
5307 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5308 proargtypes
=> 'name text int2 text',
5309 prosrc
=> 'has_column_privilege_name_name_attnum' },
5311 descr
=> 'user privilege on column by username, rel oid, col name',
5312 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5313 proargtypes
=> 'name oid text text',
5314 prosrc
=> 'has_column_privilege_name_id_name' },
5316 descr
=> 'user privilege on column by username, rel oid, col attnum',
5317 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5318 proargtypes
=> 'name oid int2 text',
5319 prosrc
=> 'has_column_privilege_name_id_attnum' },
5321 descr
=> 'user privilege on column by user oid, rel name, col name',
5322 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5323 proargtypes
=> 'oid text text text',
5324 prosrc
=> 'has_column_privilege_id_name_name' },
5326 descr
=> 'user privilege on column by user oid, rel name, col attnum',
5327 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5328 proargtypes
=> 'oid text int2 text',
5329 prosrc
=> 'has_column_privilege_id_name_attnum' },
5331 descr
=> 'user privilege on column by user oid, rel oid, col name',
5332 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5333 proargtypes
=> 'oid oid text text',
5334 prosrc
=> 'has_column_privilege_id_id_name' },
5336 descr
=> 'user privilege on column by user oid, rel oid, col attnum',
5337 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5338 proargtypes
=> 'oid oid int2 text',
5339 prosrc
=> 'has_column_privilege_id_id_attnum' },
5341 descr
=> 'current user privilege on column by rel name, col name',
5342 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5343 proargtypes
=> 'text text text', prosrc
=> 'has_column_privilege_name_name' },
5345 descr
=> 'current user privilege on column by rel name, col attnum',
5346 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5347 proargtypes
=> 'text int2 text',
5348 prosrc
=> 'has_column_privilege_name_attnum' },
5350 descr
=> 'current user privilege on column by rel oid, col name',
5351 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5352 proargtypes
=> 'oid text text', prosrc
=> 'has_column_privilege_id_name' },
5354 descr
=> 'current user privilege on column by rel oid, col attnum',
5355 proname
=> 'has_column_privilege', provolatile
=> 's', prorettype
=> 'bool',
5356 proargtypes
=> 'oid int2 text', prosrc
=> 'has_column_privilege_id_attnum' },
5359 descr
=> 'user privilege on any column by username, rel name',
5360 proname
=> 'has_any_column_privilege', procost
=> '10', provolatile
=> 's',
5361 prorettype
=> 'bool', proargtypes
=> 'name text text',
5362 prosrc
=> 'has_any_column_privilege_name_name' },
5363 { oid
=> '3025', descr
=> 'user privilege on any column by username, rel oid',
5364 proname
=> 'has_any_column_privilege', procost
=> '10', provolatile
=> 's',
5365 prorettype
=> 'bool', proargtypes
=> 'name oid text',
5366 prosrc
=> 'has_any_column_privilege_name_id' },
5368 descr
=> 'user privilege on any column by user oid, rel name',
5369 proname
=> 'has_any_column_privilege', procost
=> '10', provolatile
=> 's',
5370 prorettype
=> 'bool', proargtypes
=> 'oid text text',
5371 prosrc
=> 'has_any_column_privilege_id_name' },
5372 { oid
=> '3027', descr
=> 'user privilege on any column by user oid, rel oid',
5373 proname
=> 'has_any_column_privilege', procost
=> '10', provolatile
=> 's',
5374 prorettype
=> 'bool', proargtypes
=> 'oid oid text',
5375 prosrc
=> 'has_any_column_privilege_id_id' },
5376 { oid
=> '3028', descr
=> 'current user privilege on any column by rel name',
5377 proname
=> 'has_any_column_privilege', procost
=> '10', provolatile
=> 's',
5378 prorettype
=> 'bool', proargtypes
=> 'text text',
5379 prosrc
=> 'has_any_column_privilege_name' },
5380 { oid
=> '3029', descr
=> 'current user privilege on any column by rel oid',
5381 proname
=> 'has_any_column_privilege', procost
=> '10', provolatile
=> 's',
5382 prorettype
=> 'bool', proargtypes
=> 'oid text',
5383 prosrc
=> 'has_any_column_privilege_id' },
5386 descr
=> 'user privilege on large object by username, large object oid',
5387 proname
=> 'has_largeobject_privilege', procost
=> '10', provolatile
=> 's',
5388 prorettype
=> 'bool', proargtypes
=> 'name oid text',
5389 prosrc
=> 'has_largeobject_privilege_name_id' },
5391 descr
=> 'current user privilege on large object by large object oid',
5392 proname
=> 'has_largeobject_privilege', procost
=> '10', provolatile
=> 's',
5393 prorettype
=> 'bool', proargtypes
=> 'oid text',
5394 prosrc
=> 'has_largeobject_privilege_id' },
5396 descr
=> 'user privilege on large object by user oid, large object oid',
5397 proname
=> 'has_largeobject_privilege', procost
=> '10', provolatile
=> 's',
5398 prorettype
=> 'bool', proargtypes
=> 'oid oid text',
5399 prosrc
=> 'has_largeobject_privilege_id_id' },
5401 { oid
=> '3355', descr
=> 'I/O',
5402 proname
=> 'pg_ndistinct_in', prorettype
=> 'pg_ndistinct',
5403 proargtypes
=> 'cstring', prosrc
=> 'pg_ndistinct_in' },
5404 { oid
=> '3356', descr
=> 'I/O',
5405 proname
=> 'pg_ndistinct_out', prorettype
=> 'cstring',
5406 proargtypes
=> 'pg_ndistinct', prosrc
=> 'pg_ndistinct_out' },
5407 { oid
=> '3357', descr
=> 'I/O',
5408 proname
=> 'pg_ndistinct_recv', provolatile
=> 's',
5409 prorettype
=> 'pg_ndistinct', proargtypes
=> 'internal',
5410 prosrc
=> 'pg_ndistinct_recv' },
5411 { oid
=> '3358', descr
=> 'I/O',
5412 proname
=> 'pg_ndistinct_send', provolatile
=> 's', prorettype
=> 'bytea',
5413 proargtypes
=> 'pg_ndistinct', prosrc
=> 'pg_ndistinct_send' },
5415 { oid
=> '3404', descr
=> 'I/O',
5416 proname
=> 'pg_dependencies_in', prorettype
=> 'pg_dependencies',
5417 proargtypes
=> 'cstring', prosrc
=> 'pg_dependencies_in' },
5418 { oid
=> '3405', descr
=> 'I/O',
5419 proname
=> 'pg_dependencies_out', prorettype
=> 'cstring',
5420 proargtypes
=> 'pg_dependencies', prosrc
=> 'pg_dependencies_out' },
5421 { oid
=> '3406', descr
=> 'I/O',
5422 proname
=> 'pg_dependencies_recv', provolatile
=> 's',
5423 prorettype
=> 'pg_dependencies', proargtypes
=> 'internal',
5424 prosrc
=> 'pg_dependencies_recv' },
5425 { oid
=> '3407', descr
=> 'I/O',
5426 proname
=> 'pg_dependencies_send', provolatile
=> 's', prorettype
=> 'bytea',
5427 proargtypes
=> 'pg_dependencies', prosrc
=> 'pg_dependencies_send' },
5429 { oid
=> '5018', descr
=> 'I/O',
5430 proname
=> 'pg_mcv_list_in', prorettype
=> 'pg_mcv_list',
5431 proargtypes
=> 'cstring', prosrc
=> 'pg_mcv_list_in' },
5432 { oid
=> '5019', descr
=> 'I/O',
5433 proname
=> 'pg_mcv_list_out', prorettype
=> 'cstring',
5434 proargtypes
=> 'pg_mcv_list', prosrc
=> 'pg_mcv_list_out' },
5435 { oid
=> '5020', descr
=> 'I/O',
5436 proname
=> 'pg_mcv_list_recv', provolatile
=> 's',
5437 prorettype
=> 'pg_mcv_list', proargtypes
=> 'internal',
5438 prosrc
=> 'pg_mcv_list_recv' },
5439 { oid
=> '5021', descr
=> 'I/O',
5440 proname
=> 'pg_mcv_list_send', provolatile
=> 's', prorettype
=> 'bytea',
5441 proargtypes
=> 'pg_mcv_list', prosrc
=> 'pg_mcv_list_send' },
5443 { oid
=> '3427', descr
=> 'details about MCV list items',
5444 proname
=> 'pg_mcv_list_items', prorows
=> '1000', proretset
=> 't',
5445 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> 'pg_mcv_list',
5446 proallargtypes
=> '{pg_mcv_list,int4,_text,_bool,float8,float8}',
5447 proargmodes
=> '{i,o,o,o,o,o}',
5448 proargnames
=> '{mcv_list,index,values,nulls,frequency,base_frequency}',
5449 prosrc
=> 'pg_stats_ext_mcvlist_items' },
5451 { oid
=> '1928', descr
=> 'statistics: number of scans done for table/index',
5452 proname
=> 'pg_stat_get_numscans', provolatile
=> 's', proparallel
=> 'r',
5453 prorettype
=> 'int8', proargtypes
=> 'oid',
5454 prosrc
=> 'pg_stat_get_numscans' },
5455 { oid
=> '6310', descr
=> 'statistics: time of the last scan for table/index',
5456 proname
=> 'pg_stat_get_lastscan', provolatile
=> 's', proparallel
=> 'r',
5457 prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5458 prosrc
=> 'pg_stat_get_lastscan' },
5459 { oid
=> '1929', descr
=> 'statistics: number of tuples read by seqscan',
5460 proname
=> 'pg_stat_get_tuples_returned', provolatile
=> 's',
5461 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5462 prosrc
=> 'pg_stat_get_tuples_returned' },
5463 { oid
=> '1930', descr
=> 'statistics: number of tuples fetched by idxscan',
5464 proname
=> 'pg_stat_get_tuples_fetched', provolatile
=> 's',
5465 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5466 prosrc
=> 'pg_stat_get_tuples_fetched' },
5467 { oid
=> '1931', descr
=> 'statistics: number of tuples inserted',
5468 proname
=> 'pg_stat_get_tuples_inserted', provolatile
=> 's',
5469 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5470 prosrc
=> 'pg_stat_get_tuples_inserted' },
5471 { oid
=> '1932', descr
=> 'statistics: number of tuples updated',
5472 proname
=> 'pg_stat_get_tuples_updated', provolatile
=> 's',
5473 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5474 prosrc
=> 'pg_stat_get_tuples_updated' },
5475 { oid
=> '1933', descr
=> 'statistics: number of tuples deleted',
5476 proname
=> 'pg_stat_get_tuples_deleted', provolatile
=> 's',
5477 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5478 prosrc
=> 'pg_stat_get_tuples_deleted' },
5479 { oid
=> '1972', descr
=> 'statistics: number of tuples hot updated',
5480 proname
=> 'pg_stat_get_tuples_hot_updated', provolatile
=> 's',
5481 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5482 prosrc
=> 'pg_stat_get_tuples_hot_updated' },
5484 descr
=> 'statistics: number of tuples updated onto a new page',
5485 proname
=> 'pg_stat_get_tuples_newpage_updated', provolatile
=> 's',
5486 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5487 prosrc
=> 'pg_stat_get_tuples_newpage_updated' },
5488 { oid
=> '2878', descr
=> 'statistics: number of live tuples',
5489 proname
=> 'pg_stat_get_live_tuples', provolatile
=> 's', proparallel
=> 'r',
5490 prorettype
=> 'int8', proargtypes
=> 'oid',
5491 prosrc
=> 'pg_stat_get_live_tuples' },
5492 { oid
=> '2879', descr
=> 'statistics: number of dead tuples',
5493 proname
=> 'pg_stat_get_dead_tuples', provolatile
=> 's', proparallel
=> 'r',
5494 prorettype
=> 'int8', proargtypes
=> 'oid',
5495 prosrc
=> 'pg_stat_get_dead_tuples' },
5497 descr
=> 'statistics: number of tuples changed since last analyze',
5498 proname
=> 'pg_stat_get_mod_since_analyze', provolatile
=> 's',
5499 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5500 prosrc
=> 'pg_stat_get_mod_since_analyze' },
5502 descr
=> 'statistics: number of tuples inserted since last vacuum',
5503 proname
=> 'pg_stat_get_ins_since_vacuum', provolatile
=> 's',
5504 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5505 prosrc
=> 'pg_stat_get_ins_since_vacuum' },
5506 { oid
=> '1934', descr
=> 'statistics: number of blocks fetched',
5507 proname
=> 'pg_stat_get_blocks_fetched', provolatile
=> 's',
5508 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5509 prosrc
=> 'pg_stat_get_blocks_fetched' },
5510 { oid
=> '1935', descr
=> 'statistics: number of blocks found in cache',
5511 proname
=> 'pg_stat_get_blocks_hit', provolatile
=> 's', proparallel
=> 'r',
5512 prorettype
=> 'int8', proargtypes
=> 'oid',
5513 prosrc
=> 'pg_stat_get_blocks_hit' },
5514 { oid
=> '2781', descr
=> 'statistics: last manual vacuum time for a table',
5515 proname
=> 'pg_stat_get_last_vacuum_time', provolatile
=> 's',
5516 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5517 prosrc
=> 'pg_stat_get_last_vacuum_time' },
5518 { oid
=> '2782', descr
=> 'statistics: last auto vacuum time for a table',
5519 proname
=> 'pg_stat_get_last_autovacuum_time', provolatile
=> 's',
5520 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5521 prosrc
=> 'pg_stat_get_last_autovacuum_time' },
5522 { oid
=> '2783', descr
=> 'statistics: last manual analyze time for a table',
5523 proname
=> 'pg_stat_get_last_analyze_time', provolatile
=> 's',
5524 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5525 prosrc
=> 'pg_stat_get_last_analyze_time' },
5526 { oid
=> '2784', descr
=> 'statistics: last auto analyze time for a table',
5527 proname
=> 'pg_stat_get_last_autoanalyze_time', provolatile
=> 's',
5528 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5529 prosrc
=> 'pg_stat_get_last_autoanalyze_time' },
5530 { oid
=> '3054', descr
=> 'statistics: number of manual vacuums for a table',
5531 proname
=> 'pg_stat_get_vacuum_count', provolatile
=> 's', proparallel
=> 'r',
5532 prorettype
=> 'int8', proargtypes
=> 'oid',
5533 prosrc
=> 'pg_stat_get_vacuum_count' },
5534 { oid
=> '3055', descr
=> 'statistics: number of auto vacuums for a table',
5535 proname
=> 'pg_stat_get_autovacuum_count', provolatile
=> 's',
5536 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5537 prosrc
=> 'pg_stat_get_autovacuum_count' },
5538 { oid
=> '3056', descr
=> 'statistics: number of manual analyzes for a table',
5539 proname
=> 'pg_stat_get_analyze_count', provolatile
=> 's',
5540 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5541 prosrc
=> 'pg_stat_get_analyze_count' },
5542 { oid
=> '3057', descr
=> 'statistics: number of auto analyzes for a table',
5543 proname
=> 'pg_stat_get_autoanalyze_count', provolatile
=> 's',
5544 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5545 prosrc
=> 'pg_stat_get_autoanalyze_count' },
5546 { oid
=> '1936', descr
=> 'statistics: currently active backend IDs',
5547 proname
=> 'pg_stat_get_backend_idset', prorows
=> '100', proretset
=> 't',
5548 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'int4',
5549 proargtypes
=> '', prosrc
=> 'pg_stat_get_backend_idset' },
5551 descr
=> 'statistics: information about currently active backends',
5552 proname
=> 'pg_stat_get_activity', prorows
=> '100', proisstrict
=> 'f',
5553 proretset
=> 't', provolatile
=> 's', proparallel
=> 'r',
5554 prorettype
=> 'record', proargtypes
=> 'int4',
5555 proallargtypes
=> '{int4,oid,int4,oid,text,text,text,text,text,timestamptz,timestamptz,timestamptz,timestamptz,inet,text,int4,xid,xid,text,bool,text,text,int4,text,numeric,text,bool,text,bool,bool,int4,int8}',
5556 proargmodes
=> '{i,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
5557 proargnames
=> '{pid,datid,pid,usesysid,application_name,state,query,wait_event_type,wait_event,xact_start,query_start,backend_start,state_change,client_addr,client_hostname,client_port,backend_xid,backend_xmin,backend_type,ssl,sslversion,sslcipher,sslbits,ssl_client_dn,ssl_client_serial,ssl_issuer_dn,gss_auth,gss_princ,gss_enc,gss_delegation,leader_pid,query_id}',
5558 prosrc
=> 'pg_stat_get_activity' },
5559 { oid
=> '6318', descr
=> 'describe wait events',
5560 proname
=> 'pg_get_wait_events', procost
=> '10', prorows
=> '250',
5561 proretset
=> 't', provolatile
=> 'v', prorettype
=> 'record',
5562 proargtypes
=> '', proallargtypes
=> '{text,text,text}',
5563 proargmodes
=> '{o,o,o}', proargnames
=> '{type,name,description}',
5564 prosrc
=> 'pg_get_wait_events' },
5566 descr
=> 'statistics: information about progress of backends running maintenance command',
5567 proname
=> 'pg_stat_get_progress_info', prorows
=> '100', proretset
=> 't',
5568 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'record',
5569 proargtypes
=> 'text',
5570 proallargtypes
=> '{text,int4,oid,oid,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8,int8}',
5571 proargmodes
=> '{i,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
5572 proargnames
=> '{cmdtype,pid,datid,relid,param1,param2,param3,param4,param5,param6,param7,param8,param9,param10,param11,param12,param13,param14,param15,param16,param17,param18,param19,param20}',
5573 prosrc
=> 'pg_stat_get_progress_info' },
5575 descr
=> 'statistics: information about currently active replication',
5576 proname
=> 'pg_stat_get_wal_senders', prorows
=> '10', proisstrict
=> 'f',
5577 proretset
=> 't', provolatile
=> 's', proparallel
=> 'r',
5578 prorettype
=> 'record', proargtypes
=> '',
5579 proallargtypes
=> '{int4,text,pg_lsn,pg_lsn,pg_lsn,pg_lsn,interval,interval,interval,int4,text,timestamptz}',
5580 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o}',
5581 proargnames
=> '{pid,state,sent_lsn,write_lsn,flush_lsn,replay_lsn,write_lag,flush_lag,replay_lag,sync_priority,sync_state,reply_time}',
5582 prosrc
=> 'pg_stat_get_wal_senders' },
5583 { oid
=> '3317', descr
=> 'statistics: information about WAL receiver',
5584 proname
=> 'pg_stat_get_wal_receiver', proisstrict
=> 'f', provolatile
=> 's',
5585 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> '',
5586 proallargtypes
=> '{int4,text,pg_lsn,int4,pg_lsn,pg_lsn,int4,timestamptz,timestamptz,pg_lsn,timestamptz,text,text,int4,text}',
5587 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
5588 proargnames
=> '{pid,status,receive_start_lsn,receive_start_tli,written_lsn,flushed_lsn,received_tli,last_msg_send_time,last_msg_receipt_time,latest_end_lsn,latest_end_time,slot_name,sender_host,sender_port,conninfo}',
5589 prosrc
=> 'pg_stat_get_wal_receiver' },
5590 { oid
=> '6169', descr
=> 'statistics: information about replication slot',
5591 proname
=> 'pg_stat_get_replication_slot', provolatile
=> 's',
5592 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> 'text',
5593 proallargtypes
=> '{text,text,int8,int8,int8,int8,int8,int8,int8,int8,timestamptz}',
5594 proargmodes
=> '{i,o,o,o,o,o,o,o,o,o,o}',
5595 proargnames
=> '{slot_name,slot_name,spill_txns,spill_count,spill_bytes,stream_txns,stream_count,stream_bytes,total_txns,total_bytes,stats_reset}',
5596 prosrc
=> 'pg_stat_get_replication_slot' },
5598 { oid
=> '6230', descr
=> 'statistics: check if a stats object exists',
5599 proname
=> 'pg_stat_have_stats', provolatile
=> 'v', proparallel
=> 'r',
5600 prorettype
=> 'bool', proargtypes
=> 'text oid int8',
5601 prosrc
=> 'pg_stat_have_stats' },
5603 { oid
=> '6231', descr
=> 'statistics: information about subscription stats',
5604 proname
=> 'pg_stat_get_subscription_stats', provolatile
=> 's',
5605 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> 'oid',
5606 proallargtypes
=> '{oid,oid,int8,int8,int8,int8,int8,int8,int8,int8,timestamptz}',
5607 proargmodes
=> '{i,o,o,o,o,o,o,o,o,o,o}',
5608 proargnames
=> '{subid,subid,apply_error_count,sync_error_count,confl_insert_exists,confl_update_origin_differs,confl_update_exists,confl_update_missing,confl_delete_origin_differs,confl_delete_missing,stats_reset}',
5609 prosrc
=> 'pg_stat_get_subscription_stats' },
5610 { oid
=> '6118', descr
=> 'statistics: information about subscription',
5611 proname
=> 'pg_stat_get_subscription', prorows
=> '10', proisstrict
=> 'f',
5612 proretset
=> 't', provolatile
=> 's', proparallel
=> 'r',
5613 prorettype
=> 'record', proargtypes
=> 'oid',
5614 proallargtypes
=> '{oid,oid,oid,int4,int4,pg_lsn,timestamptz,timestamptz,pg_lsn,timestamptz,text}',
5615 proargmodes
=> '{i,o,o,o,o,o,o,o,o,o,o}',
5616 proargnames
=> '{subid,subid,relid,pid,leader_pid,received_lsn,last_msg_send_time,last_msg_receipt_time,latest_end_lsn,latest_end_time,worker_type}',
5617 prosrc
=> 'pg_stat_get_subscription' },
5618 { oid
=> '2026', descr
=> 'statistics: current backend PID',
5619 proname
=> 'pg_backend_pid', provolatile
=> 's', proparallel
=> 'r',
5620 prorettype
=> 'int4', proargtypes
=> '', prosrc
=> 'pg_backend_pid' },
5621 { oid
=> '1937', descr
=> 'statistics: PID of backend',
5622 proname
=> 'pg_stat_get_backend_pid', provolatile
=> 's', proparallel
=> 'r',
5623 prorettype
=> 'int4', proargtypes
=> 'int4',
5624 prosrc
=> 'pg_stat_get_backend_pid' },
5625 { oid
=> '1938', descr
=> 'statistics: database ID of backend',
5626 proname
=> 'pg_stat_get_backend_dbid', provolatile
=> 's', proparallel
=> 'r',
5627 prorettype
=> 'oid', proargtypes
=> 'int4',
5628 prosrc
=> 'pg_stat_get_backend_dbid' },
5629 { oid
=> '6107', descr
=> 'statistics: get subtransaction status of backend',
5630 proname
=> 'pg_stat_get_backend_subxact', provolatile
=> 's',
5631 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> 'int4',
5632 proallargtypes
=> '{int4,int4,bool}', proargmodes
=> '{i,o,o}',
5633 proargnames
=> '{bid,subxact_count,subxact_overflowed}',
5634 prosrc
=> 'pg_stat_get_backend_subxact' },
5635 { oid
=> '1939', descr
=> 'statistics: user ID of backend',
5636 proname
=> 'pg_stat_get_backend_userid', provolatile
=> 's',
5637 proparallel
=> 'r', prorettype
=> 'oid', proargtypes
=> 'int4',
5638 prosrc
=> 'pg_stat_get_backend_userid' },
5639 { oid
=> '1940', descr
=> 'statistics: current query of backend',
5640 proname
=> 'pg_stat_get_backend_activity', provolatile
=> 's',
5641 proparallel
=> 'r', prorettype
=> 'text', proargtypes
=> 'int4',
5642 prosrc
=> 'pg_stat_get_backend_activity' },
5644 descr
=> 'statistics: wait event type on which backend is currently waiting',
5645 proname
=> 'pg_stat_get_backend_wait_event_type', provolatile
=> 's',
5646 proparallel
=> 'r', prorettype
=> 'text', proargtypes
=> 'int4',
5647 prosrc
=> 'pg_stat_get_backend_wait_event_type' },
5649 descr
=> 'statistics: wait event on which backend is currently waiting',
5650 proname
=> 'pg_stat_get_backend_wait_event', provolatile
=> 's',
5651 proparallel
=> 'r', prorettype
=> 'text', proargtypes
=> 'int4',
5652 prosrc
=> 'pg_stat_get_backend_wait_event' },
5654 descr
=> 'statistics: start time for current query of backend',
5655 proname
=> 'pg_stat_get_backend_activity_start', provolatile
=> 's',
5656 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'int4',
5657 prosrc
=> 'pg_stat_get_backend_activity_start' },
5659 descr
=> 'statistics: start time for backend\'s current transaction',
5660 proname
=> 'pg_stat_get_backend_xact_start', provolatile
=> 's',
5661 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'int4',
5662 prosrc
=> 'pg_stat_get_backend_xact_start' },
5664 descr
=> 'statistics: start time for current backend session',
5665 proname
=> 'pg_stat_get_backend_start', provolatile
=> 's',
5666 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'int4',
5667 prosrc
=> 'pg_stat_get_backend_start' },
5669 descr
=> 'statistics: address of client connected to backend',
5670 proname
=> 'pg_stat_get_backend_client_addr', provolatile
=> 's',
5671 proparallel
=> 'r', prorettype
=> 'inet', proargtypes
=> 'int4',
5672 prosrc
=> 'pg_stat_get_backend_client_addr' },
5674 descr
=> 'statistics: port number of client connected to backend',
5675 proname
=> 'pg_stat_get_backend_client_port', provolatile
=> 's',
5676 proparallel
=> 'r', prorettype
=> 'int4', proargtypes
=> 'int4',
5677 prosrc
=> 'pg_stat_get_backend_client_port' },
5678 { oid
=> '1941', descr
=> 'statistics: number of backends in database',
5679 proname
=> 'pg_stat_get_db_numbackends', provolatile
=> 's',
5680 proparallel
=> 'r', prorettype
=> 'int4', proargtypes
=> 'oid',
5681 prosrc
=> 'pg_stat_get_db_numbackends' },
5682 { oid
=> '1942', descr
=> 'statistics: transactions committed',
5683 proname
=> 'pg_stat_get_db_xact_commit', provolatile
=> 's',
5684 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5685 prosrc
=> 'pg_stat_get_db_xact_commit' },
5686 { oid
=> '1943', descr
=> 'statistics: transactions rolled back',
5687 proname
=> 'pg_stat_get_db_xact_rollback', provolatile
=> 's',
5688 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5689 prosrc
=> 'pg_stat_get_db_xact_rollback' },
5690 { oid
=> '1944', descr
=> 'statistics: blocks fetched for database',
5691 proname
=> 'pg_stat_get_db_blocks_fetched', provolatile
=> 's',
5692 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5693 prosrc
=> 'pg_stat_get_db_blocks_fetched' },
5694 { oid
=> '1945', descr
=> 'statistics: blocks found in cache for database',
5695 proname
=> 'pg_stat_get_db_blocks_hit', provolatile
=> 's',
5696 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5697 prosrc
=> 'pg_stat_get_db_blocks_hit' },
5698 { oid
=> '2758', descr
=> 'statistics: tuples returned for database',
5699 proname
=> 'pg_stat_get_db_tuples_returned', provolatile
=> 's',
5700 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5701 prosrc
=> 'pg_stat_get_db_tuples_returned' },
5702 { oid
=> '2759', descr
=> 'statistics: tuples fetched for database',
5703 proname
=> 'pg_stat_get_db_tuples_fetched', provolatile
=> 's',
5704 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5705 prosrc
=> 'pg_stat_get_db_tuples_fetched' },
5706 { oid
=> '2760', descr
=> 'statistics: tuples inserted in database',
5707 proname
=> 'pg_stat_get_db_tuples_inserted', provolatile
=> 's',
5708 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5709 prosrc
=> 'pg_stat_get_db_tuples_inserted' },
5710 { oid
=> '2761', descr
=> 'statistics: tuples updated in database',
5711 proname
=> 'pg_stat_get_db_tuples_updated', provolatile
=> 's',
5712 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5713 prosrc
=> 'pg_stat_get_db_tuples_updated' },
5714 { oid
=> '2762', descr
=> 'statistics: tuples deleted in database',
5715 proname
=> 'pg_stat_get_db_tuples_deleted', provolatile
=> 's',
5716 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5717 prosrc
=> 'pg_stat_get_db_tuples_deleted' },
5719 descr
=> 'statistics: recovery conflicts in database caused by drop tablespace',
5720 proname
=> 'pg_stat_get_db_conflict_tablespace', provolatile
=> 's',
5721 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5722 prosrc
=> 'pg_stat_get_db_conflict_tablespace' },
5724 descr
=> 'statistics: recovery conflicts in database caused by relation lock',
5725 proname
=> 'pg_stat_get_db_conflict_lock', provolatile
=> 's',
5726 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5727 prosrc
=> 'pg_stat_get_db_conflict_lock' },
5729 descr
=> 'statistics: recovery conflicts in database caused by snapshot expiry',
5730 proname
=> 'pg_stat_get_db_conflict_snapshot', provolatile
=> 's',
5731 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5732 prosrc
=> 'pg_stat_get_db_conflict_snapshot' },
5734 descr
=> 'statistics: recovery conflicts in database caused by logical replication slot',
5735 proname
=> 'pg_stat_get_db_conflict_logicalslot', provolatile
=> 's',
5736 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5737 prosrc
=> 'pg_stat_get_db_conflict_logicalslot' },
5739 descr
=> 'statistics: recovery conflicts in database caused by shared buffer pin',
5740 proname
=> 'pg_stat_get_db_conflict_bufferpin', provolatile
=> 's',
5741 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5742 prosrc
=> 'pg_stat_get_db_conflict_bufferpin' },
5744 descr
=> 'statistics: recovery conflicts in database caused by buffer deadlock',
5745 proname
=> 'pg_stat_get_db_conflict_startup_deadlock', provolatile
=> 's',
5746 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5747 prosrc
=> 'pg_stat_get_db_conflict_startup_deadlock' },
5748 { oid
=> '3070', descr
=> 'statistics: recovery conflicts in database',
5749 proname
=> 'pg_stat_get_db_conflict_all', provolatile
=> 's',
5750 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5751 prosrc
=> 'pg_stat_get_db_conflict_all' },
5752 { oid
=> '3152', descr
=> 'statistics: deadlocks detected in database',
5753 proname
=> 'pg_stat_get_db_deadlocks', provolatile
=> 's', proparallel
=> 'r',
5754 prorettype
=> 'int8', proargtypes
=> 'oid',
5755 prosrc
=> 'pg_stat_get_db_deadlocks' },
5757 descr
=> 'statistics: checksum failures detected in database',
5758 proname
=> 'pg_stat_get_db_checksum_failures', provolatile
=> 's',
5759 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5760 prosrc
=> 'pg_stat_get_db_checksum_failures' },
5762 descr
=> 'statistics: when last checksum failure was detected in database',
5763 proname
=> 'pg_stat_get_db_checksum_last_failure', provolatile
=> 's',
5764 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5765 prosrc
=> 'pg_stat_get_db_checksum_last_failure' },
5766 { oid
=> '3074', descr
=> 'statistics: last reset for a database',
5767 proname
=> 'pg_stat_get_db_stat_reset_time', provolatile
=> 's',
5768 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> 'oid',
5769 prosrc
=> 'pg_stat_get_db_stat_reset_time' },
5770 { oid
=> '3150', descr
=> 'statistics: number of temporary files written',
5771 proname
=> 'pg_stat_get_db_temp_files', provolatile
=> 's',
5772 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5773 prosrc
=> 'pg_stat_get_db_temp_files' },
5775 descr
=> 'statistics: number of bytes in temporary files written',
5776 proname
=> 'pg_stat_get_db_temp_bytes', provolatile
=> 's',
5777 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5778 prosrc
=> 'pg_stat_get_db_temp_bytes' },
5779 { oid
=> '2844', descr
=> 'statistics: block read time, in milliseconds',
5780 proname
=> 'pg_stat_get_db_blk_read_time', provolatile
=> 's',
5781 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5782 prosrc
=> 'pg_stat_get_db_blk_read_time' },
5783 { oid
=> '2845', descr
=> 'statistics: block write time, in milliseconds',
5784 proname
=> 'pg_stat_get_db_blk_write_time', provolatile
=> 's',
5785 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5786 prosrc
=> 'pg_stat_get_db_blk_write_time' },
5787 { oid
=> '6185', descr
=> 'statistics: session time, in milliseconds',
5788 proname
=> 'pg_stat_get_db_session_time', provolatile
=> 's',
5789 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5790 prosrc
=> 'pg_stat_get_db_session_time' },
5791 { oid
=> '6186', descr
=> 'statistics: session active time, in milliseconds',
5792 proname
=> 'pg_stat_get_db_active_time', provolatile
=> 's',
5793 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5794 prosrc
=> 'pg_stat_get_db_active_time' },
5796 descr
=> 'statistics: session idle in transaction time, in milliseconds',
5797 proname
=> 'pg_stat_get_db_idle_in_transaction_time', provolatile
=> 's',
5798 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5799 prosrc
=> 'pg_stat_get_db_idle_in_transaction_time' },
5800 { oid
=> '6188', descr
=> 'statistics: total number of sessions',
5801 proname
=> 'pg_stat_get_db_sessions', provolatile
=> 's', proparallel
=> 'r',
5802 prorettype
=> 'int8', proargtypes
=> 'oid',
5803 prosrc
=> 'pg_stat_get_db_sessions' },
5805 descr
=> 'statistics: number of sessions disconnected by the client closing the network connection',
5806 proname
=> 'pg_stat_get_db_sessions_abandoned', provolatile
=> 's',
5807 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5808 prosrc
=> 'pg_stat_get_db_sessions_abandoned' },
5810 descr
=> 'statistics: number of sessions disconnected by fatal errors',
5811 proname
=> 'pg_stat_get_db_sessions_fatal', provolatile
=> 's',
5812 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5813 prosrc
=> 'pg_stat_get_db_sessions_fatal' },
5815 descr
=> 'statistics: number of sessions killed by administrative action',
5816 proname
=> 'pg_stat_get_db_sessions_killed', provolatile
=> 's',
5817 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5818 prosrc
=> 'pg_stat_get_db_sessions_killed' },
5820 descr
=> 'statistics: number of parallel workers planned to be launched by queries',
5821 proname
=> 'pg_stat_get_db_parallel_workers_to_launch', provolatile
=> 's',
5822 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5823 prosrc
=> 'pg_stat_get_db_parallel_workers_to_launch' },
5825 descr
=> 'statistics: number of parallel workers effectively launched by queries',
5826 proname
=> 'pg_stat_get_db_parallel_workers_launched', provolatile
=> 's',
5827 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5828 prosrc
=> 'pg_stat_get_db_parallel_workers_launched' },
5829 { oid
=> '3195', descr
=> 'statistics: information about WAL archiver',
5830 proname
=> 'pg_stat_get_archiver', proisstrict
=> 'f', provolatile
=> 's',
5831 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> '',
5832 proallargtypes
=> '{int8,text,timestamptz,int8,text,timestamptz,timestamptz}',
5833 proargmodes
=> '{o,o,o,o,o,o,o}',
5834 proargnames
=> '{archived_count,last_archived_wal,last_archived_time,failed_count,last_failed_wal,last_failed_time,stats_reset}',
5835 prosrc
=> 'pg_stat_get_archiver' },
5837 descr
=> 'statistics: number of timed checkpoints started by the checkpointer',
5838 proname
=> 'pg_stat_get_checkpointer_num_timed', provolatile
=> 's',
5839 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5840 prosrc
=> 'pg_stat_get_checkpointer_num_timed' },
5842 descr
=> 'statistics: number of requested checkpoints started by the checkpointer',
5843 proname
=> 'pg_stat_get_checkpointer_num_requested', provolatile
=> 's',
5844 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5845 prosrc
=> 'pg_stat_get_checkpointer_num_requested' },
5847 descr
=> 'statistics: number of checkpoints performed by the checkpointer',
5848 proname
=> 'pg_stat_get_checkpointer_num_performed', provolatile
=> 's',
5849 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5850 prosrc
=> 'pg_stat_get_checkpointer_num_performed' },
5852 descr
=> 'statistics: number of timed restartpoints started by the checkpointer',
5853 proname
=> 'pg_stat_get_checkpointer_restartpoints_timed', provolatile
=> 's',
5854 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5855 prosrc
=> 'pg_stat_get_checkpointer_restartpoints_timed' },
5857 descr
=> 'statistics: number of requested restartpoints started by the checkpointer',
5858 proname
=> 'pg_stat_get_checkpointer_restartpoints_requested',
5859 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'int8',
5861 prosrc
=> 'pg_stat_get_checkpointer_restartpoints_requested' },
5863 descr
=> 'statistics: number of restartpoints performed by the checkpointer',
5864 proname
=> 'pg_stat_get_checkpointer_restartpoints_performed',
5865 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'int8',
5867 prosrc
=> 'pg_stat_get_checkpointer_restartpoints_performed' },
5869 descr
=> 'statistics: number of buffers written during checkpoints and restartpoints',
5870 proname
=> 'pg_stat_get_checkpointer_buffers_written', provolatile
=> 's',
5871 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5872 prosrc
=> 'pg_stat_get_checkpointer_buffers_written' },
5874 descr
=> 'statistics: number of SLRU buffers written during checkpoints and restartpoints',
5875 proname
=> 'pg_stat_get_checkpointer_slru_written', provolatile
=> 's',
5876 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5877 prosrc
=> 'pg_stat_get_checkpointer_slru_written' },
5878 { oid
=> '6314', descr
=> 'statistics: last reset for the checkpointer',
5879 proname
=> 'pg_stat_get_checkpointer_stat_reset_time', provolatile
=> 's',
5880 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> '',
5881 prosrc
=> 'pg_stat_get_checkpointer_stat_reset_time' },
5883 descr
=> 'statistics: number of buffers written by the bgwriter for cleaning dirty buffers',
5884 proname
=> 'pg_stat_get_bgwriter_buf_written_clean', provolatile
=> 's',
5885 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5886 prosrc
=> 'pg_stat_get_bgwriter_buf_written_clean' },
5888 descr
=> 'statistics: number of times the bgwriter stopped processing when it had written too many buffers while cleaning',
5889 proname
=> 'pg_stat_get_bgwriter_maxwritten_clean', provolatile
=> 's',
5890 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> '',
5891 prosrc
=> 'pg_stat_get_bgwriter_maxwritten_clean' },
5892 { oid
=> '3075', descr
=> 'statistics: last reset for the bgwriter',
5893 proname
=> 'pg_stat_get_bgwriter_stat_reset_time', provolatile
=> 's',
5894 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> '',
5895 prosrc
=> 'pg_stat_get_bgwriter_stat_reset_time' },
5897 descr
=> 'statistics: checkpoint/restartpoint time spent writing buffers to disk, in milliseconds',
5898 proname
=> 'pg_stat_get_checkpointer_write_time', provolatile
=> 's',
5899 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> '',
5900 prosrc
=> 'pg_stat_get_checkpointer_write_time' },
5902 descr
=> 'statistics: checkpoint/restartpoint time spent synchronizing buffers to disk, in milliseconds',
5903 proname
=> 'pg_stat_get_checkpointer_sync_time', provolatile
=> 's',
5904 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> '',
5905 prosrc
=> 'pg_stat_get_checkpointer_sync_time' },
5906 { oid
=> '2859', descr
=> 'statistics: number of buffer allocations',
5907 proname
=> 'pg_stat_get_buf_alloc', provolatile
=> 's', proparallel
=> 'r',
5908 prorettype
=> 'int8', proargtypes
=> '', prosrc
=> 'pg_stat_get_buf_alloc' },
5910 { oid
=> '6214', descr
=> 'statistics: per backend type IO statistics',
5911 proname
=> 'pg_stat_get_io', prorows
=> '30', proretset
=> 't',
5912 provolatile
=> 'v', proparallel
=> 'r', prorettype
=> 'record',
5914 proallargtypes
=> '{text,text,text,int8,numeric,float8,int8,numeric,float8,int8,float8,int8,numeric,float8,int8,int8,int8,int8,float8,timestamptz}',
5915 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
5916 proargnames
=> '{backend_type,object,context,reads,read_bytes,read_time,writes,write_bytes,write_time,writebacks,writeback_time,extends,extend_bytes,extend_time,hits,evictions,reuses,fsyncs,fsync_time,stats_reset}',
5917 prosrc
=> 'pg_stat_get_io' },
5919 { oid
=> '8806', descr
=> 'statistics: backend IO statistics',
5920 proname
=> 'pg_stat_get_backend_io', prorows
=> '5', proretset
=> 't',
5921 provolatile
=> 'v', proparallel
=> 'r', prorettype
=> 'record',
5922 proargtypes
=> 'int4',
5923 proallargtypes
=> '{int4,text,text,text,int8,numeric,float8,int8,numeric,float8,int8,float8,int8,numeric,float8,int8,int8,int8,int8,float8,timestamptz}',
5924 proargmodes
=> '{i,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
5925 proargnames
=> '{backend_pid,backend_type,object,context,reads,read_bytes,read_time,writes,write_bytes,write_time,writebacks,writeback_time,extends,extend_bytes,extend_time,hits,evictions,reuses,fsyncs,fsync_time,stats_reset}',
5926 prosrc
=> 'pg_stat_get_backend_io' },
5928 { oid
=> '1136', descr
=> 'statistics: information about WAL activity',
5929 proname
=> 'pg_stat_get_wal', proisstrict
=> 'f', provolatile
=> 's',
5930 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> '',
5931 proallargtypes
=> '{int8,int8,numeric,int8,int8,int8,float8,float8,timestamptz}',
5932 proargmodes
=> '{o,o,o,o,o,o,o,o,o}',
5933 proargnames
=> '{wal_records,wal_fpi,wal_bytes,wal_buffers_full,wal_write,wal_sync,wal_write_time,wal_sync_time,stats_reset}',
5934 prosrc
=> 'pg_stat_get_wal' },
5935 { oid
=> '6248', descr
=> 'statistics: information about WAL prefetching',
5936 proname
=> 'pg_stat_get_recovery_prefetch', prorows
=> '1', proretset
=> 't',
5937 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
5938 proallargtypes
=> '{timestamptz,int8,int8,int8,int8,int8,int8,int4,int4,int4}',
5939 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o}',
5940 proargnames
=> '{stats_reset,prefetch,hit,skip_init,skip_new,skip_fpw,skip_rep,wal_distance,block_distance,io_depth}',
5941 prosrc
=> 'pg_stat_get_recovery_prefetch' },
5943 { oid
=> '2306', descr
=> 'statistics: information about SLRU caches',
5944 proname
=> 'pg_stat_get_slru', prorows
=> '100', proisstrict
=> 'f',
5945 proretset
=> 't', provolatile
=> 's', proparallel
=> 'r',
5946 prorettype
=> 'record', proargtypes
=> '',
5947 proallargtypes
=> '{text,int8,int8,int8,int8,int8,int8,int8,timestamptz}',
5948 proargmodes
=> '{o,o,o,o,o,o,o,o,o}',
5949 proargnames
=> '{name,blks_zeroed,blks_hit,blks_read,blks_written,blks_exists,flushes,truncates,stats_reset}',
5950 prosrc
=> 'pg_stat_get_slru' },
5952 { oid
=> '2978', descr
=> 'statistics: number of function calls',
5953 proname
=> 'pg_stat_get_function_calls', provolatile
=> 's',
5954 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5955 prosrc
=> 'pg_stat_get_function_calls' },
5957 descr
=> 'statistics: total execution time of function, in milliseconds',
5958 proname
=> 'pg_stat_get_function_total_time', provolatile
=> 's',
5959 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5960 prosrc
=> 'pg_stat_get_function_total_time' },
5962 descr
=> 'statistics: self execution time of function, in milliseconds',
5963 proname
=> 'pg_stat_get_function_self_time', provolatile
=> 's',
5964 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
5965 prosrc
=> 'pg_stat_get_function_self_time' },
5968 descr
=> 'statistics: number of scans done for table/index in current transaction',
5969 proname
=> 'pg_stat_get_xact_numscans', provolatile
=> 'v',
5970 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5971 prosrc
=> 'pg_stat_get_xact_numscans' },
5973 descr
=> 'statistics: number of tuples read by seqscan in current transaction',
5974 proname
=> 'pg_stat_get_xact_tuples_returned', provolatile
=> 'v',
5975 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5976 prosrc
=> 'pg_stat_get_xact_tuples_returned' },
5978 descr
=> 'statistics: number of tuples fetched by idxscan in current transaction',
5979 proname
=> 'pg_stat_get_xact_tuples_fetched', provolatile
=> 'v',
5980 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5981 prosrc
=> 'pg_stat_get_xact_tuples_fetched' },
5983 descr
=> 'statistics: number of tuples inserted in current transaction',
5984 proname
=> 'pg_stat_get_xact_tuples_inserted', provolatile
=> 'v',
5985 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5986 prosrc
=> 'pg_stat_get_xact_tuples_inserted' },
5988 descr
=> 'statistics: number of tuples updated in current transaction',
5989 proname
=> 'pg_stat_get_xact_tuples_updated', provolatile
=> 'v',
5990 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5991 prosrc
=> 'pg_stat_get_xact_tuples_updated' },
5993 descr
=> 'statistics: number of tuples deleted in current transaction',
5994 proname
=> 'pg_stat_get_xact_tuples_deleted', provolatile
=> 'v',
5995 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
5996 prosrc
=> 'pg_stat_get_xact_tuples_deleted' },
5998 descr
=> 'statistics: number of tuples hot updated in current transaction',
5999 proname
=> 'pg_stat_get_xact_tuples_hot_updated', provolatile
=> 'v',
6000 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
6001 prosrc
=> 'pg_stat_get_xact_tuples_hot_updated' },
6003 descr
=> 'statistics: number of tuples updated onto a new page in current transaction',
6004 proname
=> 'pg_stat_get_xact_tuples_newpage_updated', provolatile
=> 'v',
6005 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
6006 prosrc
=> 'pg_stat_get_xact_tuples_newpage_updated' },
6008 descr
=> 'statistics: number of blocks fetched in current transaction',
6009 proname
=> 'pg_stat_get_xact_blocks_fetched', provolatile
=> 'v',
6010 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
6011 prosrc
=> 'pg_stat_get_xact_blocks_fetched' },
6013 descr
=> 'statistics: number of blocks found in cache in current transaction',
6014 proname
=> 'pg_stat_get_xact_blocks_hit', provolatile
=> 'v',
6015 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
6016 prosrc
=> 'pg_stat_get_xact_blocks_hit' },
6018 descr
=> 'statistics: number of function calls in current transaction',
6019 proname
=> 'pg_stat_get_xact_function_calls', provolatile
=> 'v',
6020 proparallel
=> 'r', prorettype
=> 'int8', proargtypes
=> 'oid',
6021 prosrc
=> 'pg_stat_get_xact_function_calls' },
6023 descr
=> 'statistics: total execution time of function in current transaction, in milliseconds',
6024 proname
=> 'pg_stat_get_xact_function_total_time', provolatile
=> 'v',
6025 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
6026 prosrc
=> 'pg_stat_get_xact_function_total_time' },
6028 descr
=> 'statistics: self execution time of function in current transaction, in milliseconds',
6029 proname
=> 'pg_stat_get_xact_function_self_time', provolatile
=> 'v',
6030 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> 'oid',
6031 prosrc
=> 'pg_stat_get_xact_function_self_time' },
6034 descr
=> 'statistics: timestamp of the current statistics snapshot',
6035 proname
=> 'pg_stat_get_snapshot_timestamp', provolatile
=> 's',
6036 proparallel
=> 'r', prorettype
=> 'timestamptz', proargtypes
=> '',
6037 prosrc
=> 'pg_stat_get_snapshot_timestamp' },
6039 descr
=> 'statistics: discard current transaction\'s statistics snapshot',
6040 proname
=> 'pg_stat_clear_snapshot', proisstrict
=> 'f', provolatile
=> 'v',
6041 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> '',
6042 prosrc
=> 'pg_stat_clear_snapshot' },
6044 descr
=> 'statistics: force stats to be flushed after the next commit',
6045 proname
=> 'pg_stat_force_next_flush', proisstrict
=> 'f', provolatile
=> 'v',
6046 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> '',
6047 prosrc
=> 'pg_stat_force_next_flush' },
6049 descr
=> 'statistics: reset collected statistics for current database',
6050 proname
=> 'pg_stat_reset', proisstrict
=> 'f', provolatile
=> 'v',
6051 prorettype
=> 'void', proargtypes
=> '', prosrc
=> 'pg_stat_reset' },
6053 descr
=> 'statistics: reset collected statistics shared across the cluster',
6054 proname
=> 'pg_stat_reset_shared', proisstrict
=> 'f', provolatile
=> 'v',
6055 prorettype
=> 'void', proargtypes
=> 'text',
6056 prosrc
=> 'pg_stat_reset_shared' },
6058 descr
=> 'statistics: reset collected statistics for a single table or index in the current database or shared across all databases in the cluster',
6059 proname
=> 'pg_stat_reset_single_table_counters', provolatile
=> 'v',
6060 prorettype
=> 'void', proargtypes
=> 'oid',
6061 prosrc
=> 'pg_stat_reset_single_table_counters' },
6063 descr
=> 'statistics: reset collected statistics for a single function in the current database',
6064 proname
=> 'pg_stat_reset_single_function_counters', provolatile
=> 'v',
6065 prorettype
=> 'void', proargtypes
=> 'oid',
6066 prosrc
=> 'pg_stat_reset_single_function_counters' },
6067 { oid
=> '8807', descr
=> 'statistics: reset statistics for a single backend',
6068 proname
=> 'pg_stat_reset_backend_stats', provolatile
=> 'v',
6069 prorettype
=> 'void', proargtypes
=> 'int4',
6070 prosrc
=> 'pg_stat_reset_backend_stats' },
6072 descr
=> 'statistics: reset collected statistics for a single SLRU',
6073 proname
=> 'pg_stat_reset_slru', proisstrict
=> 'f', provolatile
=> 'v',
6074 prorettype
=> 'void', proargtypes
=> 'text', proargnames
=> '{target}',
6075 prosrc
=> 'pg_stat_reset_slru' },
6077 descr
=> 'statistics: reset collected statistics for a single replication slot',
6078 proname
=> 'pg_stat_reset_replication_slot', proisstrict
=> 'f',
6079 provolatile
=> 'v', prorettype
=> 'void', proargtypes
=> 'text',
6080 prosrc
=> 'pg_stat_reset_replication_slot' },
6082 descr
=> 'statistics: reset collected statistics for a single subscription',
6083 proname
=> 'pg_stat_reset_subscription_stats', proisstrict
=> 'f',
6084 provolatile
=> 'v', prorettype
=> 'void', proargtypes
=> 'oid',
6085 prosrc
=> 'pg_stat_reset_subscription_stats' },
6087 { oid
=> '3163', descr
=> 'current trigger depth',
6088 proname
=> 'pg_trigger_depth', provolatile
=> 's', proparallel
=> 'r',
6089 prorettype
=> 'int4', proargtypes
=> '', prosrc
=> 'pg_trigger_depth' },
6091 { oid
=> '3778', descr
=> 'tablespace location',
6092 proname
=> 'pg_tablespace_location', provolatile
=> 's', prorettype
=> 'text',
6093 proargtypes
=> 'oid', prosrc
=> 'pg_tablespace_location' },
6096 descr
=> 'convert bytea value into some ascii-only text string',
6097 proname
=> 'encode', prorettype
=> 'text', proargtypes
=> 'bytea text',
6098 prosrc
=> 'binary_encode' },
6100 descr
=> 'convert ascii-encoded text string into bytea value',
6101 proname
=> 'decode', prorettype
=> 'bytea', proargtypes
=> 'text text',
6102 prosrc
=> 'binary_decode' },
6105 proname
=> 'byteaeq', proleakproof
=> 't', prorettype
=> 'bool',
6106 proargtypes
=> 'bytea bytea', prosrc
=> 'byteaeq' },
6108 proname
=> 'bytealt', proleakproof
=> 't', prorettype
=> 'bool',
6109 proargtypes
=> 'bytea bytea', prosrc
=> 'bytealt' },
6111 proname
=> 'byteale', proleakproof
=> 't', prorettype
=> 'bool',
6112 proargtypes
=> 'bytea bytea', prosrc
=> 'byteale' },
6114 proname
=> 'byteagt', proleakproof
=> 't', prorettype
=> 'bool',
6115 proargtypes
=> 'bytea bytea', prosrc
=> 'byteagt' },
6117 proname
=> 'byteage', proleakproof
=> 't', prorettype
=> 'bool',
6118 proargtypes
=> 'bytea bytea', prosrc
=> 'byteage' },
6120 proname
=> 'byteane', proleakproof
=> 't', prorettype
=> 'bool',
6121 proargtypes
=> 'bytea bytea', prosrc
=> 'byteane' },
6122 { oid
=> '1954', descr
=> 'less-equal-greater',
6123 proname
=> 'byteacmp', proleakproof
=> 't', prorettype
=> 'int4',
6124 proargtypes
=> 'bytea bytea', prosrc
=> 'byteacmp' },
6125 { oid
=> '3331', descr
=> 'sort support',
6126 proname
=> 'bytea_sortsupport', prorettype
=> 'void',
6127 proargtypes
=> 'internal', prosrc
=> 'bytea_sortsupport' },
6129 { oid
=> '3917', descr
=> 'planner support for timestamp length coercion',
6130 proname
=> 'timestamp_support', prorettype
=> 'internal',
6131 proargtypes
=> 'internal', prosrc
=> 'timestamp_support' },
6132 { oid
=> '3944', descr
=> 'planner support for time length coercion',
6133 proname
=> 'time_support', prorettype
=> 'internal',
6134 proargtypes
=> 'internal', prosrc
=> 'time_support' },
6136 { oid
=> '1961', descr
=> 'adjust timestamp precision',
6137 proname
=> 'timestamp', prosupport
=> 'timestamp_support',
6138 prorettype
=> 'timestamp', proargtypes
=> 'timestamp int4',
6139 prosrc
=> 'timestamp_scale' },
6141 { oid
=> '1965', descr
=> 'larger of two',
6142 proname
=> 'oidlarger', prorettype
=> 'oid', proargtypes
=> 'oid oid',
6143 prosrc
=> 'oidlarger' },
6144 { oid
=> '1966', descr
=> 'smaller of two',
6145 proname
=> 'oidsmaller', prorettype
=> 'oid', proargtypes
=> 'oid oid',
6146 prosrc
=> 'oidsmaller' },
6148 { oid
=> '1967', descr
=> 'adjust timestamptz precision',
6149 proname
=> 'timestamptz', prosupport
=> 'timestamp_support',
6150 prorettype
=> 'timestamptz', proargtypes
=> 'timestamptz int4',
6151 prosrc
=> 'timestamptz_scale' },
6152 { oid
=> '1968', descr
=> 'adjust time precision',
6153 proname
=> 'time', prosupport
=> 'time_support', prorettype
=> 'time',
6154 proargtypes
=> 'time int4', prosrc
=> 'time_scale' },
6155 { oid
=> '1969', descr
=> 'adjust time with time zone precision',
6156 proname
=> 'timetz', prosupport
=> 'time_support', prorettype
=> 'timetz',
6157 proargtypes
=> 'timetz int4', prosrc
=> 'timetz_scale' },
6160 proname
=> 'textanycat', prolang
=> 'sql', provolatile
=> 's',
6161 prorettype
=> 'text', proargtypes
=> 'text anynonarray',
6162 prosrc
=> 'select $1 operator(pg_catalog.||) $2::pg_catalog.text' },
6164 proname
=> 'anytextcat', prolang
=> 'sql', provolatile
=> 's',
6165 prorettype
=> 'text', proargtypes
=> 'anynonarray text',
6166 prosrc
=> 'select $1::pg_catalog.text operator(pg_catalog.||) $2' },
6169 proname
=> 'bytealike', prosupport
=> 'textlike_support',
6170 prorettype
=> 'bool', proargtypes
=> 'bytea bytea', prosrc
=> 'bytealike' },
6172 proname
=> 'byteanlike', prorettype
=> 'bool', proargtypes
=> 'bytea bytea',
6173 prosrc
=> 'byteanlike' },
6174 { oid
=> '2007', descr
=> 'matches LIKE expression',
6175 proname
=> 'like', prosupport
=> 'textlike_support', prorettype
=> 'bool',
6176 proargtypes
=> 'bytea bytea', prosrc
=> 'bytealike' },
6177 { oid
=> '2008', descr
=> 'does not match LIKE expression',
6178 proname
=> 'notlike', prorettype
=> 'bool', proargtypes
=> 'bytea bytea',
6179 prosrc
=> 'byteanlike' },
6180 { oid
=> '2009', descr
=> 'convert LIKE pattern to use backslash escapes',
6181 proname
=> 'like_escape', prorettype
=> 'bytea', proargtypes
=> 'bytea bytea',
6182 prosrc
=> 'like_escape_bytea' },
6183 { oid
=> '2010', descr
=> 'octet length',
6184 proname
=> 'length', prorettype
=> 'int4', proargtypes
=> 'bytea',
6185 prosrc
=> 'byteaoctetlen' },
6187 proname
=> 'byteacat', prorettype
=> 'bytea', proargtypes
=> 'bytea bytea',
6188 prosrc
=> 'byteacat' },
6189 { oid
=> '2012', descr
=> 'extract portion of string',
6190 proname
=> 'substring', prorettype
=> 'bytea',
6191 proargtypes
=> 'bytea int4 int4', prosrc
=> 'bytea_substr' },
6192 { oid
=> '2013', descr
=> 'extract portion of string',
6193 proname
=> 'substring', prorettype
=> 'bytea', proargtypes
=> 'bytea int4',
6194 prosrc
=> 'bytea_substr_no_len' },
6195 { oid
=> '2085', descr
=> 'extract portion of string',
6196 proname
=> 'substr', prorettype
=> 'bytea', proargtypes
=> 'bytea int4 int4',
6197 prosrc
=> 'bytea_substr' },
6198 { oid
=> '2086', descr
=> 'extract portion of string',
6199 proname
=> 'substr', prorettype
=> 'bytea', proargtypes
=> 'bytea int4',
6200 prosrc
=> 'bytea_substr_no_len' },
6201 { oid
=> '2014', descr
=> 'position of substring',
6202 proname
=> 'position', prorettype
=> 'int4', proargtypes
=> 'bytea bytea',
6203 prosrc
=> 'byteapos' },
6204 { oid
=> '2015', descr
=> 'trim selected bytes from both ends of string',
6205 proname
=> 'btrim', prorettype
=> 'bytea', proargtypes
=> 'bytea bytea',
6206 prosrc
=> 'byteatrim' },
6207 { oid
=> '6195', descr
=> 'trim selected bytes from left end of string',
6208 proname
=> 'ltrim', prorettype
=> 'bytea', proargtypes
=> 'bytea bytea',
6209 prosrc
=> 'bytealtrim' },
6210 { oid
=> '6196', descr
=> 'trim selected bytes from right end of string',
6211 proname
=> 'rtrim', prorettype
=> 'bytea', proargtypes
=> 'bytea bytea',
6212 prosrc
=> 'byteartrim' },
6214 { oid
=> '2019', descr
=> 'convert timestamp with time zone to time',
6215 proname
=> 'time', provolatile
=> 's', prorettype
=> 'time',
6216 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_time' },
6217 { oid
=> '2020', descr
=> 'truncate timestamp to specified units',
6218 proname
=> 'date_trunc', prorettype
=> 'timestamp',
6219 proargtypes
=> 'text timestamp', prosrc
=> 'timestamp_trunc' },
6221 { oid
=> '6177', descr
=> 'bin timestamp into specified interval',
6222 proname
=> 'date_bin', prorettype
=> 'timestamp',
6223 proargtypes
=> 'interval timestamp timestamp', prosrc
=> 'timestamp_bin' },
6225 descr
=> 'bin timestamp with time zone into specified interval',
6226 proname
=> 'date_bin', prorettype
=> 'timestamptz',
6227 proargtypes
=> 'interval timestamptz timestamptz',
6228 prosrc
=> 'timestamptz_bin' },
6230 { oid
=> '2021', descr
=> 'extract field from timestamp',
6231 proname
=> 'date_part', prorettype
=> 'float8',
6232 proargtypes
=> 'text timestamp', prosrc
=> 'timestamp_part' },
6233 { oid
=> '6202', descr
=> 'extract field from timestamp',
6234 proname
=> 'extract', prorettype
=> 'numeric',
6235 proargtypes
=> 'text timestamp', prosrc
=> 'extract_timestamp' },
6236 { oid
=> '2024', descr
=> 'convert date to timestamp',
6237 proname
=> 'timestamp', prorettype
=> 'timestamp', proargtypes
=> 'date',
6238 prosrc
=> 'date_timestamp' },
6239 { oid
=> '2025', descr
=> 'convert date and time to timestamp',
6240 proname
=> 'timestamp', prorettype
=> 'timestamp', proargtypes
=> 'date time',
6241 prosrc
=> 'datetime_timestamp' },
6242 { oid
=> '2027', descr
=> 'convert timestamp with time zone to timestamp',
6243 proname
=> 'timestamp', provolatile
=> 's', prorettype
=> 'timestamp',
6244 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_timestamp' },
6245 { oid
=> '2028', descr
=> 'convert timestamp to timestamp with time zone',
6246 proname
=> 'timestamptz', provolatile
=> 's', prorettype
=> 'timestamptz',
6247 proargtypes
=> 'timestamp', prosrc
=> 'timestamp_timestamptz' },
6248 { oid
=> '2029', descr
=> 'convert timestamp to date',
6249 proname
=> 'date', prorettype
=> 'date', proargtypes
=> 'timestamp',
6250 prosrc
=> 'timestamp_date' },
6252 proname
=> 'timestamp_mi', prorettype
=> 'interval',
6253 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_mi' },
6255 proname
=> 'timestamp_pl_interval', prorettype
=> 'timestamp',
6256 proargtypes
=> 'timestamp interval', prosrc
=> 'timestamp_pl_interval' },
6258 proname
=> 'timestamp_mi_interval', prorettype
=> 'timestamp',
6259 proargtypes
=> 'timestamp interval', prosrc
=> 'timestamp_mi_interval' },
6260 { oid
=> '2035', descr
=> 'smaller of two',
6261 proname
=> 'timestamp_smaller', prorettype
=> 'timestamp',
6262 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_smaller' },
6263 { oid
=> '2036', descr
=> 'larger of two',
6264 proname
=> 'timestamp_larger', prorettype
=> 'timestamp',
6265 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_larger' },
6266 { oid
=> '2037', descr
=> 'adjust time with time zone to new zone',
6267 proname
=> 'timezone', provolatile
=> 's', prorettype
=> 'timetz',
6268 proargtypes
=> 'text timetz', prosrc
=> 'timetz_zone' },
6269 { oid
=> '2038', descr
=> 'adjust time with time zone to new zone',
6270 proname
=> 'timezone', prorettype
=> 'timetz',
6271 proargtypes
=> 'interval timetz', prosrc
=> 'timetz_izone' },
6272 { oid
=> '6336', descr
=> 'adjust time to local time zone',
6273 proname
=> 'timezone', provolatile
=> 's', prorettype
=> 'timetz',
6274 proargtypes
=> 'timetz', prosrc
=> 'timetz_at_local' },
6275 { oid
=> '2039', descr
=> 'hash',
6276 proname
=> 'timestamp_hash', prorettype
=> 'int4', proargtypes
=> 'timestamp',
6277 prosrc
=> 'timestamp_hash' },
6278 { oid
=> '3411', descr
=> 'hash',
6279 proname
=> 'timestamp_hash_extended', prorettype
=> 'int8',
6280 proargtypes
=> 'timestamp int8', prosrc
=> 'timestamp_hash_extended' },
6281 { oid
=> '9720', descr
=> 'hash',
6282 proname
=> 'timestamptz_hash', prorettype
=> 'int4',
6283 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_hash' },
6284 { oid
=> '9721', descr
=> 'hash',
6285 proname
=> 'timestamptz_hash_extended', prorettype
=> 'int8',
6286 proargtypes
=> 'timestamptz int8', prosrc
=> 'timestamptz_hash_extended' },
6287 { oid
=> '2041', descr
=> 'intervals overlap?',
6288 proname
=> 'overlaps', proisstrict
=> 'f', prorettype
=> 'bool',
6289 proargtypes
=> 'timestamp timestamp timestamp timestamp',
6290 prosrc
=> 'overlaps_timestamp' },
6291 { oid
=> '2042', descr
=> 'intervals overlap?',
6292 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
6293 prorettype
=> 'bool', proargtypes
=> 'timestamp interval timestamp interval',
6294 prosrc
=> 'see system_functions.sql' },
6295 { oid
=> '2043', descr
=> 'intervals overlap?',
6296 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
6297 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamp timestamp interval',
6298 prosrc
=> 'see system_functions.sql' },
6299 { oid
=> '2044', descr
=> 'intervals overlap?',
6300 proname
=> 'overlaps', prolang
=> 'sql', proisstrict
=> 'f',
6301 prorettype
=> 'bool', proargtypes
=> 'timestamp interval timestamp timestamp',
6302 prosrc
=> 'see system_functions.sql' },
6303 { oid
=> '2045', descr
=> 'less-equal-greater',
6304 proname
=> 'timestamp_cmp', proleakproof
=> 't', prorettype
=> 'int4',
6305 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_cmp' },
6306 { oid
=> '3137', descr
=> 'sort support',
6307 proname
=> 'timestamp_sortsupport', prorettype
=> 'void',
6308 proargtypes
=> 'internal', prosrc
=> 'timestamp_sortsupport' },
6310 { oid
=> '4134', descr
=> 'window RANGE support',
6311 proname
=> 'in_range', prorettype
=> 'bool',
6312 proargtypes
=> 'timestamp timestamp interval bool bool',
6313 prosrc
=> 'in_range_timestamp_interval' },
6314 { oid
=> '4135', descr
=> 'window RANGE support',
6315 proname
=> 'in_range', provolatile
=> 's', prorettype
=> 'bool',
6316 proargtypes
=> 'timestamptz timestamptz interval bool bool',
6317 prosrc
=> 'in_range_timestamptz_interval' },
6318 { oid
=> '4136', descr
=> 'window RANGE support',
6319 proname
=> 'in_range', prorettype
=> 'bool',
6320 proargtypes
=> 'interval interval interval bool bool',
6321 prosrc
=> 'in_range_interval_interval' },
6322 { oid
=> '4137', descr
=> 'window RANGE support',
6323 proname
=> 'in_range', prorettype
=> 'bool',
6324 proargtypes
=> 'time time interval bool bool',
6325 prosrc
=> 'in_range_time_interval' },
6326 { oid
=> '4138', descr
=> 'window RANGE support',
6327 proname
=> 'in_range', prorettype
=> 'bool',
6328 proargtypes
=> 'timetz timetz interval bool bool',
6329 prosrc
=> 'in_range_timetz_interval' },
6331 { oid
=> '2046', descr
=> 'convert time with time zone to time',
6332 proname
=> 'time', prorettype
=> 'time', proargtypes
=> 'timetz',
6333 prosrc
=> 'timetz_time' },
6334 { oid
=> '2047', descr
=> 'convert time to time with time zone',
6335 proname
=> 'timetz', provolatile
=> 's', prorettype
=> 'timetz',
6336 proargtypes
=> 'time', prosrc
=> 'time_timetz' },
6337 { oid
=> '2048', descr
=> 'finite timestamp?',
6338 proname
=> 'isfinite', prorettype
=> 'bool', proargtypes
=> 'timestamp',
6339 prosrc
=> 'timestamp_finite' },
6340 { oid
=> '2049', descr
=> 'format timestamp to text',
6341 proname
=> 'to_char', provolatile
=> 's', prorettype
=> 'text',
6342 proargtypes
=> 'timestamp text', prosrc
=> 'timestamp_to_char' },
6344 proname
=> 'timestamp_eq', proleakproof
=> 't', prorettype
=> 'bool',
6345 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_eq' },
6347 proname
=> 'timestamp_ne', proleakproof
=> 't', prorettype
=> 'bool',
6348 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_ne' },
6350 proname
=> 'timestamp_lt', proleakproof
=> 't', prorettype
=> 'bool',
6351 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_lt' },
6353 proname
=> 'timestamp_le', proleakproof
=> 't', prorettype
=> 'bool',
6354 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_le' },
6356 proname
=> 'timestamp_ge', proleakproof
=> 't', prorettype
=> 'bool',
6357 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_ge' },
6359 proname
=> 'timestamp_gt', proleakproof
=> 't', prorettype
=> 'bool',
6360 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_gt' },
6361 { oid
=> '2058', descr
=> 'date difference preserving months and years',
6362 proname
=> 'age', prorettype
=> 'interval',
6363 proargtypes
=> 'timestamp timestamp', prosrc
=> 'timestamp_age' },
6365 descr
=> 'date difference from today preserving months and years',
6366 proname
=> 'age', prolang
=> 'sql', provolatile
=> 's',
6367 prorettype
=> 'interval', proargtypes
=> 'timestamp',
6368 prosrc
=> 'see system_functions.sql' },
6370 { oid
=> '2069', descr
=> 'adjust timestamp to new time zone',
6371 proname
=> 'timezone', prorettype
=> 'timestamptz',
6372 proargtypes
=> 'text timestamp', prosrc
=> 'timestamp_zone' },
6373 { oid
=> '2070', descr
=> 'adjust timestamp to new time zone',
6374 proname
=> 'timezone', prorettype
=> 'timestamptz',
6375 proargtypes
=> 'interval timestamp', prosrc
=> 'timestamp_izone' },
6376 { oid
=> '6335', descr
=> 'adjust timestamp to local time zone',
6377 proname
=> 'timezone', provolatile
=> 's', prorettype
=> 'timestamptz',
6378 proargtypes
=> 'timestamp', prosrc
=> 'timestamp_at_local' },
6380 proname
=> 'date_pl_interval', prorettype
=> 'timestamp',
6381 proargtypes
=> 'date interval', prosrc
=> 'date_pl_interval' },
6383 proname
=> 'date_mi_interval', prorettype
=> 'timestamp',
6384 proargtypes
=> 'date interval', prosrc
=> 'date_mi_interval' },
6386 { oid
=> '2073', descr
=> 'extract text matching regular expression',
6387 proname
=> 'substring', prorettype
=> 'text', proargtypes
=> 'text text',
6388 prosrc
=> 'textregexsubstr' },
6389 { oid
=> '2074', descr
=> 'extract text matching SQL regular expression',
6390 proname
=> 'substring', prolang
=> 'sql', prorettype
=> 'text',
6391 proargtypes
=> 'text text text', prosrc
=> 'see system_functions.sql' },
6393 { oid
=> '2075', descr
=> 'convert int8 to bitstring',
6394 proname
=> 'bit', prorettype
=> 'bit', proargtypes
=> 'int8 int4',
6395 prosrc
=> 'bitfromint8' },
6396 { oid
=> '2076', descr
=> 'convert bitstring to int8',
6397 proname
=> 'int8', prorettype
=> 'int8', proargtypes
=> 'bit',
6398 prosrc
=> 'bittoint8' },
6400 { oid
=> '2077', descr
=> 'SHOW X as a function',
6401 proname
=> 'current_setting', provolatile
=> 's', prorettype
=> 'text',
6402 proargtypes
=> 'text', prosrc
=> 'show_config_by_name' },
6404 descr
=> 'SHOW X as a function, optionally no error for missing variable',
6405 proname
=> 'current_setting', provolatile
=> 's', prorettype
=> 'text',
6406 proargtypes
=> 'text bool', prosrc
=> 'show_config_by_name_missing_ok' },
6407 { oid
=> '2078', descr
=> 'SET X as a function',
6408 proname
=> 'set_config', proisstrict
=> 'f', provolatile
=> 'v',
6409 proparallel
=> 'u', prorettype
=> 'text', proargtypes
=> 'text text bool',
6410 prosrc
=> 'set_config_by_name' },
6411 { oid
=> '2084', descr
=> 'SHOW ALL as a function',
6412 proname
=> 'pg_show_all_settings', prorows
=> '1000', proretset
=> 't',
6413 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> '',
6414 proallargtypes
=> '{text,text,text,text,text,text,text,text,text,text,text,_text,text,text,text,int4,bool}',
6415 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
6416 proargnames
=> '{name,setting,unit,category,short_desc,extra_desc,context,vartype,source,min_val,max_val,enumvals,boot_val,reset_val,sourcefile,sourceline,pending_restart}',
6417 prosrc
=> 'show_all_settings' },
6419 { oid
=> '6240', descr
=> 'return flags for specified GUC',
6420 proname
=> 'pg_settings_get_flags', provolatile
=> 's', prorettype
=> '_text',
6421 proargtypes
=> 'text', prosrc
=> 'pg_settings_get_flags' },
6423 { oid
=> '3329', descr
=> 'show config file settings',
6424 proname
=> 'pg_show_all_file_settings', prorows
=> '1000', proretset
=> 't',
6425 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
6426 proallargtypes
=> '{text,int4,int4,text,text,bool,text}',
6427 proargmodes
=> '{o,o,o,o,o,o,o}',
6428 proargnames
=> '{sourcefile,sourceline,seqno,name,setting,applied,error}',
6429 prosrc
=> 'show_all_file_settings' },
6430 { oid
=> '3401', descr
=> 'show pg_hba.conf rules',
6431 proname
=> 'pg_hba_file_rules', prorows
=> '1000', proretset
=> 't',
6432 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
6433 proallargtypes
=> '{int4,text,int4,text,_text,_text,text,text,text,_text,text}',
6434 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o}',
6435 proargnames
=> '{rule_number,file_name,line_number,type,database,user_name,address,netmask,auth_method,options,error}',
6436 prosrc
=> 'pg_hba_file_rules' },
6437 { oid
=> '6250', descr
=> 'show pg_ident.conf mappings',
6438 proname
=> 'pg_ident_file_mappings', prorows
=> '1000', proretset
=> 't',
6439 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
6440 proallargtypes
=> '{int4,text,int4,text,text,text,text}',
6441 proargmodes
=> '{o,o,o,o,o,o,o}',
6442 proargnames
=> '{map_number,file_name,line_number,map_name,sys_name,pg_username,error}',
6443 prosrc
=> 'pg_ident_file_mappings' },
6444 { oid
=> '1371', descr
=> 'view system lock information',
6445 proname
=> 'pg_lock_status', prorows
=> '1000', proretset
=> 't',
6446 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
6447 proallargtypes
=> '{text,oid,oid,int4,int2,text,xid,oid,oid,int2,text,int4,text,bool,bool,timestamptz}',
6448 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
6449 proargnames
=> '{locktype,database,relation,page,tuple,virtualxid,transactionid,classid,objid,objsubid,virtualtransaction,pid,mode,granted,fastpath,waitstart}',
6450 prosrc
=> 'pg_lock_status' },
6452 descr
=> 'get array of PIDs of sessions blocking specified backend PID from acquiring a heavyweight lock',
6453 proname
=> 'pg_blocking_pids', provolatile
=> 'v', prorettype
=> '_int4',
6454 proargtypes
=> 'int4', prosrc
=> 'pg_blocking_pids' },
6456 descr
=> 'get array of PIDs of sessions blocking specified backend PID from acquiring a safe snapshot',
6457 proname
=> 'pg_safe_snapshot_blocking_pids', provolatile
=> 'v',
6458 prorettype
=> '_int4', proargtypes
=> 'int4',
6459 prosrc
=> 'pg_safe_snapshot_blocking_pids' },
6460 { oid
=> '3378', descr
=> 'isolationtester support function',
6461 proname
=> 'pg_isolation_test_session_is_blocked', provolatile
=> 'v',
6462 prorettype
=> 'bool', proargtypes
=> 'int4 _int4',
6463 prosrc
=> 'pg_isolation_test_session_is_blocked' },
6464 { oid
=> '1065', descr
=> 'view two-phase transactions',
6465 proname
=> 'pg_prepared_xact', prorows
=> '1000', proretset
=> 't',
6466 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
6467 proallargtypes
=> '{xid,text,timestamptz,oid,oid}',
6468 proargmodes
=> '{o,o,o,o,o}',
6469 proargnames
=> '{transaction,gid,prepared,ownerid,dbid}',
6470 prosrc
=> 'pg_prepared_xact' },
6471 { oid
=> '3819', descr
=> 'view members of a multixactid',
6472 proname
=> 'pg_get_multixact_members', prorows
=> '1000', proretset
=> 't',
6473 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> 'xid',
6474 proallargtypes
=> '{xid,xid,text}', proargmodes
=> '{i,o,o}',
6475 proargnames
=> '{multixid,xid,mode}', prosrc
=> 'pg_get_multixact_members' },
6477 { oid
=> '3581', descr
=> 'get commit timestamp of a transaction',
6478 proname
=> 'pg_xact_commit_timestamp', provolatile
=> 'v',
6479 prorettype
=> 'timestamptz', proargtypes
=> 'xid',
6480 prosrc
=> 'pg_xact_commit_timestamp' },
6483 descr
=> 'get commit timestamp and replication origin of a transaction',
6484 proname
=> 'pg_xact_commit_timestamp_origin', provolatile
=> 'v',
6485 prorettype
=> 'record', proargtypes
=> 'xid',
6486 proallargtypes
=> '{xid,timestamptz,oid}', proargmodes
=> '{i,o,o}',
6487 proargnames
=> '{xid,timestamp,roident}',
6488 prosrc
=> 'pg_xact_commit_timestamp_origin' },
6491 descr
=> 'get transaction Id, commit timestamp and replication origin of latest transaction commit',
6492 proname
=> 'pg_last_committed_xact', provolatile
=> 'v',
6493 prorettype
=> 'record', proargtypes
=> '',
6494 proallargtypes
=> '{xid,timestamptz,oid}', proargmodes
=> '{o,o,o}',
6495 proargnames
=> '{xid,timestamp,roident}',
6496 prosrc
=> 'pg_last_committed_xact' },
6498 { oid
=> '3537', descr
=> 'get identification of SQL object',
6499 proname
=> 'pg_describe_object', provolatile
=> 's', prorettype
=> 'text',
6500 proargtypes
=> 'oid oid int4', prosrc
=> 'pg_describe_object' },
6502 { oid
=> '8730', descr
=> 'get ACL for SQL object',
6503 proname
=> 'pg_get_acl', provolatile
=> 's', prorettype
=> '_aclitem',
6504 proargtypes
=> 'oid oid int4', proargnames
=> '{classid,objid,objsubid}',
6505 prosrc
=> 'pg_get_acl' },
6508 descr
=> 'get machine-parseable identification of SQL object',
6509 proname
=> 'pg_identify_object', provolatile
=> 's', prorettype
=> 'record',
6510 proargtypes
=> 'oid oid int4',
6511 proallargtypes
=> '{oid,oid,int4,text,text,text,text}',
6512 proargmodes
=> '{i,i,i,o,o,o,o}',
6513 proargnames
=> '{classid,objid,objsubid,type,schema,name,identity}',
6514 prosrc
=> 'pg_identify_object' },
6517 descr
=> 'get identification of SQL object for pg_get_object_address()',
6518 proname
=> 'pg_identify_object_as_address', provolatile
=> 's',
6519 prorettype
=> 'record', proargtypes
=> 'oid oid int4',
6520 proallargtypes
=> '{oid,oid,int4,text,_text,_text}',
6521 proargmodes
=> '{i,i,i,o,o,o}',
6522 proargnames
=> '{classid,objid,objsubid,type,object_names,object_args}',
6523 prosrc
=> 'pg_identify_object_as_address' },
6526 descr
=> 'get OID-based object address from name/args arrays',
6527 proname
=> 'pg_get_object_address', provolatile
=> 's',
6528 prorettype
=> 'record', proargtypes
=> 'text _text _text',
6529 proallargtypes
=> '{text,_text,_text,oid,oid,int4}',
6530 proargmodes
=> '{i,i,i,o,o,o}',
6531 proargnames
=> '{type,object_names,object_args,classid,objid,objsubid}',
6532 prosrc
=> 'pg_get_object_address' },
6534 { oid
=> '2079', descr
=> 'is table visible in search path?',
6535 proname
=> 'pg_table_is_visible', procost
=> '10', provolatile
=> 's',
6536 prorettype
=> 'bool', proargtypes
=> 'oid', prosrc
=> 'pg_table_is_visible' },
6537 { oid
=> '2080', descr
=> 'is type visible in search path?',
6538 proname
=> 'pg_type_is_visible', procost
=> '10', provolatile
=> 's',
6539 prorettype
=> 'bool', proargtypes
=> 'oid', prosrc
=> 'pg_type_is_visible' },
6540 { oid
=> '2081', descr
=> 'is function visible in search path?',
6541 proname
=> 'pg_function_is_visible', procost
=> '10', provolatile
=> 's',
6542 prorettype
=> 'bool', proargtypes
=> 'oid',
6543 prosrc
=> 'pg_function_is_visible' },
6544 { oid
=> '2082', descr
=> 'is operator visible in search path?',
6545 proname
=> 'pg_operator_is_visible', procost
=> '10', provolatile
=> 's',
6546 prorettype
=> 'bool', proargtypes
=> 'oid',
6547 prosrc
=> 'pg_operator_is_visible' },
6548 { oid
=> '2083', descr
=> 'is opclass visible in search path?',
6549 proname
=> 'pg_opclass_is_visible', procost
=> '10', provolatile
=> 's',
6550 prorettype
=> 'bool', proargtypes
=> 'oid',
6551 prosrc
=> 'pg_opclass_is_visible' },
6552 { oid
=> '3829', descr
=> 'is opfamily visible in search path?',
6553 proname
=> 'pg_opfamily_is_visible', procost
=> '10', provolatile
=> 's',
6554 prorettype
=> 'bool', proargtypes
=> 'oid',
6555 prosrc
=> 'pg_opfamily_is_visible' },
6556 { oid
=> '2093', descr
=> 'is conversion visible in search path?',
6557 proname
=> 'pg_conversion_is_visible', procost
=> '10', provolatile
=> 's',
6558 prorettype
=> 'bool', proargtypes
=> 'oid',
6559 prosrc
=> 'pg_conversion_is_visible' },
6560 { oid
=> '3403', descr
=> 'is statistics object visible in search path?',
6561 proname
=> 'pg_statistics_obj_is_visible', procost
=> '10',
6562 provolatile
=> 's', prorettype
=> 'bool', proargtypes
=> 'oid',
6563 prosrc
=> 'pg_statistics_obj_is_visible' },
6564 { oid
=> '3756', descr
=> 'is text search parser visible in search path?',
6565 proname
=> 'pg_ts_parser_is_visible', procost
=> '10', provolatile
=> 's',
6566 prorettype
=> 'bool', proargtypes
=> 'oid',
6567 prosrc
=> 'pg_ts_parser_is_visible' },
6568 { oid
=> '3757', descr
=> 'is text search dictionary visible in search path?',
6569 proname
=> 'pg_ts_dict_is_visible', procost
=> '10', provolatile
=> 's',
6570 prorettype
=> 'bool', proargtypes
=> 'oid',
6571 prosrc
=> 'pg_ts_dict_is_visible' },
6572 { oid
=> '3768', descr
=> 'is text search template visible in search path?',
6573 proname
=> 'pg_ts_template_is_visible', procost
=> '10', provolatile
=> 's',
6574 prorettype
=> 'bool', proargtypes
=> 'oid',
6575 prosrc
=> 'pg_ts_template_is_visible' },
6577 descr
=> 'is text search configuration visible in search path?',
6578 proname
=> 'pg_ts_config_is_visible', procost
=> '10', provolatile
=> 's',
6579 prorettype
=> 'bool', proargtypes
=> 'oid',
6580 prosrc
=> 'pg_ts_config_is_visible' },
6581 { oid
=> '3815', descr
=> 'is collation visible in search path?',
6582 proname
=> 'pg_collation_is_visible', procost
=> '10', provolatile
=> 's',
6583 prorettype
=> 'bool', proargtypes
=> 'oid',
6584 prosrc
=> 'pg_collation_is_visible' },
6586 { oid
=> '2854', descr
=> 'get OID of current session\'s temp schema, if any',
6587 proname
=> 'pg_my_temp_schema', provolatile
=> 's', proparallel
=> 'r',
6588 prorettype
=> 'oid', proargtypes
=> '', prosrc
=> 'pg_my_temp_schema' },
6589 { oid
=> '2855', descr
=> 'is schema another session\'s temp schema?',
6590 proname
=> 'pg_is_other_temp_schema', provolatile
=> 's',
6591 prorettype
=> 'bool', proargtypes
=> 'oid',
6592 prosrc
=> 'pg_is_other_temp_schema' },
6594 { oid
=> '2171', descr
=> 'cancel a server process\' current query',
6595 proname
=> 'pg_cancel_backend', provolatile
=> 'v', prorettype
=> 'bool',
6596 proargtypes
=> 'int4', prosrc
=> 'pg_cancel_backend' },
6597 { oid
=> '2096', descr
=> 'terminate a server process',
6598 proname
=> 'pg_terminate_backend', provolatile
=> 'v', prorettype
=> 'bool',
6599 proargtypes
=> 'int4 int8', proargnames
=> '{pid,timeout}',
6600 prosrc
=> 'pg_terminate_backend' },
6601 { oid
=> '2172', descr
=> 'prepare for taking an online backup',
6602 proname
=> 'pg_backup_start', provolatile
=> 'v', proparallel
=> 'r',
6603 prorettype
=> 'pg_lsn', proargtypes
=> 'text bool',
6604 prosrc
=> 'pg_backup_start' },
6605 { oid
=> '2739', descr
=> 'finish taking an online backup',
6606 proname
=> 'pg_backup_stop', provolatile
=> 'v', proparallel
=> 'r',
6607 prorettype
=> 'record', proargtypes
=> 'bool',
6608 proallargtypes
=> '{bool,pg_lsn,text,text}', proargmodes
=> '{i,o,o,o}',
6609 proargnames
=> '{wait_for_archive,lsn,labelfile,spcmapfile}',
6610 prosrc
=> 'pg_backup_stop' },
6611 { oid
=> '3436', descr
=> 'promote standby server',
6612 proname
=> 'pg_promote', provolatile
=> 'v', prorettype
=> 'bool',
6613 proargtypes
=> 'bool int4', proargnames
=> '{wait,wait_seconds}',
6614 prosrc
=> 'pg_promote' },
6615 { oid
=> '2848', descr
=> 'switch to new wal file',
6616 proname
=> 'pg_switch_wal', provolatile
=> 'v', prorettype
=> 'pg_lsn',
6617 proargtypes
=> '', prosrc
=> 'pg_switch_wal' },
6618 { oid
=> '6305', descr
=> 'log details of the current snapshot to WAL',
6619 proname
=> 'pg_log_standby_snapshot', provolatile
=> 'v',
6620 prorettype
=> 'pg_lsn', proargtypes
=> '',
6621 prosrc
=> 'pg_log_standby_snapshot' },
6622 { oid
=> '3098', descr
=> 'create a named restore point',
6623 proname
=> 'pg_create_restore_point', provolatile
=> 'v',
6624 prorettype
=> 'pg_lsn', proargtypes
=> 'text',
6625 prosrc
=> 'pg_create_restore_point' },
6626 { oid
=> '2849', descr
=> 'current wal write location',
6627 proname
=> 'pg_current_wal_lsn', provolatile
=> 'v', prorettype
=> 'pg_lsn',
6628 proargtypes
=> '', prosrc
=> 'pg_current_wal_lsn' },
6629 { oid
=> '2852', descr
=> 'current wal insert location',
6630 proname
=> 'pg_current_wal_insert_lsn', provolatile
=> 'v',
6631 prorettype
=> 'pg_lsn', proargtypes
=> '',
6632 prosrc
=> 'pg_current_wal_insert_lsn' },
6633 { oid
=> '3330', descr
=> 'current wal flush location',
6634 proname
=> 'pg_current_wal_flush_lsn', provolatile
=> 'v',
6635 prorettype
=> 'pg_lsn', proargtypes
=> '',
6636 prosrc
=> 'pg_current_wal_flush_lsn' },
6638 descr
=> 'wal filename and byte offset, given a wal location',
6639 proname
=> 'pg_walfile_name_offset', prorettype
=> 'record',
6640 proargtypes
=> 'pg_lsn', proallargtypes
=> '{pg_lsn,text,int4}',
6641 proargmodes
=> '{i,o,o}', proargnames
=> '{lsn,file_name,file_offset}',
6642 prosrc
=> 'pg_walfile_name_offset' },
6643 { oid
=> '2851', descr
=> 'wal filename, given a wal location',
6644 proname
=> 'pg_walfile_name', prorettype
=> 'text', proargtypes
=> 'pg_lsn',
6645 prosrc
=> 'pg_walfile_name' },
6647 descr
=> 'sequence number and timeline ID given a wal filename',
6648 proname
=> 'pg_split_walfile_name', provolatile
=> 's',
6649 prorettype
=> 'record', proargtypes
=> 'text',
6650 proallargtypes
=> '{text,numeric,int8}', proargmodes
=> '{i,o,o}',
6651 proargnames
=> '{file_name,segment_number,timeline_id}',
6652 prosrc
=> 'pg_split_walfile_name' },
6654 { oid
=> '3165', descr
=> 'difference in bytes, given two wal locations',
6655 proname
=> 'pg_wal_lsn_diff', prorettype
=> 'numeric',
6656 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_wal_lsn_diff' },
6658 { oid
=> '3809', descr
=> 'export a snapshot',
6659 proname
=> 'pg_export_snapshot', provolatile
=> 'v', proparallel
=> 'u',
6660 prorettype
=> 'text', proargtypes
=> '', prosrc
=> 'pg_export_snapshot' },
6662 { oid
=> '3810', descr
=> 'true if server is in recovery',
6663 proname
=> 'pg_is_in_recovery', provolatile
=> 'v', prorettype
=> 'bool',
6664 proargtypes
=> '', prosrc
=> 'pg_is_in_recovery' },
6666 { oid
=> '3820', descr
=> 'current wal flush location',
6667 proname
=> 'pg_last_wal_receive_lsn', provolatile
=> 'v',
6668 prorettype
=> 'pg_lsn', proargtypes
=> '',
6669 prosrc
=> 'pg_last_wal_receive_lsn' },
6670 { oid
=> '3821', descr
=> 'last wal replay location',
6671 proname
=> 'pg_last_wal_replay_lsn', provolatile
=> 'v',
6672 prorettype
=> 'pg_lsn', proargtypes
=> '',
6673 prosrc
=> 'pg_last_wal_replay_lsn' },
6674 { oid
=> '3830', descr
=> 'timestamp of last replay xact',
6675 proname
=> 'pg_last_xact_replay_timestamp', provolatile
=> 'v',
6676 prorettype
=> 'timestamptz', proargtypes
=> '',
6677 prosrc
=> 'pg_last_xact_replay_timestamp' },
6679 { oid
=> '3071', descr
=> 'pause wal replay',
6680 proname
=> 'pg_wal_replay_pause', provolatile
=> 'v', prorettype
=> 'void',
6681 proargtypes
=> '', prosrc
=> 'pg_wal_replay_pause' },
6682 { oid
=> '3072', descr
=> 'resume wal replay, if it was paused',
6683 proname
=> 'pg_wal_replay_resume', provolatile
=> 'v', prorettype
=> 'void',
6684 proargtypes
=> '', prosrc
=> 'pg_wal_replay_resume' },
6685 { oid
=> '3073', descr
=> 'true if wal replay is paused',
6686 proname
=> 'pg_is_wal_replay_paused', provolatile
=> 'v',
6687 prorettype
=> 'bool', proargtypes
=> '',
6688 prosrc
=> 'pg_is_wal_replay_paused' },
6689 { oid
=> '1137', descr
=> 'get wal replay pause state',
6690 proname
=> 'pg_get_wal_replay_pause_state', provolatile
=> 'v',
6691 prorettype
=> 'text', proargtypes
=> '',
6692 prosrc
=> 'pg_get_wal_replay_pause_state' },
6694 { oid
=> '6224', descr
=> 'get resource managers loaded in system',
6695 proname
=> 'pg_get_wal_resource_managers', prorows
=> '50', proretset
=> 't',
6696 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
6697 proallargtypes
=> '{int4,text,bool}', proargmodes
=> '{o,o,o}',
6698 proargnames
=> '{rm_id, rm_name, rm_builtin}',
6699 prosrc
=> 'pg_get_wal_resource_managers' },
6701 { oid
=> '2621', descr
=> 'reload configuration files',
6702 proname
=> 'pg_reload_conf', provolatile
=> 'v', prorettype
=> 'bool',
6703 proargtypes
=> '', prosrc
=> 'pg_reload_conf' },
6704 { oid
=> '2622', descr
=> 'rotate log file',
6705 proname
=> 'pg_rotate_logfile', provolatile
=> 'v', prorettype
=> 'bool',
6706 proargtypes
=> '', prosrc
=> 'pg_rotate_logfile' },
6707 { oid
=> '3800', descr
=> 'current logging collector file location',
6708 proname
=> 'pg_current_logfile', proisstrict
=> 'f', provolatile
=> 'v',
6709 prorettype
=> 'text', proargtypes
=> '', prosrc
=> 'pg_current_logfile' },
6710 { oid
=> '3801', descr
=> 'current logging collector file location',
6711 proname
=> 'pg_current_logfile', proisstrict
=> 'f', provolatile
=> 'v',
6712 prorettype
=> 'text', proargtypes
=> 'text',
6713 prosrc
=> 'pg_current_logfile_1arg' },
6715 { oid
=> '2623', descr
=> 'get information about file',
6716 proname
=> 'pg_stat_file', provolatile
=> 'v', prorettype
=> 'record',
6717 proargtypes
=> 'text',
6718 proallargtypes
=> '{text,int8,timestamptz,timestamptz,timestamptz,timestamptz,bool}',
6719 proargmodes
=> '{i,o,o,o,o,o,o}',
6720 proargnames
=> '{filename,size,access,modification,change,creation,isdir}',
6721 prosrc
=> 'pg_stat_file_1arg' },
6722 { oid
=> '3307', descr
=> 'get information about file',
6723 proname
=> 'pg_stat_file', provolatile
=> 'v', prorettype
=> 'record',
6724 proargtypes
=> 'text bool',
6725 proallargtypes
=> '{text,bool,int8,timestamptz,timestamptz,timestamptz,timestamptz,bool}',
6726 proargmodes
=> '{i,i,o,o,o,o,o,o}',
6727 proargnames
=> '{filename,missing_ok,size,access,modification,change,creation,isdir}',
6728 prosrc
=> 'pg_stat_file' },
6729 { oid
=> '2624', descr
=> 'read text from a file',
6730 proname
=> 'pg_read_file', provolatile
=> 'v', prorettype
=> 'text',
6731 proargtypes
=> 'text int8 int8', prosrc
=> 'pg_read_file_off_len' },
6732 { oid
=> '3293', descr
=> 'read text from a file',
6733 proname
=> 'pg_read_file', provolatile
=> 'v', prorettype
=> 'text',
6734 proargtypes
=> 'text int8 int8 bool',
6735 prosrc
=> 'pg_read_file_off_len_missing' },
6736 { oid
=> '3826', descr
=> 'read text from a file',
6737 proname
=> 'pg_read_file', provolatile
=> 'v', prorettype
=> 'text',
6738 proargtypes
=> 'text', prosrc
=> 'pg_read_file_all' },
6739 { oid
=> '6208', descr
=> 'read text from a file',
6740 proname
=> 'pg_read_file', provolatile
=> 'v', prorettype
=> 'text',
6741 proargtypes
=> 'text bool', prosrc
=> 'pg_read_file_all_missing' },
6742 { oid
=> '3827', descr
=> 'read bytea from a file',
6743 proname
=> 'pg_read_binary_file', provolatile
=> 'v', prorettype
=> 'bytea',
6744 proargtypes
=> 'text int8 int8', prosrc
=> 'pg_read_binary_file_off_len' },
6745 { oid
=> '3295', descr
=> 'read bytea from a file',
6746 proname
=> 'pg_read_binary_file', provolatile
=> 'v', prorettype
=> 'bytea',
6747 proargtypes
=> 'text int8 int8 bool',
6748 prosrc
=> 'pg_read_binary_file_off_len_missing' },
6749 { oid
=> '3828', descr
=> 'read bytea from a file',
6750 proname
=> 'pg_read_binary_file', provolatile
=> 'v', prorettype
=> 'bytea',
6751 proargtypes
=> 'text', prosrc
=> 'pg_read_binary_file_all' },
6752 { oid
=> '6209', descr
=> 'read bytea from a file',
6753 proname
=> 'pg_read_binary_file', provolatile
=> 'v', prorettype
=> 'bytea',
6754 proargtypes
=> 'text bool', prosrc
=> 'pg_read_binary_file_all_missing' },
6755 { oid
=> '2625', descr
=> 'list all files in a directory',
6756 proname
=> 'pg_ls_dir', prorows
=> '1000', proretset
=> 't',
6757 provolatile
=> 'v', prorettype
=> 'text', proargtypes
=> 'text',
6758 prosrc
=> 'pg_ls_dir_1arg' },
6759 { oid
=> '3297', descr
=> 'list all files in a directory',
6760 proname
=> 'pg_ls_dir', prorows
=> '1000', proretset
=> 't',
6761 provolatile
=> 'v', prorettype
=> 'text', proargtypes
=> 'text bool bool',
6762 prosrc
=> 'pg_ls_dir' },
6763 { oid
=> '2626', descr
=> 'sleep for the specified time in seconds',
6764 proname
=> 'pg_sleep', provolatile
=> 'v', prorettype
=> 'void',
6765 proargtypes
=> 'float8', prosrc
=> 'pg_sleep' },
6766 { oid
=> '3935', descr
=> 'sleep for the specified interval',
6767 proname
=> 'pg_sleep_for', prolang
=> 'sql', provolatile
=> 'v',
6768 prorettype
=> 'void', proargtypes
=> 'interval',
6769 prosrc
=> 'see system_functions.sql' },
6770 { oid
=> '3936', descr
=> 'sleep until the specified time',
6771 proname
=> 'pg_sleep_until', prolang
=> 'sql', provolatile
=> 'v',
6772 prorettype
=> 'void', proargtypes
=> 'timestamptz',
6773 prosrc
=> 'see system_functions.sql' },
6774 { oid
=> '315', descr
=> 'Is JIT compilation available in this session?',
6775 proname
=> 'pg_jit_available', provolatile
=> 'v', prorettype
=> 'bool',
6776 proargtypes
=> '', prosrc
=> 'pg_jit_available' },
6778 { oid
=> '2971', descr
=> 'convert boolean to text',
6779 proname
=> 'text', prorettype
=> 'text', proargtypes
=> 'bool',
6780 prosrc
=> 'booltext' },
6782 # Aggregates (moved here from pg_aggregate for 7.3)
6785 descr
=> 'the average (arithmetic mean) as numeric of all bigint values',
6786 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6787 proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
6789 descr
=> 'the average (arithmetic mean) as numeric of all integer values',
6790 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6791 proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
6793 descr
=> 'the average (arithmetic mean) as numeric of all smallint values',
6794 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6795 proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
6797 descr
=> 'the average (arithmetic mean) as numeric of all numeric values',
6798 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6799 proargtypes
=> 'numeric', prosrc
=> 'aggregate_dummy' },
6801 descr
=> 'the average (arithmetic mean) as float8 of all float4 values',
6802 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float8',
6803 proargtypes
=> 'float4', prosrc
=> 'aggregate_dummy' },
6805 descr
=> 'the average (arithmetic mean) as float8 of all float8 values',
6806 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float8',
6807 proargtypes
=> 'float8', prosrc
=> 'aggregate_dummy' },
6809 descr
=> 'the average (arithmetic mean) as interval of all interval values',
6810 proname
=> 'avg', prokind
=> 'a', proisstrict
=> 'f',
6811 prorettype
=> 'interval', proargtypes
=> 'interval',
6812 prosrc
=> 'aggregate_dummy' },
6814 { oid
=> '2107', descr
=> 'sum as numeric across all bigint input values',
6815 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6816 proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
6817 { oid
=> '2108', descr
=> 'sum as bigint across all integer input values',
6818 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int8',
6819 proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
6820 { oid
=> '2109', descr
=> 'sum as bigint across all smallint input values',
6821 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int8',
6822 proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
6823 { oid
=> '2110', descr
=> 'sum as float4 across all float4 input values',
6824 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float4',
6825 proargtypes
=> 'float4', prosrc
=> 'aggregate_dummy' },
6826 { oid
=> '2111', descr
=> 'sum as float8 across all float8 input values',
6827 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float8',
6828 proargtypes
=> 'float8', prosrc
=> 'aggregate_dummy' },
6829 { oid
=> '2112', descr
=> 'sum as money across all money input values',
6830 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'money',
6831 proargtypes
=> 'money', prosrc
=> 'aggregate_dummy' },
6832 { oid
=> '2113', descr
=> 'sum as interval across all interval input values',
6833 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f',
6834 prorettype
=> 'interval', proargtypes
=> 'interval',
6835 prosrc
=> 'aggregate_dummy' },
6836 { oid
=> '2114', descr
=> 'sum as numeric across all numeric input values',
6837 proname
=> 'sum', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6838 proargtypes
=> 'numeric', prosrc
=> 'aggregate_dummy' },
6840 { oid
=> '2115', descr
=> 'maximum value of all bigint input values',
6841 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int8',
6842 proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
6843 { oid
=> '2116', descr
=> 'maximum value of all integer input values',
6844 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int4',
6845 proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
6846 { oid
=> '2117', descr
=> 'maximum value of all smallint input values',
6847 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int2',
6848 proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
6849 { oid
=> '2118', descr
=> 'maximum value of all oid input values',
6850 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'oid',
6851 proargtypes
=> 'oid', prosrc
=> 'aggregate_dummy' },
6852 { oid
=> '2119', descr
=> 'maximum value of all float4 input values',
6853 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float4',
6854 proargtypes
=> 'float4', prosrc
=> 'aggregate_dummy' },
6855 { oid
=> '2120', descr
=> 'maximum value of all float8 input values',
6856 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float8',
6857 proargtypes
=> 'float8', prosrc
=> 'aggregate_dummy' },
6858 { oid
=> '2122', descr
=> 'maximum value of all date input values',
6859 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'date',
6860 proargtypes
=> 'date', prosrc
=> 'aggregate_dummy' },
6861 { oid
=> '2123', descr
=> 'maximum value of all time input values',
6862 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'time',
6863 proargtypes
=> 'time', prosrc
=> 'aggregate_dummy' },
6865 descr
=> 'maximum value of all time with time zone input values',
6866 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'timetz',
6867 proargtypes
=> 'timetz', prosrc
=> 'aggregate_dummy' },
6868 { oid
=> '2125', descr
=> 'maximum value of all money input values',
6869 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'money',
6870 proargtypes
=> 'money', prosrc
=> 'aggregate_dummy' },
6871 { oid
=> '2126', descr
=> 'maximum value of all timestamp input values',
6872 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f',
6873 prorettype
=> 'timestamp', proargtypes
=> 'timestamp',
6874 prosrc
=> 'aggregate_dummy' },
6876 descr
=> 'maximum value of all timestamp with time zone input values',
6877 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f',
6878 prorettype
=> 'timestamptz', proargtypes
=> 'timestamptz',
6879 prosrc
=> 'aggregate_dummy' },
6880 { oid
=> '2128', descr
=> 'maximum value of all interval input values',
6881 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f',
6882 prorettype
=> 'interval', proargtypes
=> 'interval',
6883 prosrc
=> 'aggregate_dummy' },
6884 { oid
=> '2129', descr
=> 'maximum value of all text input values',
6885 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'text',
6886 proargtypes
=> 'text', prosrc
=> 'aggregate_dummy' },
6887 { oid
=> '2130', descr
=> 'maximum value of all numeric input values',
6888 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6889 proargtypes
=> 'numeric', prosrc
=> 'aggregate_dummy' },
6890 { oid
=> '2050', descr
=> 'maximum value of all anyarray input values',
6891 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f',
6892 prorettype
=> 'anyarray', proargtypes
=> 'anyarray',
6893 prosrc
=> 'aggregate_dummy' },
6894 { oid
=> '8595', descr
=> 'maximum value of all record input values',
6895 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'record',
6896 proargtypes
=> 'record', prosrc
=> 'aggregate_dummy' },
6897 { oid
=> '2244', descr
=> 'maximum value of all bpchar input values',
6898 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bpchar',
6899 proargtypes
=> 'bpchar', prosrc
=> 'aggregate_dummy' },
6900 { oid
=> '2797', descr
=> 'maximum value of all tid input values',
6901 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'tid',
6902 proargtypes
=> 'tid', prosrc
=> 'aggregate_dummy' },
6903 { oid
=> '3564', descr
=> 'maximum value of all inet input values',
6904 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'inet',
6905 proargtypes
=> 'inet', prosrc
=> 'aggregate_dummy' },
6906 { oid
=> '4189', descr
=> 'maximum value of all pg_lsn input values',
6907 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'pg_lsn',
6908 proargtypes
=> 'pg_lsn', prosrc
=> 'aggregate_dummy' },
6909 { oid
=> '5099', descr
=> 'maximum value of all xid8 input values',
6910 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'xid8',
6911 proargtypes
=> 'xid8', prosrc
=> 'aggregate_dummy' },
6912 { oid
=> '8922', descr
=> 'maximum value of all bytea input values',
6913 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bytea',
6914 proargtypes
=> 'bytea', prosrc
=> 'aggregate_dummy' },
6916 { oid
=> '2131', descr
=> 'minimum value of all bigint input values',
6917 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int8',
6918 proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
6919 { oid
=> '2132', descr
=> 'minimum value of all integer input values',
6920 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int4',
6921 proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
6922 { oid
=> '2133', descr
=> 'minimum value of all smallint input values',
6923 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int2',
6924 proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
6925 { oid
=> '2134', descr
=> 'minimum value of all oid input values',
6926 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'oid',
6927 proargtypes
=> 'oid', prosrc
=> 'aggregate_dummy' },
6928 { oid
=> '2135', descr
=> 'minimum value of all float4 input values',
6929 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float4',
6930 proargtypes
=> 'float4', prosrc
=> 'aggregate_dummy' },
6931 { oid
=> '2136', descr
=> 'minimum value of all float8 input values',
6932 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float8',
6933 proargtypes
=> 'float8', prosrc
=> 'aggregate_dummy' },
6934 { oid
=> '2138', descr
=> 'minimum value of all date input values',
6935 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'date',
6936 proargtypes
=> 'date', prosrc
=> 'aggregate_dummy' },
6937 { oid
=> '2139', descr
=> 'minimum value of all time input values',
6938 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'time',
6939 proargtypes
=> 'time', prosrc
=> 'aggregate_dummy' },
6941 descr
=> 'minimum value of all time with time zone input values',
6942 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'timetz',
6943 proargtypes
=> 'timetz', prosrc
=> 'aggregate_dummy' },
6944 { oid
=> '2141', descr
=> 'minimum value of all money input values',
6945 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'money',
6946 proargtypes
=> 'money', prosrc
=> 'aggregate_dummy' },
6947 { oid
=> '2142', descr
=> 'minimum value of all timestamp input values',
6948 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f',
6949 prorettype
=> 'timestamp', proargtypes
=> 'timestamp',
6950 prosrc
=> 'aggregate_dummy' },
6952 descr
=> 'minimum value of all timestamp with time zone input values',
6953 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f',
6954 prorettype
=> 'timestamptz', proargtypes
=> 'timestamptz',
6955 prosrc
=> 'aggregate_dummy' },
6956 { oid
=> '2144', descr
=> 'minimum value of all interval input values',
6957 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f',
6958 prorettype
=> 'interval', proargtypes
=> 'interval',
6959 prosrc
=> 'aggregate_dummy' },
6960 { oid
=> '2145', descr
=> 'minimum value of all text values',
6961 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'text',
6962 proargtypes
=> 'text', prosrc
=> 'aggregate_dummy' },
6963 { oid
=> '2146', descr
=> 'minimum value of all numeric input values',
6964 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'numeric',
6965 proargtypes
=> 'numeric', prosrc
=> 'aggregate_dummy' },
6966 { oid
=> '2051', descr
=> 'minimum value of all anyarray input values',
6967 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f',
6968 prorettype
=> 'anyarray', proargtypes
=> 'anyarray',
6969 prosrc
=> 'aggregate_dummy' },
6970 { oid
=> '8596', descr
=> 'minimum value of all record input values',
6971 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'record',
6972 proargtypes
=> 'record', prosrc
=> 'aggregate_dummy' },
6973 { oid
=> '2245', descr
=> 'minimum value of all bpchar input values',
6974 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bpchar',
6975 proargtypes
=> 'bpchar', prosrc
=> 'aggregate_dummy' },
6976 { oid
=> '2798', descr
=> 'minimum value of all tid input values',
6977 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'tid',
6978 proargtypes
=> 'tid', prosrc
=> 'aggregate_dummy' },
6979 { oid
=> '3565', descr
=> 'minimum value of all inet input values',
6980 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'inet',
6981 proargtypes
=> 'inet', prosrc
=> 'aggregate_dummy' },
6982 { oid
=> '4190', descr
=> 'minimum value of all pg_lsn input values',
6983 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'pg_lsn',
6984 proargtypes
=> 'pg_lsn', prosrc
=> 'aggregate_dummy' },
6985 { oid
=> '5100', descr
=> 'minimum value of all xid8 input values',
6986 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'xid8',
6987 proargtypes
=> 'xid8', prosrc
=> 'aggregate_dummy' },
6988 { oid
=> '8923', descr
=> 'minimum value of all bytea input values',
6989 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bytea',
6990 proargtypes
=> 'bytea', prosrc
=> 'aggregate_dummy' },
6992 # count has two forms: count(any) and count(*)
6994 descr
=> 'number of input rows for which the input expression is not null',
6995 proname
=> 'count', prosupport
=> 'int8inc_support', prokind
=> 'a',
6996 proisstrict
=> 'f', prorettype
=> 'int8', proargtypes
=> 'any',
6997 prosrc
=> 'aggregate_dummy' },
6998 { oid
=> '2803', descr
=> 'number of input rows',
6999 proname
=> 'count', prosupport
=> 'int8inc_support', prokind
=> 'a',
7000 proisstrict
=> 'f', prorettype
=> 'int8', proargtypes
=> '',
7001 prosrc
=> 'aggregate_dummy' },
7002 { oid
=> '6236', descr
=> 'planner support for count run condition',
7003 proname
=> 'int8inc_support', prorettype
=> 'internal',
7004 proargtypes
=> 'internal', prosrc
=> 'int8inc_support' },
7007 descr
=> 'population variance of bigint input values (square of the population standard deviation)',
7008 proname
=> 'var_pop', prokind
=> 'a', proisstrict
=> 'f',
7009 prorettype
=> 'numeric', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
7011 descr
=> 'population variance of integer input values (square of the population standard deviation)',
7012 proname
=> 'var_pop', prokind
=> 'a', proisstrict
=> 'f',
7013 prorettype
=> 'numeric', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
7015 descr
=> 'population variance of smallint input values (square of the population standard deviation)',
7016 proname
=> 'var_pop', prokind
=> 'a', proisstrict
=> 'f',
7017 prorettype
=> 'numeric', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
7019 descr
=> 'population variance of float4 input values (square of the population standard deviation)',
7020 proname
=> 'var_pop', prokind
=> 'a', proisstrict
=> 'f',
7021 prorettype
=> 'float8', proargtypes
=> 'float4',
7022 prosrc
=> 'aggregate_dummy' },
7024 descr
=> 'population variance of float8 input values (square of the population standard deviation)',
7025 proname
=> 'var_pop', prokind
=> 'a', proisstrict
=> 'f',
7026 prorettype
=> 'float8', proargtypes
=> 'float8',
7027 prosrc
=> 'aggregate_dummy' },
7029 descr
=> 'population variance of numeric input values (square of the population standard deviation)',
7030 proname
=> 'var_pop', prokind
=> 'a', proisstrict
=> 'f',
7031 prorettype
=> 'numeric', proargtypes
=> 'numeric',
7032 prosrc
=> 'aggregate_dummy' },
7035 descr
=> 'sample variance of bigint input values (square of the sample standard deviation)',
7036 proname
=> 'var_samp', prokind
=> 'a', proisstrict
=> 'f',
7037 prorettype
=> 'numeric', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
7039 descr
=> 'sample variance of integer input values (square of the sample standard deviation)',
7040 proname
=> 'var_samp', prokind
=> 'a', proisstrict
=> 'f',
7041 prorettype
=> 'numeric', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
7043 descr
=> 'sample variance of smallint input values (square of the sample standard deviation)',
7044 proname
=> 'var_samp', prokind
=> 'a', proisstrict
=> 'f',
7045 prorettype
=> 'numeric', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
7047 descr
=> 'sample variance of float4 input values (square of the sample standard deviation)',
7048 proname
=> 'var_samp', prokind
=> 'a', proisstrict
=> 'f',
7049 prorettype
=> 'float8', proargtypes
=> 'float4',
7050 prosrc
=> 'aggregate_dummy' },
7053 descr
=> 'sample variance of float8 input values (square of the sample standard deviation)',
7054 proname
=> 'var_samp', prokind
=> 'a', proisstrict
=> 'f',
7055 prorettype
=> 'float8', proargtypes
=> 'float8',
7056 prosrc
=> 'aggregate_dummy' },
7058 descr
=> 'sample variance of numeric input values (square of the sample standard deviation)',
7059 proname
=> 'var_samp', prokind
=> 'a', proisstrict
=> 'f',
7060 prorettype
=> 'numeric', proargtypes
=> 'numeric',
7061 prosrc
=> 'aggregate_dummy' },
7063 { oid
=> '2148', descr
=> 'historical alias for var_samp',
7064 proname
=> 'variance', prokind
=> 'a', proisstrict
=> 'f',
7065 prorettype
=> 'numeric', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
7066 { oid
=> '2149', descr
=> 'historical alias for var_samp',
7067 proname
=> 'variance', prokind
=> 'a', proisstrict
=> 'f',
7068 prorettype
=> 'numeric', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
7069 { oid
=> '2150', descr
=> 'historical alias for var_samp',
7070 proname
=> 'variance', prokind
=> 'a', proisstrict
=> 'f',
7071 prorettype
=> 'numeric', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
7072 { oid
=> '2151', descr
=> 'historical alias for var_samp',
7073 proname
=> 'variance', prokind
=> 'a', proisstrict
=> 'f',
7074 prorettype
=> 'float8', proargtypes
=> 'float4',
7075 prosrc
=> 'aggregate_dummy' },
7076 { oid
=> '2152', descr
=> 'historical alias for var_samp',
7077 proname
=> 'variance', prokind
=> 'a', proisstrict
=> 'f',
7078 prorettype
=> 'float8', proargtypes
=> 'float8',
7079 prosrc
=> 'aggregate_dummy' },
7080 { oid
=> '2153', descr
=> 'historical alias for var_samp',
7081 proname
=> 'variance', prokind
=> 'a', proisstrict
=> 'f',
7082 prorettype
=> 'numeric', proargtypes
=> 'numeric',
7083 prosrc
=> 'aggregate_dummy' },
7086 descr
=> 'population standard deviation of bigint input values',
7087 proname
=> 'stddev_pop', prokind
=> 'a', proisstrict
=> 'f',
7088 prorettype
=> 'numeric', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
7090 descr
=> 'population standard deviation of integer input values',
7091 proname
=> 'stddev_pop', prokind
=> 'a', proisstrict
=> 'f',
7092 prorettype
=> 'numeric', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
7094 descr
=> 'population standard deviation of smallint input values',
7095 proname
=> 'stddev_pop', prokind
=> 'a', proisstrict
=> 'f',
7096 prorettype
=> 'numeric', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
7098 descr
=> 'population standard deviation of float4 input values',
7099 proname
=> 'stddev_pop', prokind
=> 'a', proisstrict
=> 'f',
7100 prorettype
=> 'float8', proargtypes
=> 'float4',
7101 prosrc
=> 'aggregate_dummy' },
7103 descr
=> 'population standard deviation of float8 input values',
7104 proname
=> 'stddev_pop', prokind
=> 'a', proisstrict
=> 'f',
7105 prorettype
=> 'float8', proargtypes
=> 'float8',
7106 prosrc
=> 'aggregate_dummy' },
7108 descr
=> 'population standard deviation of numeric input values',
7109 proname
=> 'stddev_pop', prokind
=> 'a', proisstrict
=> 'f',
7110 prorettype
=> 'numeric', proargtypes
=> 'numeric',
7111 prosrc
=> 'aggregate_dummy' },
7113 { oid
=> '2712', descr
=> 'sample standard deviation of bigint input values',
7114 proname
=> 'stddev_samp', prokind
=> 'a', proisstrict
=> 'f',
7115 prorettype
=> 'numeric', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
7116 { oid
=> '2713', descr
=> 'sample standard deviation of integer input values',
7117 proname
=> 'stddev_samp', prokind
=> 'a', proisstrict
=> 'f',
7118 prorettype
=> 'numeric', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
7120 descr
=> 'sample standard deviation of smallint input values',
7121 proname
=> 'stddev_samp', prokind
=> 'a', proisstrict
=> 'f',
7122 prorettype
=> 'numeric', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
7123 { oid
=> '2715', descr
=> 'sample standard deviation of float4 input values',
7124 proname
=> 'stddev_samp', prokind
=> 'a', proisstrict
=> 'f',
7125 prorettype
=> 'float8', proargtypes
=> 'float4',
7126 prosrc
=> 'aggregate_dummy' },
7127 { oid
=> '2716', descr
=> 'sample standard deviation of float8 input values',
7128 proname
=> 'stddev_samp', prokind
=> 'a', proisstrict
=> 'f',
7129 prorettype
=> 'float8', proargtypes
=> 'float8',
7130 prosrc
=> 'aggregate_dummy' },
7131 { oid
=> '2717', descr
=> 'sample standard deviation of numeric input values',
7132 proname
=> 'stddev_samp', prokind
=> 'a', proisstrict
=> 'f',
7133 prorettype
=> 'numeric', proargtypes
=> 'numeric',
7134 prosrc
=> 'aggregate_dummy' },
7136 { oid
=> '2154', descr
=> 'historical alias for stddev_samp',
7137 proname
=> 'stddev', prokind
=> 'a', proisstrict
=> 'f',
7138 prorettype
=> 'numeric', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
7139 { oid
=> '2155', descr
=> 'historical alias for stddev_samp',
7140 proname
=> 'stddev', prokind
=> 'a', proisstrict
=> 'f',
7141 prorettype
=> 'numeric', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
7142 { oid
=> '2156', descr
=> 'historical alias for stddev_samp',
7143 proname
=> 'stddev', prokind
=> 'a', proisstrict
=> 'f',
7144 prorettype
=> 'numeric', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
7145 { oid
=> '2157', descr
=> 'historical alias for stddev_samp',
7146 proname
=> 'stddev', prokind
=> 'a', proisstrict
=> 'f',
7147 prorettype
=> 'float8', proargtypes
=> 'float4',
7148 prosrc
=> 'aggregate_dummy' },
7149 { oid
=> '2158', descr
=> 'historical alias for stddev_samp',
7150 proname
=> 'stddev', prokind
=> 'a', proisstrict
=> 'f',
7151 prorettype
=> 'float8', proargtypes
=> 'float8',
7152 prosrc
=> 'aggregate_dummy' },
7153 { oid
=> '2159', descr
=> 'historical alias for stddev_samp',
7154 proname
=> 'stddev', prokind
=> 'a', proisstrict
=> 'f',
7155 prorettype
=> 'numeric', proargtypes
=> 'numeric',
7156 prosrc
=> 'aggregate_dummy' },
7159 descr
=> 'number of input rows in which both expressions are not null',
7160 proname
=> 'regr_count', prokind
=> 'a', proisstrict
=> 'f',
7161 prorettype
=> 'int8', proargtypes
=> 'float8 float8',
7162 prosrc
=> 'aggregate_dummy' },
7164 descr
=> 'sum of squares of the independent variable (sum(X^2) - sum(X)^2/N)',
7165 proname
=> 'regr_sxx', prokind
=> 'a', proisstrict
=> 'f',
7166 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7167 prosrc
=> 'aggregate_dummy' },
7169 descr
=> 'sum of squares of the dependent variable (sum(Y^2) - sum(Y)^2/N)',
7170 proname
=> 'regr_syy', prokind
=> 'a', proisstrict
=> 'f',
7171 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7172 prosrc
=> 'aggregate_dummy' },
7174 descr
=> 'sum of products of independent times dependent variable (sum(X*Y) - sum(X) * sum(Y)/N)',
7175 proname
=> 'regr_sxy', prokind
=> 'a', proisstrict
=> 'f',
7176 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7177 prosrc
=> 'aggregate_dummy' },
7178 { oid
=> '2822', descr
=> 'average of the independent variable (sum(X)/N)',
7179 proname
=> 'regr_avgx', prokind
=> 'a', proisstrict
=> 'f',
7180 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7181 prosrc
=> 'aggregate_dummy' },
7182 { oid
=> '2823', descr
=> 'average of the dependent variable (sum(Y)/N)',
7183 proname
=> 'regr_avgy', prokind
=> 'a', proisstrict
=> 'f',
7184 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7185 prosrc
=> 'aggregate_dummy' },
7186 { oid
=> '2824', descr
=> 'square of the correlation coefficient',
7187 proname
=> 'regr_r2', prokind
=> 'a', proisstrict
=> 'f',
7188 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7189 prosrc
=> 'aggregate_dummy' },
7191 descr
=> 'slope of the least-squares-fit linear equation determined by the (X, Y) pairs',
7192 proname
=> 'regr_slope', prokind
=> 'a', proisstrict
=> 'f',
7193 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7194 prosrc
=> 'aggregate_dummy' },
7196 descr
=> 'y-intercept of the least-squares-fit linear equation determined by the (X, Y) pairs',
7197 proname
=> 'regr_intercept', prokind
=> 'a', proisstrict
=> 'f',
7198 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7199 prosrc
=> 'aggregate_dummy' },
7201 { oid
=> '2827', descr
=> 'population covariance',
7202 proname
=> 'covar_pop', prokind
=> 'a', proisstrict
=> 'f',
7203 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7204 prosrc
=> 'aggregate_dummy' },
7205 { oid
=> '2828', descr
=> 'sample covariance',
7206 proname
=> 'covar_samp', prokind
=> 'a', proisstrict
=> 'f',
7207 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
7208 prosrc
=> 'aggregate_dummy' },
7209 { oid
=> '2829', descr
=> 'correlation coefficient',
7210 proname
=> 'corr', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'float8',
7211 proargtypes
=> 'float8 float8', prosrc
=> 'aggregate_dummy' },
7214 proname
=> 'text_pattern_lt', proleakproof
=> 't', prorettype
=> 'bool',
7215 proargtypes
=> 'text text', prosrc
=> 'text_pattern_lt' },
7217 proname
=> 'text_pattern_le', proleakproof
=> 't', prorettype
=> 'bool',
7218 proargtypes
=> 'text text', prosrc
=> 'text_pattern_le' },
7220 proname
=> 'text_pattern_ge', proleakproof
=> 't', prorettype
=> 'bool',
7221 proargtypes
=> 'text text', prosrc
=> 'text_pattern_ge' },
7223 proname
=> 'text_pattern_gt', proleakproof
=> 't', prorettype
=> 'bool',
7224 proargtypes
=> 'text text', prosrc
=> 'text_pattern_gt' },
7225 { oid
=> '2166', descr
=> 'less-equal-greater',
7226 proname
=> 'bttext_pattern_cmp', proleakproof
=> 't', prorettype
=> 'int4',
7227 proargtypes
=> 'text text', prosrc
=> 'bttext_pattern_cmp' },
7228 { oid
=> '3332', descr
=> 'sort support',
7229 proname
=> 'bttext_pattern_sortsupport', prorettype
=> 'void',
7230 proargtypes
=> 'internal', prosrc
=> 'bttext_pattern_sortsupport' },
7233 proname
=> 'bpchar_pattern_lt', proleakproof
=> 't', prorettype
=> 'bool',
7234 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchar_pattern_lt' },
7236 proname
=> 'bpchar_pattern_le', proleakproof
=> 't', prorettype
=> 'bool',
7237 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchar_pattern_le' },
7239 proname
=> 'bpchar_pattern_ge', proleakproof
=> 't', prorettype
=> 'bool',
7240 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchar_pattern_ge' },
7242 proname
=> 'bpchar_pattern_gt', proleakproof
=> 't', prorettype
=> 'bool',
7243 proargtypes
=> 'bpchar bpchar', prosrc
=> 'bpchar_pattern_gt' },
7244 { oid
=> '2180', descr
=> 'less-equal-greater',
7245 proname
=> 'btbpchar_pattern_cmp', proleakproof
=> 't', prorettype
=> 'int4',
7246 proargtypes
=> 'bpchar bpchar', prosrc
=> 'btbpchar_pattern_cmp' },
7247 { oid
=> '3333', descr
=> 'sort support',
7248 proname
=> 'btbpchar_pattern_sortsupport', prorettype
=> 'void',
7249 proargtypes
=> 'internal', prosrc
=> 'btbpchar_pattern_sortsupport' },
7251 { oid
=> '2188', descr
=> 'less-equal-greater',
7252 proname
=> 'btint48cmp', proleakproof
=> 't', prorettype
=> 'int4',
7253 proargtypes
=> 'int4 int8', prosrc
=> 'btint48cmp' },
7254 { oid
=> '2189', descr
=> 'less-equal-greater',
7255 proname
=> 'btint84cmp', proleakproof
=> 't', prorettype
=> 'int4',
7256 proargtypes
=> 'int8 int4', prosrc
=> 'btint84cmp' },
7257 { oid
=> '2190', descr
=> 'less-equal-greater',
7258 proname
=> 'btint24cmp', proleakproof
=> 't', prorettype
=> 'int4',
7259 proargtypes
=> 'int2 int4', prosrc
=> 'btint24cmp' },
7260 { oid
=> '2191', descr
=> 'less-equal-greater',
7261 proname
=> 'btint42cmp', proleakproof
=> 't', prorettype
=> 'int4',
7262 proargtypes
=> 'int4 int2', prosrc
=> 'btint42cmp' },
7263 { oid
=> '2192', descr
=> 'less-equal-greater',
7264 proname
=> 'btint28cmp', proleakproof
=> 't', prorettype
=> 'int4',
7265 proargtypes
=> 'int2 int8', prosrc
=> 'btint28cmp' },
7266 { oid
=> '2193', descr
=> 'less-equal-greater',
7267 proname
=> 'btint82cmp', proleakproof
=> 't', prorettype
=> 'int4',
7268 proargtypes
=> 'int8 int2', prosrc
=> 'btint82cmp' },
7269 { oid
=> '2194', descr
=> 'less-equal-greater',
7270 proname
=> 'btfloat48cmp', proleakproof
=> 't', prorettype
=> 'int4',
7271 proargtypes
=> 'float4 float8', prosrc
=> 'btfloat48cmp' },
7272 { oid
=> '2195', descr
=> 'less-equal-greater',
7273 proname
=> 'btfloat84cmp', proleakproof
=> 't', prorettype
=> 'int4',
7274 proargtypes
=> 'float8 float4', prosrc
=> 'btfloat84cmp' },
7276 { oid
=> '2212', descr
=> 'I/O',
7277 proname
=> 'regprocedurein', provolatile
=> 's', prorettype
=> 'regprocedure',
7278 proargtypes
=> 'cstring', prosrc
=> 'regprocedurein' },
7279 { oid
=> '2213', descr
=> 'I/O',
7280 proname
=> 'regprocedureout', provolatile
=> 's', prorettype
=> 'cstring',
7281 proargtypes
=> 'regprocedure', prosrc
=> 'regprocedureout' },
7282 { oid
=> '2214', descr
=> 'I/O',
7283 proname
=> 'regoperin', provolatile
=> 's', prorettype
=> 'regoper',
7284 proargtypes
=> 'cstring', prosrc
=> 'regoperin' },
7285 { oid
=> '2215', descr
=> 'I/O',
7286 proname
=> 'regoperout', provolatile
=> 's', prorettype
=> 'cstring',
7287 proargtypes
=> 'regoper', prosrc
=> 'regoperout' },
7288 { oid
=> '3492', descr
=> 'convert operator name to regoper',
7289 proname
=> 'to_regoper', provolatile
=> 's', prorettype
=> 'regoper',
7290 proargtypes
=> 'text', prosrc
=> 'to_regoper' },
7291 { oid
=> '3476', descr
=> 'convert operator name to regoperator',
7292 proname
=> 'to_regoperator', provolatile
=> 's', prorettype
=> 'regoperator',
7293 proargtypes
=> 'text', prosrc
=> 'to_regoperator' },
7294 { oid
=> '2216', descr
=> 'I/O',
7295 proname
=> 'regoperatorin', provolatile
=> 's', prorettype
=> 'regoperator',
7296 proargtypes
=> 'cstring', prosrc
=> 'regoperatorin' },
7297 { oid
=> '2217', descr
=> 'I/O',
7298 proname
=> 'regoperatorout', provolatile
=> 's', prorettype
=> 'cstring',
7299 proargtypes
=> 'regoperator', prosrc
=> 'regoperatorout' },
7300 { oid
=> '2218', descr
=> 'I/O',
7301 proname
=> 'regclassin', provolatile
=> 's', prorettype
=> 'regclass',
7302 proargtypes
=> 'cstring', prosrc
=> 'regclassin' },
7303 { oid
=> '2219', descr
=> 'I/O',
7304 proname
=> 'regclassout', provolatile
=> 's', prorettype
=> 'cstring',
7305 proargtypes
=> 'regclass', prosrc
=> 'regclassout' },
7306 { oid
=> '3495', descr
=> 'convert classname to regclass',
7307 proname
=> 'to_regclass', provolatile
=> 's', prorettype
=> 'regclass',
7308 proargtypes
=> 'text', prosrc
=> 'to_regclass' },
7309 { oid
=> '4193', descr
=> 'I/O',
7310 proname
=> 'regcollationin', provolatile
=> 's', prorettype
=> 'regcollation',
7311 proargtypes
=> 'cstring', prosrc
=> 'regcollationin' },
7312 { oid
=> '4194', descr
=> 'I/O',
7313 proname
=> 'regcollationout', provolatile
=> 's', prorettype
=> 'cstring',
7314 proargtypes
=> 'regcollation', prosrc
=> 'regcollationout' },
7315 { oid
=> '4195', descr
=> 'convert classname to regcollation',
7316 proname
=> 'to_regcollation', provolatile
=> 's',
7317 prorettype
=> 'regcollation', proargtypes
=> 'text',
7318 prosrc
=> 'to_regcollation' },
7319 { oid
=> '2220', descr
=> 'I/O',
7320 proname
=> 'regtypein', provolatile
=> 's', prorettype
=> 'regtype',
7321 proargtypes
=> 'cstring', prosrc
=> 'regtypein' },
7322 { oid
=> '2221', descr
=> 'I/O',
7323 proname
=> 'regtypeout', provolatile
=> 's', prorettype
=> 'cstring',
7324 proargtypes
=> 'regtype', prosrc
=> 'regtypeout' },
7325 { oid
=> '3493', descr
=> 'convert type name to regtype',
7326 proname
=> 'to_regtype', provolatile
=> 's', prorettype
=> 'regtype',
7327 proargtypes
=> 'text', prosrc
=> 'to_regtype' },
7328 { oid
=> '6317', descr
=> 'convert type name to type modifier',
7329 proname
=> 'to_regtypemod', provolatile
=> 's', prorettype
=> 'int4',
7330 proargtypes
=> 'text', prosrc
=> 'to_regtypemod' },
7331 { oid
=> '1079', descr
=> 'convert text to regclass',
7332 proname
=> 'regclass', provolatile
=> 's', prorettype
=> 'regclass',
7333 proargtypes
=> 'text', prosrc
=> 'text_regclass' },
7335 { oid
=> '4098', descr
=> 'I/O',
7336 proname
=> 'regrolein', provolatile
=> 's', prorettype
=> 'regrole',
7337 proargtypes
=> 'cstring', prosrc
=> 'regrolein' },
7338 { oid
=> '4092', descr
=> 'I/O',
7339 proname
=> 'regroleout', provolatile
=> 's', prorettype
=> 'cstring',
7340 proargtypes
=> 'regrole', prosrc
=> 'regroleout' },
7341 { oid
=> '4093', descr
=> 'convert role name to regrole',
7342 proname
=> 'to_regrole', provolatile
=> 's', prorettype
=> 'regrole',
7343 proargtypes
=> 'text', prosrc
=> 'to_regrole' },
7345 { oid
=> '4084', descr
=> 'I/O',
7346 proname
=> 'regnamespacein', provolatile
=> 's', prorettype
=> 'regnamespace',
7347 proargtypes
=> 'cstring', prosrc
=> 'regnamespacein' },
7348 { oid
=> '4085', descr
=> 'I/O',
7349 proname
=> 'regnamespaceout', provolatile
=> 's', prorettype
=> 'cstring',
7350 proargtypes
=> 'regnamespace', prosrc
=> 'regnamespaceout' },
7351 { oid
=> '4086', descr
=> 'convert namespace name to regnamespace',
7352 proname
=> 'to_regnamespace', provolatile
=> 's',
7353 prorettype
=> 'regnamespace', proargtypes
=> 'text',
7354 prosrc
=> 'to_regnamespace' },
7356 { oid
=> '6210', descr
=> 'test whether string is valid input for data type',
7357 proname
=> 'pg_input_is_valid', provolatile
=> 's', prorettype
=> 'bool',
7358 proargtypes
=> 'text text', prosrc
=> 'pg_input_is_valid' },
7360 descr
=> 'get error details if string is not valid input for data type',
7361 proname
=> 'pg_input_error_info', provolatile
=> 's', prorettype
=> 'record',
7362 proargtypes
=> 'text text',
7363 proallargtypes
=> '{text,text,text,text,text,text}',
7364 proargmodes
=> '{i,i,o,o,o,o}',
7365 proargnames
=> '{value,type_name,message,detail,hint,sql_error_code}',
7366 prosrc
=> 'pg_input_error_info' },
7369 descr
=> 'parse qualified identifier to array of identifiers',
7370 proname
=> 'parse_ident', prorettype
=> '_text', proargtypes
=> 'text bool',
7371 proargnames
=> '{str,strict}', prosrc
=> 'parse_ident' },
7373 { oid
=> '2246', descr
=> '(internal)',
7374 proname
=> 'fmgr_internal_validator', provolatile
=> 's',
7375 prorettype
=> 'void', proargtypes
=> 'oid',
7376 prosrc
=> 'fmgr_internal_validator' },
7377 { oid
=> '2247', descr
=> '(internal)',
7378 proname
=> 'fmgr_c_validator', provolatile
=> 's', prorettype
=> 'void',
7379 proargtypes
=> 'oid', prosrc
=> 'fmgr_c_validator' },
7380 { oid
=> '2248', descr
=> '(internal)',
7381 proname
=> 'fmgr_sql_validator', provolatile
=> 's', prorettype
=> 'void',
7382 proargtypes
=> 'oid', prosrc
=> 'fmgr_sql_validator' },
7385 descr
=> 'user privilege on database by username, database name',
7386 proname
=> 'has_database_privilege', provolatile
=> 's', prorettype
=> 'bool',
7387 proargtypes
=> 'name text text',
7388 prosrc
=> 'has_database_privilege_name_name' },
7390 descr
=> 'user privilege on database by username, database oid',
7391 proname
=> 'has_database_privilege', provolatile
=> 's', prorettype
=> 'bool',
7392 proargtypes
=> 'name oid text', prosrc
=> 'has_database_privilege_name_id' },
7394 descr
=> 'user privilege on database by user oid, database name',
7395 proname
=> 'has_database_privilege', provolatile
=> 's', prorettype
=> 'bool',
7396 proargtypes
=> 'oid text text', prosrc
=> 'has_database_privilege_id_name' },
7398 descr
=> 'user privilege on database by user oid, database oid',
7399 proname
=> 'has_database_privilege', provolatile
=> 's', prorettype
=> 'bool',
7400 proargtypes
=> 'oid oid text', prosrc
=> 'has_database_privilege_id_id' },
7402 descr
=> 'current user privilege on database by database name',
7403 proname
=> 'has_database_privilege', provolatile
=> 's', prorettype
=> 'bool',
7404 proargtypes
=> 'text text', prosrc
=> 'has_database_privilege_name' },
7406 descr
=> 'current user privilege on database by database oid',
7407 proname
=> 'has_database_privilege', provolatile
=> 's', prorettype
=> 'bool',
7408 proargtypes
=> 'oid text', prosrc
=> 'has_database_privilege_id' },
7411 descr
=> 'user privilege on function by username, function name',
7412 proname
=> 'has_function_privilege', provolatile
=> 's', prorettype
=> 'bool',
7413 proargtypes
=> 'name text text',
7414 prosrc
=> 'has_function_privilege_name_name' },
7416 descr
=> 'user privilege on function by username, function oid',
7417 proname
=> 'has_function_privilege', provolatile
=> 's', prorettype
=> 'bool',
7418 proargtypes
=> 'name oid text', prosrc
=> 'has_function_privilege_name_id' },
7420 descr
=> 'user privilege on function by user oid, function name',
7421 proname
=> 'has_function_privilege', provolatile
=> 's', prorettype
=> 'bool',
7422 proargtypes
=> 'oid text text', prosrc
=> 'has_function_privilege_id_name' },
7424 descr
=> 'user privilege on function by user oid, function oid',
7425 proname
=> 'has_function_privilege', provolatile
=> 's', prorettype
=> 'bool',
7426 proargtypes
=> 'oid oid text', prosrc
=> 'has_function_privilege_id_id' },
7428 descr
=> 'current user privilege on function by function name',
7429 proname
=> 'has_function_privilege', provolatile
=> 's', prorettype
=> 'bool',
7430 proargtypes
=> 'text text', prosrc
=> 'has_function_privilege_name' },
7432 descr
=> 'current user privilege on function by function oid',
7433 proname
=> 'has_function_privilege', provolatile
=> 's', prorettype
=> 'bool',
7434 proargtypes
=> 'oid text', prosrc
=> 'has_function_privilege_id' },
7437 descr
=> 'user privilege on language by username, language name',
7438 proname
=> 'has_language_privilege', provolatile
=> 's', prorettype
=> 'bool',
7439 proargtypes
=> 'name text text',
7440 prosrc
=> 'has_language_privilege_name_name' },
7442 descr
=> 'user privilege on language by username, language oid',
7443 proname
=> 'has_language_privilege', provolatile
=> 's', prorettype
=> 'bool',
7444 proargtypes
=> 'name oid text', prosrc
=> 'has_language_privilege_name_id' },
7446 descr
=> 'user privilege on language by user oid, language name',
7447 proname
=> 'has_language_privilege', provolatile
=> 's', prorettype
=> 'bool',
7448 proargtypes
=> 'oid text text', prosrc
=> 'has_language_privilege_id_name' },
7450 descr
=> 'user privilege on language by user oid, language oid',
7451 proname
=> 'has_language_privilege', provolatile
=> 's', prorettype
=> 'bool',
7452 proargtypes
=> 'oid oid text', prosrc
=> 'has_language_privilege_id_id' },
7454 descr
=> 'current user privilege on language by language name',
7455 proname
=> 'has_language_privilege', provolatile
=> 's', prorettype
=> 'bool',
7456 proargtypes
=> 'text text', prosrc
=> 'has_language_privilege_name' },
7458 descr
=> 'current user privilege on language by language oid',
7459 proname
=> 'has_language_privilege', provolatile
=> 's', prorettype
=> 'bool',
7460 proargtypes
=> 'oid text', prosrc
=> 'has_language_privilege_id' },
7462 { oid
=> '2268', descr
=> 'user privilege on schema by username, schema name',
7463 proname
=> 'has_schema_privilege', provolatile
=> 's', prorettype
=> 'bool',
7464 proargtypes
=> 'name text text', prosrc
=> 'has_schema_privilege_name_name' },
7465 { oid
=> '2269', descr
=> 'user privilege on schema by username, schema oid',
7466 proname
=> 'has_schema_privilege', provolatile
=> 's', prorettype
=> 'bool',
7467 proargtypes
=> 'name oid text', prosrc
=> 'has_schema_privilege_name_id' },
7468 { oid
=> '2270', descr
=> 'user privilege on schema by user oid, schema name',
7469 proname
=> 'has_schema_privilege', provolatile
=> 's', prorettype
=> 'bool',
7470 proargtypes
=> 'oid text text', prosrc
=> 'has_schema_privilege_id_name' },
7471 { oid
=> '2271', descr
=> 'user privilege on schema by user oid, schema oid',
7472 proname
=> 'has_schema_privilege', provolatile
=> 's', prorettype
=> 'bool',
7473 proargtypes
=> 'oid oid text', prosrc
=> 'has_schema_privilege_id_id' },
7474 { oid
=> '2272', descr
=> 'current user privilege on schema by schema name',
7475 proname
=> 'has_schema_privilege', provolatile
=> 's', prorettype
=> 'bool',
7476 proargtypes
=> 'text text', prosrc
=> 'has_schema_privilege_name' },
7477 { oid
=> '2273', descr
=> 'current user privilege on schema by schema oid',
7478 proname
=> 'has_schema_privilege', provolatile
=> 's', prorettype
=> 'bool',
7479 proargtypes
=> 'oid text', prosrc
=> 'has_schema_privilege_id' },
7482 descr
=> 'user privilege on tablespace by username, tablespace name',
7483 proname
=> 'has_tablespace_privilege', provolatile
=> 's',
7484 prorettype
=> 'bool', proargtypes
=> 'name text text',
7485 prosrc
=> 'has_tablespace_privilege_name_name' },
7487 descr
=> 'user privilege on tablespace by username, tablespace oid',
7488 proname
=> 'has_tablespace_privilege', provolatile
=> 's',
7489 prorettype
=> 'bool', proargtypes
=> 'name oid text',
7490 prosrc
=> 'has_tablespace_privilege_name_id' },
7492 descr
=> 'user privilege on tablespace by user oid, tablespace name',
7493 proname
=> 'has_tablespace_privilege', provolatile
=> 's',
7494 prorettype
=> 'bool', proargtypes
=> 'oid text text',
7495 prosrc
=> 'has_tablespace_privilege_id_name' },
7497 descr
=> 'user privilege on tablespace by user oid, tablespace oid',
7498 proname
=> 'has_tablespace_privilege', provolatile
=> 's',
7499 prorettype
=> 'bool', proargtypes
=> 'oid oid text',
7500 prosrc
=> 'has_tablespace_privilege_id_id' },
7502 descr
=> 'current user privilege on tablespace by tablespace name',
7503 proname
=> 'has_tablespace_privilege', provolatile
=> 's',
7504 prorettype
=> 'bool', proargtypes
=> 'text text',
7505 prosrc
=> 'has_tablespace_privilege_name' },
7507 descr
=> 'current user privilege on tablespace by tablespace oid',
7508 proname
=> 'has_tablespace_privilege', provolatile
=> 's',
7509 prorettype
=> 'bool', proargtypes
=> 'oid text',
7510 prosrc
=> 'has_tablespace_privilege_id' },
7513 descr
=> 'user privilege on foreign data wrapper by username, foreign data wrapper name',
7514 proname
=> 'has_foreign_data_wrapper_privilege', provolatile
=> 's',
7515 prorettype
=> 'bool', proargtypes
=> 'name text text',
7516 prosrc
=> 'has_foreign_data_wrapper_privilege_name_name' },
7518 descr
=> 'user privilege on foreign data wrapper by username, foreign data wrapper oid',
7519 proname
=> 'has_foreign_data_wrapper_privilege', provolatile
=> 's',
7520 prorettype
=> 'bool', proargtypes
=> 'name oid text',
7521 prosrc
=> 'has_foreign_data_wrapper_privilege_name_id' },
7523 descr
=> 'user privilege on foreign data wrapper by user oid, foreign data wrapper name',
7524 proname
=> 'has_foreign_data_wrapper_privilege', provolatile
=> 's',
7525 prorettype
=> 'bool', proargtypes
=> 'oid text text',
7526 prosrc
=> 'has_foreign_data_wrapper_privilege_id_name' },
7528 descr
=> 'user privilege on foreign data wrapper by user oid, foreign data wrapper oid',
7529 proname
=> 'has_foreign_data_wrapper_privilege', provolatile
=> 's',
7530 prorettype
=> 'bool', proargtypes
=> 'oid oid text',
7531 prosrc
=> 'has_foreign_data_wrapper_privilege_id_id' },
7533 descr
=> 'current user privilege on foreign data wrapper by foreign data wrapper name',
7534 proname
=> 'has_foreign_data_wrapper_privilege', provolatile
=> 's',
7535 prorettype
=> 'bool', proargtypes
=> 'text text',
7536 prosrc
=> 'has_foreign_data_wrapper_privilege_name' },
7538 descr
=> 'current user privilege on foreign data wrapper by foreign data wrapper oid',
7539 proname
=> 'has_foreign_data_wrapper_privilege', provolatile
=> 's',
7540 prorettype
=> 'bool', proargtypes
=> 'oid text',
7541 prosrc
=> 'has_foreign_data_wrapper_privilege_id' },
7543 { oid
=> '3006', descr
=> 'user privilege on server by username, server name',
7544 proname
=> 'has_server_privilege', provolatile
=> 's', prorettype
=> 'bool',
7545 proargtypes
=> 'name text text', prosrc
=> 'has_server_privilege_name_name' },
7546 { oid
=> '3007', descr
=> 'user privilege on server by username, server oid',
7547 proname
=> 'has_server_privilege', provolatile
=> 's', prorettype
=> 'bool',
7548 proargtypes
=> 'name oid text', prosrc
=> 'has_server_privilege_name_id' },
7549 { oid
=> '3008', descr
=> 'user privilege on server by user oid, server name',
7550 proname
=> 'has_server_privilege', provolatile
=> 's', prorettype
=> 'bool',
7551 proargtypes
=> 'oid text text', prosrc
=> 'has_server_privilege_id_name' },
7552 { oid
=> '3009', descr
=> 'user privilege on server by user oid, server oid',
7553 proname
=> 'has_server_privilege', provolatile
=> 's', prorettype
=> 'bool',
7554 proargtypes
=> 'oid oid text', prosrc
=> 'has_server_privilege_id_id' },
7555 { oid
=> '3010', descr
=> 'current user privilege on server by server name',
7556 proname
=> 'has_server_privilege', provolatile
=> 's', prorettype
=> 'bool',
7557 proargtypes
=> 'text text', prosrc
=> 'has_server_privilege_name' },
7558 { oid
=> '3011', descr
=> 'current user privilege on server by server oid',
7559 proname
=> 'has_server_privilege', provolatile
=> 's', prorettype
=> 'bool',
7560 proargtypes
=> 'oid text', prosrc
=> 'has_server_privilege_id' },
7562 { oid
=> '3138', descr
=> 'user privilege on type by username, type name',
7563 proname
=> 'has_type_privilege', provolatile
=> 's', prorettype
=> 'bool',
7564 proargtypes
=> 'name text text', prosrc
=> 'has_type_privilege_name_name' },
7565 { oid
=> '3139', descr
=> 'user privilege on type by username, type oid',
7566 proname
=> 'has_type_privilege', provolatile
=> 's', prorettype
=> 'bool',
7567 proargtypes
=> 'name oid text', prosrc
=> 'has_type_privilege_name_id' },
7568 { oid
=> '3140', descr
=> 'user privilege on type by user oid, type name',
7569 proname
=> 'has_type_privilege', provolatile
=> 's', prorettype
=> 'bool',
7570 proargtypes
=> 'oid text text', prosrc
=> 'has_type_privilege_id_name' },
7571 { oid
=> '3141', descr
=> 'user privilege on type by user oid, type oid',
7572 proname
=> 'has_type_privilege', provolatile
=> 's', prorettype
=> 'bool',
7573 proargtypes
=> 'oid oid text', prosrc
=> 'has_type_privilege_id_id' },
7574 { oid
=> '3142', descr
=> 'current user privilege on type by type name',
7575 proname
=> 'has_type_privilege', provolatile
=> 's', prorettype
=> 'bool',
7576 proargtypes
=> 'text text', prosrc
=> 'has_type_privilege_name' },
7577 { oid
=> '3143', descr
=> 'current user privilege on type by type oid',
7578 proname
=> 'has_type_privilege', provolatile
=> 's', prorettype
=> 'bool',
7579 proargtypes
=> 'oid text', prosrc
=> 'has_type_privilege_id' },
7582 descr
=> 'user privilege on parameter by username, parameter name',
7583 proname
=> 'has_parameter_privilege', provolatile
=> 's',
7584 prorettype
=> 'bool', proargtypes
=> 'name text text',
7585 prosrc
=> 'has_parameter_privilege_name_name' },
7587 descr
=> 'user privilege on parameter by user oid, parameter name',
7588 proname
=> 'has_parameter_privilege', provolatile
=> 's',
7589 prorettype
=> 'bool', proargtypes
=> 'oid text text',
7590 prosrc
=> 'has_parameter_privilege_id_name' },
7592 descr
=> 'current user privilege on parameter by parameter name',
7593 proname
=> 'has_parameter_privilege', provolatile
=> 's',
7594 prorettype
=> 'bool', proargtypes
=> 'text text',
7595 prosrc
=> 'has_parameter_privilege_name' },
7597 { oid
=> '2705', descr
=> 'user privilege on role by username, role name',
7598 proname
=> 'pg_has_role', provolatile
=> 's', prorettype
=> 'bool',
7599 proargtypes
=> 'name name text', prosrc
=> 'pg_has_role_name_name' },
7600 { oid
=> '2706', descr
=> 'user privilege on role by username, role oid',
7601 proname
=> 'pg_has_role', provolatile
=> 's', prorettype
=> 'bool',
7602 proargtypes
=> 'name oid text', prosrc
=> 'pg_has_role_name_id' },
7603 { oid
=> '2707', descr
=> 'user privilege on role by user oid, role name',
7604 proname
=> 'pg_has_role', provolatile
=> 's', prorettype
=> 'bool',
7605 proargtypes
=> 'oid name text', prosrc
=> 'pg_has_role_id_name' },
7606 { oid
=> '2708', descr
=> 'user privilege on role by user oid, role oid',
7607 proname
=> 'pg_has_role', provolatile
=> 's', prorettype
=> 'bool',
7608 proargtypes
=> 'oid oid text', prosrc
=> 'pg_has_role_id_id' },
7609 { oid
=> '2709', descr
=> 'current user privilege on role by role name',
7610 proname
=> 'pg_has_role', provolatile
=> 's', prorettype
=> 'bool',
7611 proargtypes
=> 'name text', prosrc
=> 'pg_has_role_name' },
7612 { oid
=> '2710', descr
=> 'current user privilege on role by role oid',
7613 proname
=> 'pg_has_role', provolatile
=> 's', prorettype
=> 'bool',
7614 proargtypes
=> 'oid text', prosrc
=> 'pg_has_role_id' },
7617 descr
=> 'bytes required to store the value, perhaps with compression',
7618 proname
=> 'pg_column_size', provolatile
=> 's', prorettype
=> 'int4',
7619 proargtypes
=> 'any', prosrc
=> 'pg_column_size' },
7620 { oid
=> '2121', descr
=> 'compression method for the compressed datum',
7621 proname
=> 'pg_column_compression', provolatile
=> 's', prorettype
=> 'text',
7622 proargtypes
=> 'any', prosrc
=> 'pg_column_compression' },
7623 { oid
=> '6316', descr
=> 'chunk ID of on-disk TOASTed value',
7624 proname
=> 'pg_column_toast_chunk_id', provolatile
=> 's',
7625 prorettype
=> 'oid', proargtypes
=> 'any',
7626 prosrc
=> 'pg_column_toast_chunk_id' },
7628 descr
=> 'total disk space usage for the specified tablespace',
7629 proname
=> 'pg_tablespace_size', provolatile
=> 'v', prorettype
=> 'int8',
7630 proargtypes
=> 'oid', prosrc
=> 'pg_tablespace_size_oid' },
7632 descr
=> 'total disk space usage for the specified tablespace',
7633 proname
=> 'pg_tablespace_size', provolatile
=> 'v', prorettype
=> 'int8',
7634 proargtypes
=> 'name', prosrc
=> 'pg_tablespace_size_name' },
7635 { oid
=> '2324', descr
=> 'total disk space usage for the specified database',
7636 proname
=> 'pg_database_size', provolatile
=> 'v', prorettype
=> 'int8',
7637 proargtypes
=> 'oid', prosrc
=> 'pg_database_size_oid' },
7638 { oid
=> '2168', descr
=> 'total disk space usage for the specified database',
7639 proname
=> 'pg_database_size', provolatile
=> 'v', prorettype
=> 'int8',
7640 proargtypes
=> 'name', prosrc
=> 'pg_database_size_name' },
7642 descr
=> 'disk space usage for the main fork of the specified table or index',
7643 proname
=> 'pg_relation_size', prolang
=> 'sql', provolatile
=> 'v',
7644 prorettype
=> 'int8', proargtypes
=> 'regclass',
7645 prosrc
=> 'see system_functions.sql' },
7647 descr
=> 'disk space usage for the specified fork of a table or index',
7648 proname
=> 'pg_relation_size', provolatile
=> 'v', prorettype
=> 'int8',
7649 proargtypes
=> 'regclass text', prosrc
=> 'pg_relation_size' },
7651 descr
=> 'total disk space usage for the specified table and associated indexes',
7652 proname
=> 'pg_total_relation_size', provolatile
=> 'v', prorettype
=> 'int8',
7653 proargtypes
=> 'regclass', prosrc
=> 'pg_total_relation_size' },
7655 descr
=> 'convert a long int to a human readable text using size units',
7656 proname
=> 'pg_size_pretty', prorettype
=> 'text', proargtypes
=> 'int8',
7657 prosrc
=> 'pg_size_pretty' },
7659 descr
=> 'convert a numeric to a human readable text using size units',
7660 proname
=> 'pg_size_pretty', prorettype
=> 'text', proargtypes
=> 'numeric',
7661 prosrc
=> 'pg_size_pretty_numeric' },
7663 descr
=> 'convert a size in human-readable format with size units into bytes',
7664 proname
=> 'pg_size_bytes', prorettype
=> 'int8', proargtypes
=> 'text',
7665 prosrc
=> 'pg_size_bytes' },
7667 descr
=> 'disk space usage for the specified table, including TOAST, free space and visibility map',
7668 proname
=> 'pg_table_size', provolatile
=> 'v', prorettype
=> 'int8',
7669 proargtypes
=> 'regclass', prosrc
=> 'pg_table_size' },
7671 descr
=> 'disk space usage for all indexes attached to the specified table',
7672 proname
=> 'pg_indexes_size', provolatile
=> 'v', prorettype
=> 'int8',
7673 proargtypes
=> 'regclass', prosrc
=> 'pg_indexes_size' },
7674 { oid
=> '2999', descr
=> 'filenode identifier of relation',
7675 proname
=> 'pg_relation_filenode', provolatile
=> 's', prorettype
=> 'oid',
7676 proargtypes
=> 'regclass', prosrc
=> 'pg_relation_filenode' },
7677 { oid
=> '3454', descr
=> 'relation OID for filenode and tablespace',
7678 proname
=> 'pg_filenode_relation', provolatile
=> 's',
7679 prorettype
=> 'regclass', proargtypes
=> 'oid oid',
7680 prosrc
=> 'pg_filenode_relation' },
7681 { oid
=> '3034', descr
=> 'file path of relation',
7682 proname
=> 'pg_relation_filepath', provolatile
=> 's', prorettype
=> 'text',
7683 proargtypes
=> 'regclass', prosrc
=> 'pg_relation_filepath' },
7685 { oid
=> '2316', descr
=> '(internal)',
7686 proname
=> 'postgresql_fdw_validator', prorettype
=> 'bool',
7687 proargtypes
=> '_text oid', prosrc
=> 'postgresql_fdw_validator' },
7689 { oid
=> '2290', descr
=> 'I/O',
7690 proname
=> 'record_in', provolatile
=> 's', prorettype
=> 'record',
7691 proargtypes
=> 'cstring oid int4', prosrc
=> 'record_in' },
7692 { oid
=> '2291', descr
=> 'I/O',
7693 proname
=> 'record_out', provolatile
=> 's', prorettype
=> 'cstring',
7694 proargtypes
=> 'record', prosrc
=> 'record_out' },
7695 { oid
=> '2292', descr
=> 'I/O',
7696 proname
=> 'cstring_in', prorettype
=> 'cstring', proargtypes
=> 'cstring',
7697 prosrc
=> 'cstring_in' },
7698 { oid
=> '2293', descr
=> 'I/O',
7699 proname
=> 'cstring_out', prorettype
=> 'cstring', proargtypes
=> 'cstring',
7700 prosrc
=> 'cstring_out' },
7701 { oid
=> '2294', descr
=> 'I/O',
7702 proname
=> 'any_in', prorettype
=> 'any', proargtypes
=> 'cstring',
7703 prosrc
=> 'any_in' },
7704 { oid
=> '2295', descr
=> 'I/O',
7705 proname
=> 'any_out', prorettype
=> 'cstring', proargtypes
=> 'any',
7706 prosrc
=> 'any_out' },
7707 { oid
=> '2296', descr
=> 'I/O',
7708 proname
=> 'anyarray_in', prorettype
=> 'anyarray', proargtypes
=> 'cstring',
7709 prosrc
=> 'anyarray_in' },
7710 { oid
=> '2297', descr
=> 'I/O',
7711 proname
=> 'anyarray_out', provolatile
=> 's', prorettype
=> 'cstring',
7712 proargtypes
=> 'anyarray', prosrc
=> 'anyarray_out' },
7713 { oid
=> '2298', descr
=> 'I/O',
7714 proname
=> 'void_in', prorettype
=> 'void', proargtypes
=> 'cstring',
7715 prosrc
=> 'void_in' },
7716 { oid
=> '2299', descr
=> 'I/O',
7717 proname
=> 'void_out', prorettype
=> 'cstring', proargtypes
=> 'void',
7718 prosrc
=> 'void_out' },
7719 { oid
=> '2300', descr
=> 'I/O',
7720 proname
=> 'trigger_in', proisstrict
=> 'f', prorettype
=> 'trigger',
7721 proargtypes
=> 'cstring', prosrc
=> 'trigger_in' },
7722 { oid
=> '2301', descr
=> 'I/O',
7723 proname
=> 'trigger_out', prorettype
=> 'cstring', proargtypes
=> 'trigger',
7724 prosrc
=> 'trigger_out' },
7725 { oid
=> '3594', descr
=> 'I/O',
7726 proname
=> 'event_trigger_in', proisstrict
=> 'f',
7727 prorettype
=> 'event_trigger', proargtypes
=> 'cstring',
7728 prosrc
=> 'event_trigger_in' },
7729 { oid
=> '3595', descr
=> 'I/O',
7730 proname
=> 'event_trigger_out', prorettype
=> 'cstring',
7731 proargtypes
=> 'event_trigger', prosrc
=> 'event_trigger_out' },
7732 { oid
=> '2302', descr
=> 'I/O',
7733 proname
=> 'language_handler_in', proisstrict
=> 'f',
7734 prorettype
=> 'language_handler', proargtypes
=> 'cstring',
7735 prosrc
=> 'language_handler_in' },
7736 { oid
=> '2303', descr
=> 'I/O',
7737 proname
=> 'language_handler_out', prorettype
=> 'cstring',
7738 proargtypes
=> 'language_handler', prosrc
=> 'language_handler_out' },
7739 { oid
=> '2304', descr
=> 'I/O',
7740 proname
=> 'internal_in', proisstrict
=> 'f', prorettype
=> 'internal',
7741 proargtypes
=> 'cstring', prosrc
=> 'internal_in' },
7742 { oid
=> '2305', descr
=> 'I/O',
7743 proname
=> 'internal_out', prorettype
=> 'cstring', proargtypes
=> 'internal',
7744 prosrc
=> 'internal_out' },
7745 { oid
=> '2312', descr
=> 'I/O',
7746 proname
=> 'anyelement_in', prorettype
=> 'anyelement',
7747 proargtypes
=> 'cstring', prosrc
=> 'anyelement_in' },
7748 { oid
=> '2313', descr
=> 'I/O',
7749 proname
=> 'anyelement_out', prorettype
=> 'cstring',
7750 proargtypes
=> 'anyelement', prosrc
=> 'anyelement_out' },
7751 { oid
=> '2398', descr
=> 'I/O',
7752 proname
=> 'shell_in', proisstrict
=> 'f', prorettype
=> 'void',
7753 proargtypes
=> 'cstring', prosrc
=> 'shell_in' },
7754 { oid
=> '2399', descr
=> 'I/O',
7755 proname
=> 'shell_out', prorettype
=> 'cstring', proargtypes
=> 'void',
7756 prosrc
=> 'shell_out' },
7757 { oid
=> '2597', descr
=> 'I/O',
7758 proname
=> 'domain_in', proisstrict
=> 'f', provolatile
=> 's',
7759 prorettype
=> 'any', proargtypes
=> 'cstring oid int4',
7760 prosrc
=> 'domain_in' },
7761 { oid
=> '2598', descr
=> 'I/O',
7762 proname
=> 'domain_recv', proisstrict
=> 'f', provolatile
=> 's',
7763 prorettype
=> 'any', proargtypes
=> 'internal oid int4',
7764 prosrc
=> 'domain_recv' },
7765 { oid
=> '2777', descr
=> 'I/O',
7766 proname
=> 'anynonarray_in', prorettype
=> 'anynonarray',
7767 proargtypes
=> 'cstring', prosrc
=> 'anynonarray_in' },
7768 { oid
=> '2778', descr
=> 'I/O',
7769 proname
=> 'anynonarray_out', prorettype
=> 'cstring',
7770 proargtypes
=> 'anynonarray', prosrc
=> 'anynonarray_out' },
7771 { oid
=> '3116', descr
=> 'I/O',
7772 proname
=> 'fdw_handler_in', proisstrict
=> 'f', prorettype
=> 'fdw_handler',
7773 proargtypes
=> 'cstring', prosrc
=> 'fdw_handler_in' },
7774 { oid
=> '3117', descr
=> 'I/O',
7775 proname
=> 'fdw_handler_out', prorettype
=> 'cstring',
7776 proargtypes
=> 'fdw_handler', prosrc
=> 'fdw_handler_out' },
7777 { oid
=> '326', descr
=> 'I/O',
7778 proname
=> 'index_am_handler_in', proisstrict
=> 'f',
7779 prorettype
=> 'index_am_handler', proargtypes
=> 'cstring',
7780 prosrc
=> 'index_am_handler_in' },
7781 { oid
=> '327', descr
=> 'I/O',
7782 proname
=> 'index_am_handler_out', prorettype
=> 'cstring',
7783 proargtypes
=> 'index_am_handler', prosrc
=> 'index_am_handler_out' },
7784 { oid
=> '3311', descr
=> 'I/O',
7785 proname
=> 'tsm_handler_in', proisstrict
=> 'f', prorettype
=> 'tsm_handler',
7786 proargtypes
=> 'cstring', prosrc
=> 'tsm_handler_in' },
7787 { oid
=> '3312', descr
=> 'I/O',
7788 proname
=> 'tsm_handler_out', prorettype
=> 'cstring',
7789 proargtypes
=> 'tsm_handler', prosrc
=> 'tsm_handler_out' },
7790 { oid
=> '267', descr
=> 'I/O',
7791 proname
=> 'table_am_handler_in', proisstrict
=> 'f',
7792 prorettype
=> 'table_am_handler', proargtypes
=> 'cstring',
7793 prosrc
=> 'table_am_handler_in' },
7794 { oid
=> '268', descr
=> 'I/O',
7795 proname
=> 'table_am_handler_out', prorettype
=> 'cstring',
7796 proargtypes
=> 'table_am_handler', prosrc
=> 'table_am_handler_out' },
7797 { oid
=> '5086', descr
=> 'I/O',
7798 proname
=> 'anycompatible_in', prorettype
=> 'anycompatible',
7799 proargtypes
=> 'cstring', prosrc
=> 'anycompatible_in' },
7800 { oid
=> '5087', descr
=> 'I/O',
7801 proname
=> 'anycompatible_out', prorettype
=> 'cstring',
7802 proargtypes
=> 'anycompatible', prosrc
=> 'anycompatible_out' },
7803 { oid
=> '5088', descr
=> 'I/O',
7804 proname
=> 'anycompatiblearray_in', prorettype
=> 'anycompatiblearray',
7805 proargtypes
=> 'cstring', prosrc
=> 'anycompatiblearray_in' },
7806 { oid
=> '5089', descr
=> 'I/O',
7807 proname
=> 'anycompatiblearray_out', provolatile
=> 's',
7808 prorettype
=> 'cstring', proargtypes
=> 'anycompatiblearray',
7809 prosrc
=> 'anycompatiblearray_out' },
7810 { oid
=> '5090', descr
=> 'I/O',
7811 proname
=> 'anycompatiblearray_recv', provolatile
=> 's',
7812 prorettype
=> 'anycompatiblearray', proargtypes
=> 'internal',
7813 prosrc
=> 'anycompatiblearray_recv' },
7814 { oid
=> '5091', descr
=> 'I/O',
7815 proname
=> 'anycompatiblearray_send', provolatile
=> 's',
7816 prorettype
=> 'bytea', proargtypes
=> 'anycompatiblearray',
7817 prosrc
=> 'anycompatiblearray_send' },
7818 { oid
=> '5092', descr
=> 'I/O',
7819 proname
=> 'anycompatiblenonarray_in', prorettype
=> 'anycompatiblenonarray',
7820 proargtypes
=> 'cstring', prosrc
=> 'anycompatiblenonarray_in' },
7821 { oid
=> '5093', descr
=> 'I/O',
7822 proname
=> 'anycompatiblenonarray_out', prorettype
=> 'cstring',
7823 proargtypes
=> 'anycompatiblenonarray',
7824 prosrc
=> 'anycompatiblenonarray_out' },
7825 { oid
=> '5094', descr
=> 'I/O',
7826 proname
=> 'anycompatiblerange_in', provolatile
=> 's',
7827 prorettype
=> 'anycompatiblerange', proargtypes
=> 'cstring oid int4',
7828 prosrc
=> 'anycompatiblerange_in' },
7829 { oid
=> '5095', descr
=> 'I/O',
7830 proname
=> 'anycompatiblerange_out', provolatile
=> 's',
7831 prorettype
=> 'cstring', proargtypes
=> 'anycompatiblerange',
7832 prosrc
=> 'anycompatiblerange_out' },
7833 { oid
=> '4226', descr
=> 'I/O',
7834 proname
=> 'anycompatiblemultirange_in', provolatile
=> 's',
7835 prorettype
=> 'anycompatiblemultirange', proargtypes
=> 'cstring oid int4',
7836 prosrc
=> 'anycompatiblemultirange_in' },
7837 { oid
=> '4227', descr
=> 'I/O',
7838 proname
=> 'anycompatiblemultirange_out', provolatile
=> 's',
7839 prorettype
=> 'cstring', proargtypes
=> 'anycompatiblemultirange',
7840 prosrc
=> 'anycompatiblemultirange_out' },
7842 # tablesample method handlers
7843 { oid
=> '3313', descr
=> 'BERNOULLI tablesample method handler',
7844 proname
=> 'bernoulli', provolatile
=> 'v', prorettype
=> 'tsm_handler',
7845 proargtypes
=> 'internal', prosrc
=> 'tsm_bernoulli_handler' },
7846 { oid
=> '3314', descr
=> 'SYSTEM tablesample method handler',
7847 proname
=> 'system', provolatile
=> 'v', prorettype
=> 'tsm_handler',
7848 proargtypes
=> 'internal', prosrc
=> 'tsm_system_handler' },
7851 { oid
=> '8571', descr
=> 'CRC-32 value',
7852 proname
=> 'crc32', proleakproof
=> 't', prorettype
=> 'int8',
7853 proargtypes
=> 'bytea', prosrc
=> 'crc32_bytea' },
7854 { oid
=> '8572', descr
=> 'CRC-32C value',
7855 proname
=> 'crc32c', proleakproof
=> 't', prorettype
=> 'int8',
7856 proargtypes
=> 'bytea', prosrc
=> 'crc32c_bytea' },
7859 { oid
=> '2311', descr
=> 'MD5 hash',
7860 proname
=> 'md5', proleakproof
=> 't', prorettype
=> 'text',
7861 proargtypes
=> 'text', prosrc
=> 'md5_text' },
7862 { oid
=> '2321', descr
=> 'MD5 hash',
7863 proname
=> 'md5', proleakproof
=> 't', prorettype
=> 'text',
7864 proargtypes
=> 'bytea', prosrc
=> 'md5_bytea' },
7865 { oid
=> '3419', descr
=> 'SHA-224 hash',
7866 proname
=> 'sha224', proleakproof
=> 't', prorettype
=> 'bytea',
7867 proargtypes
=> 'bytea', prosrc
=> 'sha224_bytea' },
7868 { oid
=> '3420', descr
=> 'SHA-256 hash',
7869 proname
=> 'sha256', proleakproof
=> 't', prorettype
=> 'bytea',
7870 proargtypes
=> 'bytea', prosrc
=> 'sha256_bytea' },
7871 { oid
=> '3421', descr
=> 'SHA-384 hash',
7872 proname
=> 'sha384', proleakproof
=> 't', prorettype
=> 'bytea',
7873 proargtypes
=> 'bytea', prosrc
=> 'sha384_bytea' },
7874 { oid
=> '3422', descr
=> 'SHA-512 hash',
7875 proname
=> 'sha512', proleakproof
=> 't', prorettype
=> 'bytea',
7876 proargtypes
=> 'bytea', prosrc
=> 'sha512_bytea' },
7878 # crosstype operations for date vs. timestamp and timestamptz
7880 proname
=> 'date_lt_timestamp', prorettype
=> 'bool',
7881 proargtypes
=> 'date timestamp', prosrc
=> 'date_lt_timestamp' },
7883 proname
=> 'date_le_timestamp', prorettype
=> 'bool',
7884 proargtypes
=> 'date timestamp', prosrc
=> 'date_le_timestamp' },
7886 proname
=> 'date_eq_timestamp', prorettype
=> 'bool',
7887 proargtypes
=> 'date timestamp', prosrc
=> 'date_eq_timestamp' },
7889 proname
=> 'date_gt_timestamp', prorettype
=> 'bool',
7890 proargtypes
=> 'date timestamp', prosrc
=> 'date_gt_timestamp' },
7892 proname
=> 'date_ge_timestamp', prorettype
=> 'bool',
7893 proargtypes
=> 'date timestamp', prosrc
=> 'date_ge_timestamp' },
7895 proname
=> 'date_ne_timestamp', prorettype
=> 'bool',
7896 proargtypes
=> 'date timestamp', prosrc
=> 'date_ne_timestamp' },
7897 { oid
=> '2344', descr
=> 'less-equal-greater',
7898 proname
=> 'date_cmp_timestamp', prorettype
=> 'int4',
7899 proargtypes
=> 'date timestamp', prosrc
=> 'date_cmp_timestamp' },
7902 proname
=> 'date_lt_timestamptz', provolatile
=> 's', prorettype
=> 'bool',
7903 proargtypes
=> 'date timestamptz', prosrc
=> 'date_lt_timestamptz' },
7905 proname
=> 'date_le_timestamptz', provolatile
=> 's', prorettype
=> 'bool',
7906 proargtypes
=> 'date timestamptz', prosrc
=> 'date_le_timestamptz' },
7908 proname
=> 'date_eq_timestamptz', provolatile
=> 's', prorettype
=> 'bool',
7909 proargtypes
=> 'date timestamptz', prosrc
=> 'date_eq_timestamptz' },
7911 proname
=> 'date_gt_timestamptz', provolatile
=> 's', prorettype
=> 'bool',
7912 proargtypes
=> 'date timestamptz', prosrc
=> 'date_gt_timestamptz' },
7914 proname
=> 'date_ge_timestamptz', provolatile
=> 's', prorettype
=> 'bool',
7915 proargtypes
=> 'date timestamptz', prosrc
=> 'date_ge_timestamptz' },
7917 proname
=> 'date_ne_timestamptz', provolatile
=> 's', prorettype
=> 'bool',
7918 proargtypes
=> 'date timestamptz', prosrc
=> 'date_ne_timestamptz' },
7919 { oid
=> '2357', descr
=> 'less-equal-greater',
7920 proname
=> 'date_cmp_timestamptz', provolatile
=> 's', prorettype
=> 'int4',
7921 proargtypes
=> 'date timestamptz', prosrc
=> 'date_cmp_timestamptz' },
7924 proname
=> 'timestamp_lt_date', prorettype
=> 'bool',
7925 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_lt_date' },
7927 proname
=> 'timestamp_le_date', prorettype
=> 'bool',
7928 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_le_date' },
7930 proname
=> 'timestamp_eq_date', prorettype
=> 'bool',
7931 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_eq_date' },
7933 proname
=> 'timestamp_gt_date', prorettype
=> 'bool',
7934 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_gt_date' },
7936 proname
=> 'timestamp_ge_date', prorettype
=> 'bool',
7937 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_ge_date' },
7939 proname
=> 'timestamp_ne_date', prorettype
=> 'bool',
7940 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_ne_date' },
7941 { oid
=> '2370', descr
=> 'less-equal-greater',
7942 proname
=> 'timestamp_cmp_date', prorettype
=> 'int4',
7943 proargtypes
=> 'timestamp date', prosrc
=> 'timestamp_cmp_date' },
7946 proname
=> 'timestamptz_lt_date', provolatile
=> 's', prorettype
=> 'bool',
7947 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_lt_date' },
7949 proname
=> 'timestamptz_le_date', provolatile
=> 's', prorettype
=> 'bool',
7950 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_le_date' },
7952 proname
=> 'timestamptz_eq_date', provolatile
=> 's', prorettype
=> 'bool',
7953 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_eq_date' },
7955 proname
=> 'timestamptz_gt_date', provolatile
=> 's', prorettype
=> 'bool',
7956 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_gt_date' },
7958 proname
=> 'timestamptz_ge_date', provolatile
=> 's', prorettype
=> 'bool',
7959 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_ge_date' },
7961 proname
=> 'timestamptz_ne_date', provolatile
=> 's', prorettype
=> 'bool',
7962 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_ne_date' },
7963 { oid
=> '2383', descr
=> 'less-equal-greater',
7964 proname
=> 'timestamptz_cmp_date', provolatile
=> 's', prorettype
=> 'int4',
7965 proargtypes
=> 'timestamptz date', prosrc
=> 'timestamptz_cmp_date' },
7967 # crosstype operations for timestamp vs. timestamptz
7969 proname
=> 'timestamp_lt_timestamptz', provolatile
=> 's',
7970 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamptz',
7971 prosrc
=> 'timestamp_lt_timestamptz' },
7973 proname
=> 'timestamp_le_timestamptz', provolatile
=> 's',
7974 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamptz',
7975 prosrc
=> 'timestamp_le_timestamptz' },
7977 proname
=> 'timestamp_eq_timestamptz', provolatile
=> 's',
7978 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamptz',
7979 prosrc
=> 'timestamp_eq_timestamptz' },
7981 proname
=> 'timestamp_gt_timestamptz', provolatile
=> 's',
7982 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamptz',
7983 prosrc
=> 'timestamp_gt_timestamptz' },
7985 proname
=> 'timestamp_ge_timestamptz', provolatile
=> 's',
7986 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamptz',
7987 prosrc
=> 'timestamp_ge_timestamptz' },
7989 proname
=> 'timestamp_ne_timestamptz', provolatile
=> 's',
7990 prorettype
=> 'bool', proargtypes
=> 'timestamp timestamptz',
7991 prosrc
=> 'timestamp_ne_timestamptz' },
7992 { oid
=> '2526', descr
=> 'less-equal-greater',
7993 proname
=> 'timestamp_cmp_timestamptz', provolatile
=> 's',
7994 prorettype
=> 'int4', proargtypes
=> 'timestamp timestamptz',
7995 prosrc
=> 'timestamp_cmp_timestamptz' },
7998 proname
=> 'timestamptz_lt_timestamp', provolatile
=> 's',
7999 prorettype
=> 'bool', proargtypes
=> 'timestamptz timestamp',
8000 prosrc
=> 'timestamptz_lt_timestamp' },
8002 proname
=> 'timestamptz_le_timestamp', provolatile
=> 's',
8003 prorettype
=> 'bool', proargtypes
=> 'timestamptz timestamp',
8004 prosrc
=> 'timestamptz_le_timestamp' },
8006 proname
=> 'timestamptz_eq_timestamp', provolatile
=> 's',
8007 prorettype
=> 'bool', proargtypes
=> 'timestamptz timestamp',
8008 prosrc
=> 'timestamptz_eq_timestamp' },
8010 proname
=> 'timestamptz_gt_timestamp', provolatile
=> 's',
8011 prorettype
=> 'bool', proargtypes
=> 'timestamptz timestamp',
8012 prosrc
=> 'timestamptz_gt_timestamp' },
8014 proname
=> 'timestamptz_ge_timestamp', provolatile
=> 's',
8015 prorettype
=> 'bool', proargtypes
=> 'timestamptz timestamp',
8016 prosrc
=> 'timestamptz_ge_timestamp' },
8018 proname
=> 'timestamptz_ne_timestamp', provolatile
=> 's',
8019 prorettype
=> 'bool', proargtypes
=> 'timestamptz timestamp',
8020 prosrc
=> 'timestamptz_ne_timestamp' },
8021 { oid
=> '2533', descr
=> 'less-equal-greater',
8022 proname
=> 'timestamptz_cmp_timestamp', provolatile
=> 's',
8023 prorettype
=> 'int4', proargtypes
=> 'timestamptz timestamp',
8024 prosrc
=> 'timestamptz_cmp_timestamp' },
8026 # send/receive functions
8027 { oid
=> '2400', descr
=> 'I/O',
8028 proname
=> 'array_recv', provolatile
=> 's', prorettype
=> 'anyarray',
8029 proargtypes
=> 'internal oid int4', prosrc
=> 'array_recv' },
8030 { oid
=> '2401', descr
=> 'I/O',
8031 proname
=> 'array_send', provolatile
=> 's', prorettype
=> 'bytea',
8032 proargtypes
=> 'anyarray', prosrc
=> 'array_send' },
8033 { oid
=> '2402', descr
=> 'I/O',
8034 proname
=> 'record_recv', provolatile
=> 's', prorettype
=> 'record',
8035 proargtypes
=> 'internal oid int4', prosrc
=> 'record_recv' },
8036 { oid
=> '2403', descr
=> 'I/O',
8037 proname
=> 'record_send', provolatile
=> 's', prorettype
=> 'bytea',
8038 proargtypes
=> 'record', prosrc
=> 'record_send' },
8039 { oid
=> '2404', descr
=> 'I/O',
8040 proname
=> 'int2recv', prorettype
=> 'int2', proargtypes
=> 'internal',
8041 prosrc
=> 'int2recv' },
8042 { oid
=> '2405', descr
=> 'I/O',
8043 proname
=> 'int2send', prorettype
=> 'bytea', proargtypes
=> 'int2',
8044 prosrc
=> 'int2send' },
8045 { oid
=> '2406', descr
=> 'I/O',
8046 proname
=> 'int4recv', prorettype
=> 'int4', proargtypes
=> 'internal',
8047 prosrc
=> 'int4recv' },
8048 { oid
=> '2407', descr
=> 'I/O',
8049 proname
=> 'int4send', prorettype
=> 'bytea', proargtypes
=> 'int4',
8050 prosrc
=> 'int4send' },
8051 { oid
=> '2408', descr
=> 'I/O',
8052 proname
=> 'int8recv', prorettype
=> 'int8', proargtypes
=> 'internal',
8053 prosrc
=> 'int8recv' },
8054 { oid
=> '2409', descr
=> 'I/O',
8055 proname
=> 'int8send', prorettype
=> 'bytea', proargtypes
=> 'int8',
8056 prosrc
=> 'int8send' },
8057 { oid
=> '2410', descr
=> 'I/O',
8058 proname
=> 'int2vectorrecv', prorettype
=> 'int2vector',
8059 proargtypes
=> 'internal', prosrc
=> 'int2vectorrecv' },
8060 { oid
=> '2411', descr
=> 'I/O',
8061 proname
=> 'int2vectorsend', prorettype
=> 'bytea',
8062 proargtypes
=> 'int2vector', prosrc
=> 'int2vectorsend' },
8063 { oid
=> '2412', descr
=> 'I/O',
8064 proname
=> 'bytearecv', prorettype
=> 'bytea', proargtypes
=> 'internal',
8065 prosrc
=> 'bytearecv' },
8066 { oid
=> '2413', descr
=> 'I/O',
8067 proname
=> 'byteasend', prorettype
=> 'bytea', proargtypes
=> 'bytea',
8068 prosrc
=> 'byteasend' },
8069 { oid
=> '2414', descr
=> 'I/O',
8070 proname
=> 'textrecv', provolatile
=> 's', prorettype
=> 'text',
8071 proargtypes
=> 'internal', prosrc
=> 'textrecv' },
8072 { oid
=> '2415', descr
=> 'I/O',
8073 proname
=> 'textsend', provolatile
=> 's', prorettype
=> 'bytea',
8074 proargtypes
=> 'text', prosrc
=> 'textsend' },
8075 { oid
=> '2416', descr
=> 'I/O',
8076 proname
=> 'unknownrecv', prorettype
=> 'unknown', proargtypes
=> 'internal',
8077 prosrc
=> 'unknownrecv' },
8078 { oid
=> '2417', descr
=> 'I/O',
8079 proname
=> 'unknownsend', prorettype
=> 'bytea', proargtypes
=> 'unknown',
8080 prosrc
=> 'unknownsend' },
8081 { oid
=> '2418', descr
=> 'I/O',
8082 proname
=> 'oidrecv', prorettype
=> 'oid', proargtypes
=> 'internal',
8083 prosrc
=> 'oidrecv' },
8084 { oid
=> '2419', descr
=> 'I/O',
8085 proname
=> 'oidsend', prorettype
=> 'bytea', proargtypes
=> 'oid',
8086 prosrc
=> 'oidsend' },
8087 { oid
=> '2420', descr
=> 'I/O',
8088 proname
=> 'oidvectorrecv', prorettype
=> 'oidvector',
8089 proargtypes
=> 'internal', prosrc
=> 'oidvectorrecv' },
8090 { oid
=> '2421', descr
=> 'I/O',
8091 proname
=> 'oidvectorsend', prorettype
=> 'bytea', proargtypes
=> 'oidvector',
8092 prosrc
=> 'oidvectorsend' },
8093 { oid
=> '2422', descr
=> 'I/O',
8094 proname
=> 'namerecv', provolatile
=> 's', prorettype
=> 'name',
8095 proargtypes
=> 'internal', prosrc
=> 'namerecv' },
8096 { oid
=> '2423', descr
=> 'I/O',
8097 proname
=> 'namesend', provolatile
=> 's', prorettype
=> 'bytea',
8098 proargtypes
=> 'name', prosrc
=> 'namesend' },
8099 { oid
=> '2424', descr
=> 'I/O',
8100 proname
=> 'float4recv', prorettype
=> 'float4', proargtypes
=> 'internal',
8101 prosrc
=> 'float4recv' },
8102 { oid
=> '2425', descr
=> 'I/O',
8103 proname
=> 'float4send', prorettype
=> 'bytea', proargtypes
=> 'float4',
8104 prosrc
=> 'float4send' },
8105 { oid
=> '2426', descr
=> 'I/O',
8106 proname
=> 'float8recv', prorettype
=> 'float8', proargtypes
=> 'internal',
8107 prosrc
=> 'float8recv' },
8108 { oid
=> '2427', descr
=> 'I/O',
8109 proname
=> 'float8send', prorettype
=> 'bytea', proargtypes
=> 'float8',
8110 prosrc
=> 'float8send' },
8111 { oid
=> '2428', descr
=> 'I/O',
8112 proname
=> 'point_recv', prorettype
=> 'point', proargtypes
=> 'internal',
8113 prosrc
=> 'point_recv' },
8114 { oid
=> '2429', descr
=> 'I/O',
8115 proname
=> 'point_send', prorettype
=> 'bytea', proargtypes
=> 'point',
8116 prosrc
=> 'point_send' },
8117 { oid
=> '2430', descr
=> 'I/O',
8118 proname
=> 'bpcharrecv', provolatile
=> 's', prorettype
=> 'bpchar',
8119 proargtypes
=> 'internal oid int4', prosrc
=> 'bpcharrecv' },
8120 { oid
=> '2431', descr
=> 'I/O',
8121 proname
=> 'bpcharsend', provolatile
=> 's', prorettype
=> 'bytea',
8122 proargtypes
=> 'bpchar', prosrc
=> 'bpcharsend' },
8123 { oid
=> '2432', descr
=> 'I/O',
8124 proname
=> 'varcharrecv', provolatile
=> 's', prorettype
=> 'varchar',
8125 proargtypes
=> 'internal oid int4', prosrc
=> 'varcharrecv' },
8126 { oid
=> '2433', descr
=> 'I/O',
8127 proname
=> 'varcharsend', provolatile
=> 's', prorettype
=> 'bytea',
8128 proargtypes
=> 'varchar', prosrc
=> 'varcharsend' },
8129 { oid
=> '2434', descr
=> 'I/O',
8130 proname
=> 'charrecv', prorettype
=> 'char', proargtypes
=> 'internal',
8131 prosrc
=> 'charrecv' },
8132 { oid
=> '2435', descr
=> 'I/O',
8133 proname
=> 'charsend', prorettype
=> 'bytea', proargtypes
=> 'char',
8134 prosrc
=> 'charsend' },
8135 { oid
=> '2436', descr
=> 'I/O',
8136 proname
=> 'boolrecv', prorettype
=> 'bool', proargtypes
=> 'internal',
8137 prosrc
=> 'boolrecv' },
8138 { oid
=> '2437', descr
=> 'I/O',
8139 proname
=> 'boolsend', prorettype
=> 'bytea', proargtypes
=> 'bool',
8140 prosrc
=> 'boolsend' },
8141 { oid
=> '2438', descr
=> 'I/O',
8142 proname
=> 'tidrecv', prorettype
=> 'tid', proargtypes
=> 'internal',
8143 prosrc
=> 'tidrecv' },
8144 { oid
=> '2439', descr
=> 'I/O',
8145 proname
=> 'tidsend', prorettype
=> 'bytea', proargtypes
=> 'tid',
8146 prosrc
=> 'tidsend' },
8147 { oid
=> '2440', descr
=> 'I/O',
8148 proname
=> 'xidrecv', prorettype
=> 'xid', proargtypes
=> 'internal',
8149 prosrc
=> 'xidrecv' },
8150 { oid
=> '2441', descr
=> 'I/O',
8151 proname
=> 'xidsend', prorettype
=> 'bytea', proargtypes
=> 'xid',
8152 prosrc
=> 'xidsend' },
8153 { oid
=> '2442', descr
=> 'I/O',
8154 proname
=> 'cidrecv', prorettype
=> 'cid', proargtypes
=> 'internal',
8155 prosrc
=> 'cidrecv' },
8156 { oid
=> '2443', descr
=> 'I/O',
8157 proname
=> 'cidsend', prorettype
=> 'bytea', proargtypes
=> 'cid',
8158 prosrc
=> 'cidsend' },
8159 { oid
=> '2444', descr
=> 'I/O',
8160 proname
=> 'regprocrecv', prorettype
=> 'regproc', proargtypes
=> 'internal',
8161 prosrc
=> 'regprocrecv' },
8162 { oid
=> '2445', descr
=> 'I/O',
8163 proname
=> 'regprocsend', prorettype
=> 'bytea', proargtypes
=> 'regproc',
8164 prosrc
=> 'regprocsend' },
8165 { oid
=> '2446', descr
=> 'I/O',
8166 proname
=> 'regprocedurerecv', prorettype
=> 'regprocedure',
8167 proargtypes
=> 'internal', prosrc
=> 'regprocedurerecv' },
8168 { oid
=> '2447', descr
=> 'I/O',
8169 proname
=> 'regproceduresend', prorettype
=> 'bytea',
8170 proargtypes
=> 'regprocedure', prosrc
=> 'regproceduresend' },
8171 { oid
=> '2448', descr
=> 'I/O',
8172 proname
=> 'regoperrecv', prorettype
=> 'regoper', proargtypes
=> 'internal',
8173 prosrc
=> 'regoperrecv' },
8174 { oid
=> '2449', descr
=> 'I/O',
8175 proname
=> 'regopersend', prorettype
=> 'bytea', proargtypes
=> 'regoper',
8176 prosrc
=> 'regopersend' },
8177 { oid
=> '2450', descr
=> 'I/O',
8178 proname
=> 'regoperatorrecv', prorettype
=> 'regoperator',
8179 proargtypes
=> 'internal', prosrc
=> 'regoperatorrecv' },
8180 { oid
=> '2451', descr
=> 'I/O',
8181 proname
=> 'regoperatorsend', prorettype
=> 'bytea',
8182 proargtypes
=> 'regoperator', prosrc
=> 'regoperatorsend' },
8183 { oid
=> '2452', descr
=> 'I/O',
8184 proname
=> 'regclassrecv', prorettype
=> 'regclass',
8185 proargtypes
=> 'internal', prosrc
=> 'regclassrecv' },
8186 { oid
=> '2453', descr
=> 'I/O',
8187 proname
=> 'regclasssend', prorettype
=> 'bytea', proargtypes
=> 'regclass',
8188 prosrc
=> 'regclasssend' },
8189 { oid
=> '4196', descr
=> 'I/O',
8190 proname
=> 'regcollationrecv', prorettype
=> 'regcollation',
8191 proargtypes
=> 'internal', prosrc
=> 'regcollationrecv' },
8192 { oid
=> '4197', descr
=> 'I/O',
8193 proname
=> 'regcollationsend', prorettype
=> 'bytea',
8194 proargtypes
=> 'regcollation', prosrc
=> 'regcollationsend' },
8195 { oid
=> '2454', descr
=> 'I/O',
8196 proname
=> 'regtyperecv', prorettype
=> 'regtype', proargtypes
=> 'internal',
8197 prosrc
=> 'regtyperecv' },
8198 { oid
=> '2455', descr
=> 'I/O',
8199 proname
=> 'regtypesend', prorettype
=> 'bytea', proargtypes
=> 'regtype',
8200 prosrc
=> 'regtypesend' },
8202 { oid
=> '4094', descr
=> 'I/O',
8203 proname
=> 'regrolerecv', prorettype
=> 'regrole', proargtypes
=> 'internal',
8204 prosrc
=> 'regrolerecv' },
8205 { oid
=> '4095', descr
=> 'I/O',
8206 proname
=> 'regrolesend', prorettype
=> 'bytea', proargtypes
=> 'regrole',
8207 prosrc
=> 'regrolesend' },
8208 { oid
=> '4087', descr
=> 'I/O',
8209 proname
=> 'regnamespacerecv', prorettype
=> 'regnamespace',
8210 proargtypes
=> 'internal', prosrc
=> 'regnamespacerecv' },
8211 { oid
=> '4088', descr
=> 'I/O',
8212 proname
=> 'regnamespacesend', prorettype
=> 'bytea',
8213 proargtypes
=> 'regnamespace', prosrc
=> 'regnamespacesend' },
8214 { oid
=> '2456', descr
=> 'I/O',
8215 proname
=> 'bit_recv', prorettype
=> 'bit',
8216 proargtypes
=> 'internal oid int4', prosrc
=> 'bit_recv' },
8217 { oid
=> '2457', descr
=> 'I/O',
8218 proname
=> 'bit_send', prorettype
=> 'bytea', proargtypes
=> 'bit',
8219 prosrc
=> 'bit_send' },
8220 { oid
=> '2458', descr
=> 'I/O',
8221 proname
=> 'varbit_recv', prorettype
=> 'varbit',
8222 proargtypes
=> 'internal oid int4', prosrc
=> 'varbit_recv' },
8223 { oid
=> '2459', descr
=> 'I/O',
8224 proname
=> 'varbit_send', prorettype
=> 'bytea', proargtypes
=> 'varbit',
8225 prosrc
=> 'varbit_send' },
8226 { oid
=> '2460', descr
=> 'I/O',
8227 proname
=> 'numeric_recv', prorettype
=> 'numeric',
8228 proargtypes
=> 'internal oid int4', prosrc
=> 'numeric_recv' },
8229 { oid
=> '2461', descr
=> 'I/O',
8230 proname
=> 'numeric_send', prorettype
=> 'bytea', proargtypes
=> 'numeric',
8231 prosrc
=> 'numeric_send' },
8232 { oid
=> '2468', descr
=> 'I/O',
8233 proname
=> 'date_recv', prorettype
=> 'date', proargtypes
=> 'internal',
8234 prosrc
=> 'date_recv' },
8235 { oid
=> '2469', descr
=> 'I/O',
8236 proname
=> 'date_send', prorettype
=> 'bytea', proargtypes
=> 'date',
8237 prosrc
=> 'date_send' },
8238 { oid
=> '2470', descr
=> 'I/O',
8239 proname
=> 'time_recv', prorettype
=> 'time',
8240 proargtypes
=> 'internal oid int4', prosrc
=> 'time_recv' },
8241 { oid
=> '2471', descr
=> 'I/O',
8242 proname
=> 'time_send', prorettype
=> 'bytea', proargtypes
=> 'time',
8243 prosrc
=> 'time_send' },
8244 { oid
=> '2472', descr
=> 'I/O',
8245 proname
=> 'timetz_recv', prorettype
=> 'timetz',
8246 proargtypes
=> 'internal oid int4', prosrc
=> 'timetz_recv' },
8247 { oid
=> '2473', descr
=> 'I/O',
8248 proname
=> 'timetz_send', prorettype
=> 'bytea', proargtypes
=> 'timetz',
8249 prosrc
=> 'timetz_send' },
8250 { oid
=> '2474', descr
=> 'I/O',
8251 proname
=> 'timestamp_recv', prorettype
=> 'timestamp',
8252 proargtypes
=> 'internal oid int4', prosrc
=> 'timestamp_recv' },
8253 { oid
=> '2475', descr
=> 'I/O',
8254 proname
=> 'timestamp_send', prorettype
=> 'bytea',
8255 proargtypes
=> 'timestamp', prosrc
=> 'timestamp_send' },
8256 { oid
=> '2476', descr
=> 'I/O',
8257 proname
=> 'timestamptz_recv', prorettype
=> 'timestamptz',
8258 proargtypes
=> 'internal oid int4', prosrc
=> 'timestamptz_recv' },
8259 { oid
=> '2477', descr
=> 'I/O',
8260 proname
=> 'timestamptz_send', prorettype
=> 'bytea',
8261 proargtypes
=> 'timestamptz', prosrc
=> 'timestamptz_send' },
8262 { oid
=> '2478', descr
=> 'I/O',
8263 proname
=> 'interval_recv', prorettype
=> 'interval',
8264 proargtypes
=> 'internal oid int4', prosrc
=> 'interval_recv' },
8265 { oid
=> '2479', descr
=> 'I/O',
8266 proname
=> 'interval_send', prorettype
=> 'bytea', proargtypes
=> 'interval',
8267 prosrc
=> 'interval_send' },
8268 { oid
=> '2480', descr
=> 'I/O',
8269 proname
=> 'lseg_recv', prorettype
=> 'lseg', proargtypes
=> 'internal',
8270 prosrc
=> 'lseg_recv' },
8271 { oid
=> '2481', descr
=> 'I/O',
8272 proname
=> 'lseg_send', prorettype
=> 'bytea', proargtypes
=> 'lseg',
8273 prosrc
=> 'lseg_send' },
8274 { oid
=> '2482', descr
=> 'I/O',
8275 proname
=> 'path_recv', prorettype
=> 'path', proargtypes
=> 'internal',
8276 prosrc
=> 'path_recv' },
8277 { oid
=> '2483', descr
=> 'I/O',
8278 proname
=> 'path_send', prorettype
=> 'bytea', proargtypes
=> 'path',
8279 prosrc
=> 'path_send' },
8280 { oid
=> '2484', descr
=> 'I/O',
8281 proname
=> 'box_recv', prorettype
=> 'box', proargtypes
=> 'internal',
8282 prosrc
=> 'box_recv' },
8283 { oid
=> '2485', descr
=> 'I/O',
8284 proname
=> 'box_send', prorettype
=> 'bytea', proargtypes
=> 'box',
8285 prosrc
=> 'box_send' },
8286 { oid
=> '2486', descr
=> 'I/O',
8287 proname
=> 'poly_recv', prorettype
=> 'polygon', proargtypes
=> 'internal',
8288 prosrc
=> 'poly_recv' },
8289 { oid
=> '2487', descr
=> 'I/O',
8290 proname
=> 'poly_send', prorettype
=> 'bytea', proargtypes
=> 'polygon',
8291 prosrc
=> 'poly_send' },
8292 { oid
=> '2488', descr
=> 'I/O',
8293 proname
=> 'line_recv', prorettype
=> 'line', proargtypes
=> 'internal',
8294 prosrc
=> 'line_recv' },
8295 { oid
=> '2489', descr
=> 'I/O',
8296 proname
=> 'line_send', prorettype
=> 'bytea', proargtypes
=> 'line',
8297 prosrc
=> 'line_send' },
8298 { oid
=> '2490', descr
=> 'I/O',
8299 proname
=> 'circle_recv', prorettype
=> 'circle', proargtypes
=> 'internal',
8300 prosrc
=> 'circle_recv' },
8301 { oid
=> '2491', descr
=> 'I/O',
8302 proname
=> 'circle_send', prorettype
=> 'bytea', proargtypes
=> 'circle',
8303 prosrc
=> 'circle_send' },
8304 { oid
=> '2492', descr
=> 'I/O',
8305 proname
=> 'cash_recv', prorettype
=> 'money', proargtypes
=> 'internal',
8306 prosrc
=> 'cash_recv' },
8307 { oid
=> '2493', descr
=> 'I/O',
8308 proname
=> 'cash_send', prorettype
=> 'bytea', proargtypes
=> 'money',
8309 prosrc
=> 'cash_send' },
8310 { oid
=> '2494', descr
=> 'I/O',
8311 proname
=> 'macaddr_recv', prorettype
=> 'macaddr', proargtypes
=> 'internal',
8312 prosrc
=> 'macaddr_recv' },
8313 { oid
=> '2495', descr
=> 'I/O',
8314 proname
=> 'macaddr_send', prorettype
=> 'bytea', proargtypes
=> 'macaddr',
8315 prosrc
=> 'macaddr_send' },
8316 { oid
=> '2496', descr
=> 'I/O',
8317 proname
=> 'inet_recv', prorettype
=> 'inet', proargtypes
=> 'internal',
8318 prosrc
=> 'inet_recv' },
8319 { oid
=> '2497', descr
=> 'I/O',
8320 proname
=> 'inet_send', prorettype
=> 'bytea', proargtypes
=> 'inet',
8321 prosrc
=> 'inet_send' },
8322 { oid
=> '2498', descr
=> 'I/O',
8323 proname
=> 'cidr_recv', prorettype
=> 'cidr', proargtypes
=> 'internal',
8324 prosrc
=> 'cidr_recv' },
8325 { oid
=> '2499', descr
=> 'I/O',
8326 proname
=> 'cidr_send', prorettype
=> 'bytea', proargtypes
=> 'cidr',
8327 prosrc
=> 'cidr_send' },
8328 { oid
=> '2500', descr
=> 'I/O',
8329 proname
=> 'cstring_recv', provolatile
=> 's', prorettype
=> 'cstring',
8330 proargtypes
=> 'internal', prosrc
=> 'cstring_recv' },
8331 { oid
=> '2501', descr
=> 'I/O',
8332 proname
=> 'cstring_send', provolatile
=> 's', prorettype
=> 'bytea',
8333 proargtypes
=> 'cstring', prosrc
=> 'cstring_send' },
8334 { oid
=> '2502', descr
=> 'I/O',
8335 proname
=> 'anyarray_recv', provolatile
=> 's', prorettype
=> 'anyarray',
8336 proargtypes
=> 'internal', prosrc
=> 'anyarray_recv' },
8337 { oid
=> '2503', descr
=> 'I/O',
8338 proname
=> 'anyarray_send', provolatile
=> 's', prorettype
=> 'bytea',
8339 proargtypes
=> 'anyarray', prosrc
=> 'anyarray_send' },
8340 { oid
=> '3120', descr
=> 'I/O',
8341 proname
=> 'void_recv', prorettype
=> 'void', proargtypes
=> 'internal',
8342 prosrc
=> 'void_recv' },
8343 { oid
=> '3121', descr
=> 'I/O',
8344 proname
=> 'void_send', prorettype
=> 'bytea', proargtypes
=> 'void',
8345 prosrc
=> 'void_send' },
8346 { oid
=> '3446', descr
=> 'I/O',
8347 proname
=> 'macaddr8_recv', prorettype
=> 'macaddr8',
8348 proargtypes
=> 'internal', prosrc
=> 'macaddr8_recv' },
8349 { oid
=> '3447', descr
=> 'I/O',
8350 proname
=> 'macaddr8_send', prorettype
=> 'bytea', proargtypes
=> 'macaddr8',
8351 prosrc
=> 'macaddr8_send' },
8353 # System-view support functions with pretty-print option
8354 { oid
=> '2504', descr
=> 'source text of a rule with pretty-print option',
8355 proname
=> 'pg_get_ruledef', provolatile
=> 's', prorettype
=> 'text',
8356 proargtypes
=> 'oid bool', prosrc
=> 'pg_get_ruledef_ext' },
8358 descr
=> 'select statement of a view with pretty-print option',
8359 proname
=> 'pg_get_viewdef', provolatile
=> 's', proparallel
=> 'r',
8360 prorettype
=> 'text', proargtypes
=> 'text bool',
8361 prosrc
=> 'pg_get_viewdef_name_ext' },
8363 descr
=> 'select statement of a view with pretty-print option',
8364 proname
=> 'pg_get_viewdef', provolatile
=> 's', proparallel
=> 'r',
8365 prorettype
=> 'text', proargtypes
=> 'oid bool',
8366 prosrc
=> 'pg_get_viewdef_ext' },
8368 descr
=> 'select statement of a view with pretty-printing and specified line wrapping',
8369 proname
=> 'pg_get_viewdef', provolatile
=> 's', proparallel
=> 'r',
8370 prorettype
=> 'text', proargtypes
=> 'oid int4',
8371 prosrc
=> 'pg_get_viewdef_wrap' },
8373 descr
=> 'index description (full create statement or single expression) with pretty-print option',
8374 proname
=> 'pg_get_indexdef', provolatile
=> 's', prorettype
=> 'text',
8375 proargtypes
=> 'oid int4 bool', prosrc
=> 'pg_get_indexdef_ext' },
8376 { oid
=> '2508', descr
=> 'constraint description with pretty-print option',
8377 proname
=> 'pg_get_constraintdef', provolatile
=> 's', prorettype
=> 'text',
8378 proargtypes
=> 'oid bool', prosrc
=> 'pg_get_constraintdef_ext' },
8380 descr
=> 'deparse an encoded expression with pretty-print option',
8381 proname
=> 'pg_get_expr', provolatile
=> 's', prorettype
=> 'text',
8382 proargtypes
=> 'pg_node_tree oid bool', prosrc
=> 'pg_get_expr_ext' },
8383 { oid
=> '2510', descr
=> 'get the prepared statements for this session',
8384 proname
=> 'pg_prepared_statement', prorows
=> '1000', proretset
=> 't',
8385 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'record',
8387 proallargtypes
=> '{text,text,timestamptz,_regtype,_regtype,bool,int8,int8}',
8388 proargmodes
=> '{o,o,o,o,o,o,o,o}',
8389 proargnames
=> '{name,statement,prepare_time,parameter_types,result_types,from_sql,generic_plans,custom_plans}',
8390 prosrc
=> 'pg_prepared_statement' },
8391 { oid
=> '2511', descr
=> 'get the open cursors for this session',
8392 proname
=> 'pg_cursor', prorows
=> '1000', proretset
=> 't',
8393 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'record',
8394 proargtypes
=> '', proallargtypes
=> '{text,text,bool,bool,bool,timestamptz}',
8395 proargmodes
=> '{o,o,o,o,o,o}',
8396 proargnames
=> '{name,statement,is_holdable,is_binary,is_scrollable,creation_time}',
8397 prosrc
=> 'pg_cursor' },
8398 { oid
=> '9221', descr
=> 'get abbreviations from current timezone',
8399 proname
=> 'pg_timezone_abbrevs_zone', prorows
=> '10', proretset
=> 't',
8400 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> '',
8401 proallargtypes
=> '{text,interval,bool}', proargmodes
=> '{o,o,o}',
8402 proargnames
=> '{abbrev,utc_offset,is_dst}',
8403 prosrc
=> 'pg_timezone_abbrevs_zone' },
8404 { oid
=> '2599', descr
=> 'get abbreviations from timezone_abbreviations',
8405 proname
=> 'pg_timezone_abbrevs_abbrevs', prorows
=> '1000', proretset
=> 't',
8406 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> '',
8407 proallargtypes
=> '{text,interval,bool}', proargmodes
=> '{o,o,o}',
8408 proargnames
=> '{abbrev,utc_offset,is_dst}',
8409 prosrc
=> 'pg_timezone_abbrevs_abbrevs' },
8410 { oid
=> '2856', descr
=> 'get the available time zone names',
8411 proname
=> 'pg_timezone_names', prorows
=> '1000', proretset
=> 't',
8412 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> '',
8413 proallargtypes
=> '{text,text,interval,bool}', proargmodes
=> '{o,o,o,o}',
8414 proargnames
=> '{name,abbrev,utc_offset,is_dst}',
8415 prosrc
=> 'pg_timezone_names' },
8416 { oid
=> '2730', descr
=> 'trigger description with pretty-print option',
8417 proname
=> 'pg_get_triggerdef', provolatile
=> 's', prorettype
=> 'text',
8418 proargtypes
=> 'oid bool', prosrc
=> 'pg_get_triggerdef_ext' },
8420 # asynchronous notifications
8422 descr
=> 'get the channels that the current backend listens to',
8423 proname
=> 'pg_listening_channels', prorows
=> '10', proretset
=> 't',
8424 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'text',
8425 proargtypes
=> '', prosrc
=> 'pg_listening_channels' },
8426 { oid
=> '3036', descr
=> 'send a notification event',
8427 proname
=> 'pg_notify', proisstrict
=> 'f', provolatile
=> 'v',
8428 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'text text',
8429 prosrc
=> 'pg_notify' },
8431 descr
=> 'get the fraction of the asynchronous notification queue currently in use',
8432 proname
=> 'pg_notification_queue_usage', provolatile
=> 'v',
8433 proparallel
=> 'r', prorettype
=> 'float8', proargtypes
=> '',
8434 prosrc
=> 'pg_notification_queue_usage' },
8436 # shared memory usage
8437 { oid
=> '5052', descr
=> 'allocations from the main shared memory segment',
8438 proname
=> 'pg_get_shmem_allocations', prorows
=> '50', proretset
=> 't',
8439 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
8440 proallargtypes
=> '{text,int8,int8,int8}', proargmodes
=> '{o,o,o,o}',
8441 proargnames
=> '{name,off,size,allocated_size}',
8442 prosrc
=> 'pg_get_shmem_allocations' },
8444 # memory context of local backend
8446 descr
=> 'information about all memory contexts of local backend',
8447 proname
=> 'pg_get_backend_memory_contexts', prorows
=> '100',
8448 proretset
=> 't', provolatile
=> 'v', proparallel
=> 'r',
8449 prorettype
=> 'record', proargtypes
=> '',
8450 proallargtypes
=> '{text,text,text,int4,_int4,int8,int8,int8,int8,int8}',
8451 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o}',
8452 proargnames
=> '{name, ident, type, level, path, total_bytes, total_nblocks, free_bytes, free_chunks, used_bytes}',
8453 prosrc
=> 'pg_get_backend_memory_contexts' },
8455 # logging memory contexts of the specified backend
8456 { oid
=> '4543', descr
=> 'log memory contexts of the specified backend',
8457 proname
=> 'pg_log_backend_memory_contexts', provolatile
=> 'v',
8458 prorettype
=> 'bool', proargtypes
=> 'int4',
8459 prosrc
=> 'pg_log_backend_memory_contexts' },
8461 # non-persistent series generator
8462 { oid
=> '1066', descr
=> 'non-persistent series generator',
8463 proname
=> 'generate_series', prorows
=> '1000',
8464 prosupport
=> 'generate_series_int4_support', proretset
=> 't',
8465 prorettype
=> 'int4', proargtypes
=> 'int4 int4 int4',
8466 prosrc
=> 'generate_series_step_int4' },
8467 { oid
=> '1067', descr
=> 'non-persistent series generator',
8468 proname
=> 'generate_series', prorows
=> '1000',
8469 prosupport
=> 'generate_series_int4_support', proretset
=> 't',
8470 prorettype
=> 'int4', proargtypes
=> 'int4 int4',
8471 prosrc
=> 'generate_series_int4' },
8472 { oid
=> '3994', descr
=> 'planner support for generate_series',
8473 proname
=> 'generate_series_int4_support', prorettype
=> 'internal',
8474 proargtypes
=> 'internal', prosrc
=> 'generate_series_int4_support' },
8475 { oid
=> '1068', descr
=> 'non-persistent series generator',
8476 proname
=> 'generate_series', prorows
=> '1000',
8477 prosupport
=> 'generate_series_int8_support', proretset
=> 't',
8478 prorettype
=> 'int8', proargtypes
=> 'int8 int8 int8',
8479 prosrc
=> 'generate_series_step_int8' },
8480 { oid
=> '1069', descr
=> 'non-persistent series generator',
8481 proname
=> 'generate_series', prorows
=> '1000',
8482 prosupport
=> 'generate_series_int8_support', proretset
=> 't',
8483 prorettype
=> 'int8', proargtypes
=> 'int8 int8',
8484 prosrc
=> 'generate_series_int8' },
8485 { oid
=> '3995', descr
=> 'planner support for generate_series',
8486 proname
=> 'generate_series_int8_support', prorettype
=> 'internal',
8487 proargtypes
=> 'internal', prosrc
=> 'generate_series_int8_support' },
8488 { oid
=> '3259', descr
=> 'non-persistent series generator',
8489 proname
=> 'generate_series', prorows
=> '1000',
8490 prosupport
=> 'generate_series_numeric_support', proretset
=> 't',
8491 prorettype
=> 'numeric', proargtypes
=> 'numeric numeric numeric',
8492 prosrc
=> 'generate_series_step_numeric' },
8493 { oid
=> '3260', descr
=> 'non-persistent series generator',
8494 proname
=> 'generate_series', prorows
=> '1000',
8495 prosupport
=> 'generate_series_numeric_support', proretset
=> 't',
8496 prorettype
=> 'numeric', proargtypes
=> 'numeric numeric',
8497 prosrc
=> 'generate_series_numeric' },
8498 { oid
=> '8405', descr
=> 'planner support for generate_series',
8499 proname
=> 'generate_series_numeric_support', prorettype
=> 'internal',
8500 proargtypes
=> 'internal', prosrc
=> 'generate_series_numeric_support' },
8501 { oid
=> '938', descr
=> 'non-persistent series generator',
8502 proname
=> 'generate_series', prorows
=> '1000',
8503 prosupport
=> 'generate_series_timestamp_support', proretset
=> 't',
8504 prorettype
=> 'timestamp', proargtypes
=> 'timestamp timestamp interval',
8505 prosrc
=> 'generate_series_timestamp' },
8506 { oid
=> '939', descr
=> 'non-persistent series generator',
8507 proname
=> 'generate_series', prorows
=> '1000',
8508 prosupport
=> 'generate_series_timestamp_support', proretset
=> 't',
8509 provolatile
=> 's', prorettype
=> 'timestamptz',
8510 proargtypes
=> 'timestamptz timestamptz interval',
8511 prosrc
=> 'generate_series_timestamptz' },
8512 { oid
=> '6274', descr
=> 'non-persistent series generator',
8513 proname
=> 'generate_series', prorows
=> '1000',
8514 prosupport
=> 'generate_series_timestamp_support', proretset
=> 't',
8515 prorettype
=> 'timestamptz',
8516 proargtypes
=> 'timestamptz timestamptz interval text',
8517 prosrc
=> 'generate_series_timestamptz_at_zone' },
8518 { oid
=> '8402', descr
=> 'planner support for generate_series',
8519 proname
=> 'generate_series_timestamp_support', prorettype
=> 'internal',
8520 proargtypes
=> 'internal', prosrc
=> 'generate_series_timestamp_support' },
8522 # boolean aggregates
8523 { oid
=> '2515', descr
=> 'aggregate transition function',
8524 proname
=> 'booland_statefunc', prorettype
=> 'bool',
8525 proargtypes
=> 'bool bool', prosrc
=> 'booland_statefunc' },
8526 { oid
=> '2516', descr
=> 'aggregate transition function',
8527 proname
=> 'boolor_statefunc', prorettype
=> 'bool',
8528 proargtypes
=> 'bool bool', prosrc
=> 'boolor_statefunc' },
8529 { oid
=> '3496', descr
=> 'aggregate transition function',
8530 proname
=> 'bool_accum', proisstrict
=> 'f', prorettype
=> 'internal',
8531 proargtypes
=> 'internal bool', prosrc
=> 'bool_accum' },
8532 { oid
=> '3497', descr
=> 'aggregate transition function',
8533 proname
=> 'bool_accum_inv', proisstrict
=> 'f', prorettype
=> 'internal',
8534 proargtypes
=> 'internal bool', prosrc
=> 'bool_accum_inv' },
8535 { oid
=> '3498', descr
=> 'aggregate final function',
8536 proname
=> 'bool_alltrue', prorettype
=> 'bool', proargtypes
=> 'internal',
8537 prosrc
=> 'bool_alltrue' },
8538 { oid
=> '3499', descr
=> 'aggregate final function',
8539 proname
=> 'bool_anytrue', prorettype
=> 'bool', proargtypes
=> 'internal',
8540 prosrc
=> 'bool_anytrue' },
8541 { oid
=> '2517', descr
=> 'boolean-and aggregate',
8542 proname
=> 'bool_and', prokind
=> 'a', proisstrict
=> 'f',
8543 prorettype
=> 'bool', proargtypes
=> 'bool', prosrc
=> 'aggregate_dummy' },
8545 # ANY, SOME? These names conflict with subquery operators. See doc.
8546 { oid
=> '2518', descr
=> 'boolean-or aggregate',
8547 proname
=> 'bool_or', prokind
=> 'a', proisstrict
=> 'f',
8548 prorettype
=> 'bool', proargtypes
=> 'bool', prosrc
=> 'aggregate_dummy' },
8549 { oid
=> '2519', descr
=> 'boolean-and aggregate',
8550 proname
=> 'every', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bool',
8551 proargtypes
=> 'bool', prosrc
=> 'aggregate_dummy' },
8553 # bitwise integer aggregates
8554 { oid
=> '2236', descr
=> 'bitwise-and smallint aggregate',
8555 proname
=> 'bit_and', prokind
=> 'a', proisstrict
=> 'f',
8556 prorettype
=> 'int2', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
8557 { oid
=> '2237', descr
=> 'bitwise-or smallint aggregate',
8558 proname
=> 'bit_or', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int2',
8559 proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
8560 { oid
=> '6164', descr
=> 'bitwise-xor smallint aggregate',
8561 proname
=> 'bit_xor', prokind
=> 'a', proisstrict
=> 'f',
8562 prorettype
=> 'int2', proargtypes
=> 'int2', prosrc
=> 'aggregate_dummy' },
8563 { oid
=> '2238', descr
=> 'bitwise-and integer aggregate',
8564 proname
=> 'bit_and', prokind
=> 'a', proisstrict
=> 'f',
8565 prorettype
=> 'int4', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
8566 { oid
=> '2239', descr
=> 'bitwise-or integer aggregate',
8567 proname
=> 'bit_or', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int4',
8568 proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
8569 { oid
=> '6165', descr
=> 'bitwise-xor integer aggregate',
8570 proname
=> 'bit_xor', prokind
=> 'a', proisstrict
=> 'f',
8571 prorettype
=> 'int4', proargtypes
=> 'int4', prosrc
=> 'aggregate_dummy' },
8572 { oid
=> '2240', descr
=> 'bitwise-and bigint aggregate',
8573 proname
=> 'bit_and', prokind
=> 'a', proisstrict
=> 'f',
8574 prorettype
=> 'int8', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
8575 { oid
=> '2241', descr
=> 'bitwise-or bigint aggregate',
8576 proname
=> 'bit_or', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'int8',
8577 proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
8578 { oid
=> '6166', descr
=> 'bitwise-xor bigint aggregate',
8579 proname
=> 'bit_xor', prokind
=> 'a', proisstrict
=> 'f',
8580 prorettype
=> 'int8', proargtypes
=> 'int8', prosrc
=> 'aggregate_dummy' },
8581 { oid
=> '2242', descr
=> 'bitwise-and bit aggregate',
8582 proname
=> 'bit_and', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bit',
8583 proargtypes
=> 'bit', prosrc
=> 'aggregate_dummy' },
8584 { oid
=> '2243', descr
=> 'bitwise-or bit aggregate',
8585 proname
=> 'bit_or', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bit',
8586 proargtypes
=> 'bit', prosrc
=> 'aggregate_dummy' },
8587 { oid
=> '6167', descr
=> 'bitwise-xor bit aggregate',
8588 proname
=> 'bit_xor', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'bit',
8589 proargtypes
=> 'bit', prosrc
=> 'aggregate_dummy' },
8591 # formerly-missing interval + datetime operators
8593 proname
=> 'interval_pl_date', prolang
=> 'sql', prorettype
=> 'timestamp',
8594 proargtypes
=> 'interval date', prosrc
=> 'see system_functions.sql' },
8596 proname
=> 'interval_pl_timetz', prolang
=> 'sql', prorettype
=> 'timetz',
8597 proargtypes
=> 'interval timetz', prosrc
=> 'see system_functions.sql' },
8599 proname
=> 'interval_pl_timestamp', prolang
=> 'sql',
8600 prorettype
=> 'timestamp', proargtypes
=> 'interval timestamp',
8601 prosrc
=> 'see system_functions.sql' },
8603 proname
=> 'interval_pl_timestamptz', prolang
=> 'sql', provolatile
=> 's',
8604 prorettype
=> 'timestamptz', proargtypes
=> 'interval timestamptz',
8605 prosrc
=> 'see system_functions.sql' },
8607 proname
=> 'integer_pl_date', prolang
=> 'sql', prorettype
=> 'date',
8608 proargtypes
=> 'int4 date', prosrc
=> 'see system_functions.sql' },
8610 { oid
=> '2556', descr
=> 'get OIDs of databases in a tablespace',
8611 proname
=> 'pg_tablespace_databases', prorows
=> '1000', proretset
=> 't',
8612 provolatile
=> 's', prorettype
=> 'oid', proargtypes
=> 'oid',
8613 prosrc
=> 'pg_tablespace_databases' },
8615 { oid
=> '2557', descr
=> 'convert int4 to boolean',
8616 proname
=> 'bool', proleakproof
=> 't', prorettype
=> 'bool',
8617 proargtypes
=> 'int4', prosrc
=> 'int4_bool' },
8618 { oid
=> '2558', descr
=> 'convert boolean to int4',
8619 proname
=> 'int4', proleakproof
=> 't', prorettype
=> 'int4',
8620 proargtypes
=> 'bool', prosrc
=> 'bool_int4' },
8621 { oid
=> '2559', descr
=> 'current value from last used sequence',
8622 proname
=> 'lastval', provolatile
=> 'v', proparallel
=> 'u',
8623 prorettype
=> 'int8', proargtypes
=> '', prosrc
=> 'lastval' },
8625 # start time function
8626 { oid
=> '2560', descr
=> 'postmaster start time',
8627 proname
=> 'pg_postmaster_start_time', provolatile
=> 's',
8628 prorettype
=> 'timestamptz', proargtypes
=> '',
8629 prosrc
=> 'pg_postmaster_start_time' },
8631 # config reload time function
8632 { oid
=> '2034', descr
=> 'configuration load time',
8633 proname
=> 'pg_conf_load_time', provolatile
=> 's', proparallel
=> 'r',
8634 prorettype
=> 'timestamptz', proargtypes
=> '',
8635 prosrc
=> 'pg_conf_load_time' },
8637 # new functions for Y-direction rtree opclasses
8639 proname
=> 'box_below', prorettype
=> 'bool', proargtypes
=> 'box box',
8640 prosrc
=> 'box_below' },
8642 proname
=> 'box_overbelow', prorettype
=> 'bool', proargtypes
=> 'box box',
8643 prosrc
=> 'box_overbelow' },
8645 proname
=> 'box_overabove', prorettype
=> 'bool', proargtypes
=> 'box box',
8646 prosrc
=> 'box_overabove' },
8648 proname
=> 'box_above', prorettype
=> 'bool', proargtypes
=> 'box box',
8649 prosrc
=> 'box_above' },
8651 proname
=> 'poly_below', prorettype
=> 'bool',
8652 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_below' },
8654 proname
=> 'poly_overbelow', prorettype
=> 'bool',
8655 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_overbelow' },
8657 proname
=> 'poly_overabove', prorettype
=> 'bool',
8658 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_overabove' },
8660 proname
=> 'poly_above', prorettype
=> 'bool',
8661 proargtypes
=> 'polygon polygon', prosrc
=> 'poly_above' },
8663 proname
=> 'circle_overbelow', prorettype
=> 'bool',
8664 proargtypes
=> 'circle circle', prosrc
=> 'circle_overbelow' },
8666 proname
=> 'circle_overabove', prorettype
=> 'bool',
8667 proargtypes
=> 'circle circle', prosrc
=> 'circle_overabove' },
8669 # support functions for GiST r-tree emulation
8670 { oid
=> '2578', descr
=> 'GiST support',
8671 proname
=> 'gist_box_consistent', prorettype
=> 'bool',
8672 proargtypes
=> 'internal box int2 oid internal',
8673 prosrc
=> 'gist_box_consistent' },
8674 { oid
=> '2581', descr
=> 'GiST support',
8675 proname
=> 'gist_box_penalty', prorettype
=> 'internal',
8676 proargtypes
=> 'internal internal internal', prosrc
=> 'gist_box_penalty' },
8677 { oid
=> '2582', descr
=> 'GiST support',
8678 proname
=> 'gist_box_picksplit', prorettype
=> 'internal',
8679 proargtypes
=> 'internal internal', prosrc
=> 'gist_box_picksplit' },
8680 { oid
=> '2583', descr
=> 'GiST support',
8681 proname
=> 'gist_box_union', prorettype
=> 'box',
8682 proargtypes
=> 'internal internal', prosrc
=> 'gist_box_union' },
8683 { oid
=> '2584', descr
=> 'GiST support',
8684 proname
=> 'gist_box_same', prorettype
=> 'internal',
8685 proargtypes
=> 'box box internal', prosrc
=> 'gist_box_same' },
8686 { oid
=> '3998', descr
=> 'GiST support',
8687 proname
=> 'gist_box_distance', prorettype
=> 'float8',
8688 proargtypes
=> 'internal box int2 oid internal',
8689 prosrc
=> 'gist_box_distance' },
8690 { oid
=> '2585', descr
=> 'GiST support',
8691 proname
=> 'gist_poly_consistent', prorettype
=> 'bool',
8692 proargtypes
=> 'internal polygon int2 oid internal',
8693 prosrc
=> 'gist_poly_consistent' },
8694 { oid
=> '2586', descr
=> 'GiST support',
8695 proname
=> 'gist_poly_compress', prorettype
=> 'internal',
8696 proargtypes
=> 'internal', prosrc
=> 'gist_poly_compress' },
8697 { oid
=> '2591', descr
=> 'GiST support',
8698 proname
=> 'gist_circle_consistent', prorettype
=> 'bool',
8699 proargtypes
=> 'internal circle int2 oid internal',
8700 prosrc
=> 'gist_circle_consistent' },
8701 { oid
=> '2592', descr
=> 'GiST support',
8702 proname
=> 'gist_circle_compress', prorettype
=> 'internal',
8703 proargtypes
=> 'internal', prosrc
=> 'gist_circle_compress' },
8704 { oid
=> '1030', descr
=> 'GiST support',
8705 proname
=> 'gist_point_compress', prorettype
=> 'internal',
8706 proargtypes
=> 'internal', prosrc
=> 'gist_point_compress' },
8707 { oid
=> '3282', descr
=> 'GiST support',
8708 proname
=> 'gist_point_fetch', prorettype
=> 'internal',
8709 proargtypes
=> 'internal', prosrc
=> 'gist_point_fetch' },
8710 { oid
=> '2179', descr
=> 'GiST support',
8711 proname
=> 'gist_point_consistent', prorettype
=> 'bool',
8712 proargtypes
=> 'internal point int2 oid internal',
8713 prosrc
=> 'gist_point_consistent' },
8714 { oid
=> '3064', descr
=> 'GiST support',
8715 proname
=> 'gist_point_distance', prorettype
=> 'float8',
8716 proargtypes
=> 'internal point int2 oid internal',
8717 prosrc
=> 'gist_point_distance' },
8718 { oid
=> '3280', descr
=> 'GiST support',
8719 proname
=> 'gist_circle_distance', prorettype
=> 'float8',
8720 proargtypes
=> 'internal circle int2 oid internal',
8721 prosrc
=> 'gist_circle_distance' },
8722 { oid
=> '3288', descr
=> 'GiST support',
8723 proname
=> 'gist_poly_distance', prorettype
=> 'float8',
8724 proargtypes
=> 'internal polygon int2 oid internal',
8725 prosrc
=> 'gist_poly_distance' },
8726 { oid
=> '3435', descr
=> 'sort support',
8727 proname
=> 'gist_point_sortsupport', prorettype
=> 'void',
8728 proargtypes
=> 'internal', prosrc
=> 'gist_point_sortsupport' },
8731 { oid
=> '2743', descr
=> 'GIN array support',
8732 proname
=> 'ginarrayextract', prorettype
=> 'internal',
8733 proargtypes
=> 'anyarray internal internal', prosrc
=> 'ginarrayextract' },
8734 { oid
=> '2774', descr
=> 'GIN array support',
8735 proname
=> 'ginqueryarrayextract', prorettype
=> 'internal',
8736 proargtypes
=> 'anyarray internal int2 internal internal internal internal',
8737 prosrc
=> 'ginqueryarrayextract' },
8738 { oid
=> '2744', descr
=> 'GIN array support',
8739 proname
=> 'ginarrayconsistent', prorettype
=> 'bool',
8740 proargtypes
=> 'internal int2 anyarray int4 internal internal internal internal',
8741 prosrc
=> 'ginarrayconsistent' },
8742 { oid
=> '3920', descr
=> 'GIN array support',
8743 proname
=> 'ginarraytriconsistent', prorettype
=> 'char',
8744 proargtypes
=> 'internal int2 anyarray int4 internal internal internal',
8745 prosrc
=> 'ginarraytriconsistent' },
8746 { oid
=> '3076', descr
=> 'GIN array support (obsolete)',
8747 proname
=> 'ginarrayextract', prorettype
=> 'internal',
8748 proargtypes
=> 'anyarray internal', prosrc
=> 'ginarrayextract_2args' },
8750 # overlap/contains/contained
8752 proname
=> 'arrayoverlap', prorettype
=> 'bool',
8753 proargtypes
=> 'anyarray anyarray', prosrc
=> 'arrayoverlap' },
8755 proname
=> 'arraycontains', prorettype
=> 'bool',
8756 proargtypes
=> 'anyarray anyarray', prosrc
=> 'arraycontains' },
8758 proname
=> 'arraycontained', prorettype
=> 'bool',
8759 proargtypes
=> 'anyarray anyarray', prosrc
=> 'arraycontained' },
8762 { oid
=> '3383', descr
=> 'BRIN minmax support',
8763 proname
=> 'brin_minmax_opcinfo', prorettype
=> 'internal',
8764 proargtypes
=> 'internal', prosrc
=> 'brin_minmax_opcinfo' },
8765 { oid
=> '3384', descr
=> 'BRIN minmax support',
8766 proname
=> 'brin_minmax_add_value', prorettype
=> 'bool',
8767 proargtypes
=> 'internal internal internal internal',
8768 prosrc
=> 'brin_minmax_add_value' },
8769 { oid
=> '3385', descr
=> 'BRIN minmax support',
8770 proname
=> 'brin_minmax_consistent', prorettype
=> 'bool',
8771 proargtypes
=> 'internal internal internal',
8772 prosrc
=> 'brin_minmax_consistent' },
8773 { oid
=> '3386', descr
=> 'BRIN minmax support',
8774 proname
=> 'brin_minmax_union', prorettype
=> 'bool',
8775 proargtypes
=> 'internal internal internal', prosrc
=> 'brin_minmax_union' },
8778 { oid
=> '4616', descr
=> 'BRIN multi minmax support',
8779 proname
=> 'brin_minmax_multi_opcinfo', prorettype
=> 'internal',
8780 proargtypes
=> 'internal', prosrc
=> 'brin_minmax_multi_opcinfo' },
8781 { oid
=> '4617', descr
=> 'BRIN multi minmax support',
8782 proname
=> 'brin_minmax_multi_add_value', prorettype
=> 'bool',
8783 proargtypes
=> 'internal internal internal internal',
8784 prosrc
=> 'brin_minmax_multi_add_value' },
8785 { oid
=> '4618', descr
=> 'BRIN multi minmax support',
8786 proname
=> 'brin_minmax_multi_consistent', prorettype
=> 'bool',
8787 proargtypes
=> 'internal internal internal int4',
8788 prosrc
=> 'brin_minmax_multi_consistent' },
8789 { oid
=> '4619', descr
=> 'BRIN multi minmax support',
8790 proname
=> 'brin_minmax_multi_union', prorettype
=> 'bool',
8791 proargtypes
=> 'internal internal internal',
8792 prosrc
=> 'brin_minmax_multi_union' },
8793 { oid
=> '4620', descr
=> 'BRIN multi minmax support',
8794 proname
=> 'brin_minmax_multi_options', proisstrict
=> 'f',
8795 prorettype
=> 'void', proargtypes
=> 'internal',
8796 prosrc
=> 'brin_minmax_multi_options' },
8798 { oid
=> '4621', descr
=> 'BRIN multi minmax int2 distance',
8799 proname
=> 'brin_minmax_multi_distance_int2', prorettype
=> 'float8',
8800 proargtypes
=> 'internal internal',
8801 prosrc
=> 'brin_minmax_multi_distance_int2' },
8802 { oid
=> '4622', descr
=> 'BRIN multi minmax int4 distance',
8803 proname
=> 'brin_minmax_multi_distance_int4', prorettype
=> 'float8',
8804 proargtypes
=> 'internal internal',
8805 prosrc
=> 'brin_minmax_multi_distance_int4' },
8806 { oid
=> '4623', descr
=> 'BRIN multi minmax int8 distance',
8807 proname
=> 'brin_minmax_multi_distance_int8', prorettype
=> 'float8',
8808 proargtypes
=> 'internal internal',
8809 prosrc
=> 'brin_minmax_multi_distance_int8' },
8810 { oid
=> '4624', descr
=> 'BRIN multi minmax float4 distance',
8811 proname
=> 'brin_minmax_multi_distance_float4', prorettype
=> 'float8',
8812 proargtypes
=> 'internal internal',
8813 prosrc
=> 'brin_minmax_multi_distance_float4' },
8814 { oid
=> '4625', descr
=> 'BRIN multi minmax float8 distance',
8815 proname
=> 'brin_minmax_multi_distance_float8', prorettype
=> 'float8',
8816 proargtypes
=> 'internal internal',
8817 prosrc
=> 'brin_minmax_multi_distance_float8' },
8818 { oid
=> '4626', descr
=> 'BRIN multi minmax numeric distance',
8819 proname
=> 'brin_minmax_multi_distance_numeric', prorettype
=> 'float8',
8820 proargtypes
=> 'internal internal',
8821 prosrc
=> 'brin_minmax_multi_distance_numeric' },
8822 { oid
=> '4627', descr
=> 'BRIN multi minmax tid distance',
8823 proname
=> 'brin_minmax_multi_distance_tid', prorettype
=> 'float8',
8824 proargtypes
=> 'internal internal',
8825 prosrc
=> 'brin_minmax_multi_distance_tid' },
8826 { oid
=> '4628', descr
=> 'BRIN multi minmax uuid distance',
8827 proname
=> 'brin_minmax_multi_distance_uuid', prorettype
=> 'float8',
8828 proargtypes
=> 'internal internal',
8829 prosrc
=> 'brin_minmax_multi_distance_uuid' },
8830 { oid
=> '4629', descr
=> 'BRIN multi minmax date distance',
8831 proname
=> 'brin_minmax_multi_distance_date', prorettype
=> 'float8',
8832 proargtypes
=> 'internal internal',
8833 prosrc
=> 'brin_minmax_multi_distance_date' },
8834 { oid
=> '4630', descr
=> 'BRIN multi minmax time distance',
8835 proname
=> 'brin_minmax_multi_distance_time', prorettype
=> 'float8',
8836 proargtypes
=> 'internal internal',
8837 prosrc
=> 'brin_minmax_multi_distance_time' },
8838 { oid
=> '4631', descr
=> 'BRIN multi minmax interval distance',
8839 proname
=> 'brin_minmax_multi_distance_interval', prorettype
=> 'float8',
8840 proargtypes
=> 'internal internal',
8841 prosrc
=> 'brin_minmax_multi_distance_interval' },
8842 { oid
=> '4632', descr
=> 'BRIN multi minmax timetz distance',
8843 proname
=> 'brin_minmax_multi_distance_timetz', prorettype
=> 'float8',
8844 proargtypes
=> 'internal internal',
8845 prosrc
=> 'brin_minmax_multi_distance_timetz' },
8846 { oid
=> '4633', descr
=> 'BRIN multi minmax pg_lsn distance',
8847 proname
=> 'brin_minmax_multi_distance_pg_lsn', prorettype
=> 'float8',
8848 proargtypes
=> 'internal internal',
8849 prosrc
=> 'brin_minmax_multi_distance_pg_lsn' },
8850 { oid
=> '4634', descr
=> 'BRIN multi minmax macaddr distance',
8851 proname
=> 'brin_minmax_multi_distance_macaddr', prorettype
=> 'float8',
8852 proargtypes
=> 'internal internal',
8853 prosrc
=> 'brin_minmax_multi_distance_macaddr' },
8854 { oid
=> '4635', descr
=> 'BRIN multi minmax macaddr8 distance',
8855 proname
=> 'brin_minmax_multi_distance_macaddr8', prorettype
=> 'float8',
8856 proargtypes
=> 'internal internal',
8857 prosrc
=> 'brin_minmax_multi_distance_macaddr8' },
8858 { oid
=> '4636', descr
=> 'BRIN multi minmax inet distance',
8859 proname
=> 'brin_minmax_multi_distance_inet', prorettype
=> 'float8',
8860 proargtypes
=> 'internal internal',
8861 prosrc
=> 'brin_minmax_multi_distance_inet' },
8862 { oid
=> '4637', descr
=> 'BRIN multi minmax timestamp distance',
8863 proname
=> 'brin_minmax_multi_distance_timestamp', prorettype
=> 'float8',
8864 proargtypes
=> 'internal internal',
8865 prosrc
=> 'brin_minmax_multi_distance_timestamp' },
8868 { oid
=> '4105', descr
=> 'BRIN inclusion support',
8869 proname
=> 'brin_inclusion_opcinfo', prorettype
=> 'internal',
8870 proargtypes
=> 'internal', prosrc
=> 'brin_inclusion_opcinfo' },
8871 { oid
=> '4106', descr
=> 'BRIN inclusion support',
8872 proname
=> 'brin_inclusion_add_value', prorettype
=> 'bool',
8873 proargtypes
=> 'internal internal internal internal',
8874 prosrc
=> 'brin_inclusion_add_value' },
8875 { oid
=> '4107', descr
=> 'BRIN inclusion support',
8876 proname
=> 'brin_inclusion_consistent', prorettype
=> 'bool',
8877 proargtypes
=> 'internal internal internal',
8878 prosrc
=> 'brin_inclusion_consistent' },
8879 { oid
=> '4108', descr
=> 'BRIN inclusion support',
8880 proname
=> 'brin_inclusion_union', prorettype
=> 'bool',
8881 proargtypes
=> 'internal internal internal',
8882 prosrc
=> 'brin_inclusion_union' },
8885 { oid
=> '4591', descr
=> 'BRIN bloom support',
8886 proname
=> 'brin_bloom_opcinfo', prorettype
=> 'internal',
8887 proargtypes
=> 'internal', prosrc
=> 'brin_bloom_opcinfo' },
8888 { oid
=> '4592', descr
=> 'BRIN bloom support',
8889 proname
=> 'brin_bloom_add_value', prorettype
=> 'bool',
8890 proargtypes
=> 'internal internal internal internal',
8891 prosrc
=> 'brin_bloom_add_value' },
8892 { oid
=> '4593', descr
=> 'BRIN bloom support',
8893 proname
=> 'brin_bloom_consistent', prorettype
=> 'bool',
8894 proargtypes
=> 'internal internal internal int4',
8895 prosrc
=> 'brin_bloom_consistent' },
8896 { oid
=> '4594', descr
=> 'BRIN bloom support',
8897 proname
=> 'brin_bloom_union', prorettype
=> 'bool',
8898 proargtypes
=> 'internal internal internal', prosrc
=> 'brin_bloom_union' },
8899 { oid
=> '4595', descr
=> 'BRIN bloom support',
8900 proname
=> 'brin_bloom_options', proisstrict
=> 'f', prorettype
=> 'void',
8901 proargtypes
=> 'internal', prosrc
=> 'brin_bloom_options' },
8903 # userlock replacements
8904 { oid
=> '2880', descr
=> 'obtain exclusive advisory lock',
8905 proname
=> 'pg_advisory_lock', provolatile
=> 'v', proparallel
=> 'r',
8906 prorettype
=> 'void', proargtypes
=> 'int8',
8907 prosrc
=> 'pg_advisory_lock_int8' },
8908 { oid
=> '3089', descr
=> 'obtain exclusive advisory lock',
8909 proname
=> 'pg_advisory_xact_lock', provolatile
=> 'v', proparallel
=> 'r',
8910 prorettype
=> 'void', proargtypes
=> 'int8',
8911 prosrc
=> 'pg_advisory_xact_lock_int8' },
8912 { oid
=> '2881', descr
=> 'obtain shared advisory lock',
8913 proname
=> 'pg_advisory_lock_shared', provolatile
=> 'v', proparallel
=> 'r',
8914 prorettype
=> 'void', proargtypes
=> 'int8',
8915 prosrc
=> 'pg_advisory_lock_shared_int8' },
8916 { oid
=> '3090', descr
=> 'obtain shared advisory lock',
8917 proname
=> 'pg_advisory_xact_lock_shared', provolatile
=> 'v',
8918 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'int8',
8919 prosrc
=> 'pg_advisory_xact_lock_shared_int8' },
8920 { oid
=> '2882', descr
=> 'obtain exclusive advisory lock if available',
8921 proname
=> 'pg_try_advisory_lock', provolatile
=> 'v', proparallel
=> 'r',
8922 prorettype
=> 'bool', proargtypes
=> 'int8',
8923 prosrc
=> 'pg_try_advisory_lock_int8' },
8924 { oid
=> '3091', descr
=> 'obtain exclusive advisory lock if available',
8925 proname
=> 'pg_try_advisory_xact_lock', provolatile
=> 'v',
8926 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int8',
8927 prosrc
=> 'pg_try_advisory_xact_lock_int8' },
8928 { oid
=> '2883', descr
=> 'obtain shared advisory lock if available',
8929 proname
=> 'pg_try_advisory_lock_shared', provolatile
=> 'v',
8930 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int8',
8931 prosrc
=> 'pg_try_advisory_lock_shared_int8' },
8932 { oid
=> '3092', descr
=> 'obtain shared advisory lock if available',
8933 proname
=> 'pg_try_advisory_xact_lock_shared', provolatile
=> 'v',
8934 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int8',
8935 prosrc
=> 'pg_try_advisory_xact_lock_shared_int8' },
8936 { oid
=> '2884', descr
=> 'release exclusive advisory lock',
8937 proname
=> 'pg_advisory_unlock', provolatile
=> 'v', proparallel
=> 'r',
8938 prorettype
=> 'bool', proargtypes
=> 'int8',
8939 prosrc
=> 'pg_advisory_unlock_int8' },
8940 { oid
=> '2885', descr
=> 'release shared advisory lock',
8941 proname
=> 'pg_advisory_unlock_shared', provolatile
=> 'v',
8942 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int8',
8943 prosrc
=> 'pg_advisory_unlock_shared_int8' },
8944 { oid
=> '2886', descr
=> 'obtain exclusive advisory lock',
8945 proname
=> 'pg_advisory_lock', provolatile
=> 'v', proparallel
=> 'r',
8946 prorettype
=> 'void', proargtypes
=> 'int4 int4',
8947 prosrc
=> 'pg_advisory_lock_int4' },
8948 { oid
=> '3093', descr
=> 'obtain exclusive advisory lock',
8949 proname
=> 'pg_advisory_xact_lock', provolatile
=> 'v', proparallel
=> 'r',
8950 prorettype
=> 'void', proargtypes
=> 'int4 int4',
8951 prosrc
=> 'pg_advisory_xact_lock_int4' },
8952 { oid
=> '2887', descr
=> 'obtain shared advisory lock',
8953 proname
=> 'pg_advisory_lock_shared', provolatile
=> 'v', proparallel
=> 'r',
8954 prorettype
=> 'void', proargtypes
=> 'int4 int4',
8955 prosrc
=> 'pg_advisory_lock_shared_int4' },
8956 { oid
=> '3094', descr
=> 'obtain shared advisory lock',
8957 proname
=> 'pg_advisory_xact_lock_shared', provolatile
=> 'v',
8958 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'int4 int4',
8959 prosrc
=> 'pg_advisory_xact_lock_shared_int4' },
8960 { oid
=> '2888', descr
=> 'obtain exclusive advisory lock if available',
8961 proname
=> 'pg_try_advisory_lock', provolatile
=> 'v', proparallel
=> 'r',
8962 prorettype
=> 'bool', proargtypes
=> 'int4 int4',
8963 prosrc
=> 'pg_try_advisory_lock_int4' },
8964 { oid
=> '3095', descr
=> 'obtain exclusive advisory lock if available',
8965 proname
=> 'pg_try_advisory_xact_lock', provolatile
=> 'v',
8966 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int4 int4',
8967 prosrc
=> 'pg_try_advisory_xact_lock_int4' },
8968 { oid
=> '2889', descr
=> 'obtain shared advisory lock if available',
8969 proname
=> 'pg_try_advisory_lock_shared', provolatile
=> 'v',
8970 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int4 int4',
8971 prosrc
=> 'pg_try_advisory_lock_shared_int4' },
8972 { oid
=> '3096', descr
=> 'obtain shared advisory lock if available',
8973 proname
=> 'pg_try_advisory_xact_lock_shared', provolatile
=> 'v',
8974 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int4 int4',
8975 prosrc
=> 'pg_try_advisory_xact_lock_shared_int4' },
8976 { oid
=> '2890', descr
=> 'release exclusive advisory lock',
8977 proname
=> 'pg_advisory_unlock', provolatile
=> 'v', proparallel
=> 'r',
8978 prorettype
=> 'bool', proargtypes
=> 'int4 int4',
8979 prosrc
=> 'pg_advisory_unlock_int4' },
8980 { oid
=> '2891', descr
=> 'release shared advisory lock',
8981 proname
=> 'pg_advisory_unlock_shared', provolatile
=> 'v',
8982 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> 'int4 int4',
8983 prosrc
=> 'pg_advisory_unlock_shared_int4' },
8984 { oid
=> '2892', descr
=> 'release all advisory locks',
8985 proname
=> 'pg_advisory_unlock_all', provolatile
=> 'v', proparallel
=> 'r',
8986 prorettype
=> 'void', proargtypes
=> '', prosrc
=> 'pg_advisory_unlock_all' },
8989 { oid
=> '2893', descr
=> 'I/O',
8990 proname
=> 'xml_in', provolatile
=> 's', prorettype
=> 'xml',
8991 proargtypes
=> 'cstring', prosrc
=> 'xml_in' },
8992 { oid
=> '2894', descr
=> 'I/O',
8993 proname
=> 'xml_out', prorettype
=> 'cstring', proargtypes
=> 'xml',
8994 prosrc
=> 'xml_out' },
8995 { oid
=> '2895', descr
=> 'generate XML comment',
8996 proname
=> 'xmlcomment', prorettype
=> 'xml', proargtypes
=> 'text',
8997 prosrc
=> 'xmlcomment' },
8999 descr
=> 'perform a non-validating parse of a character string to produce an XML value',
9000 proname
=> 'xml', provolatile
=> 's', prorettype
=> 'xml',
9001 proargtypes
=> 'text', prosrc
=> 'texttoxml' },
9002 { oid
=> '2897', descr
=> 'validate an XML value',
9003 proname
=> 'xmlvalidate', prorettype
=> 'bool', proargtypes
=> 'xml text',
9004 prosrc
=> 'xmlvalidate' },
9005 { oid
=> '2898', descr
=> 'I/O',
9006 proname
=> 'xml_recv', provolatile
=> 's', prorettype
=> 'xml',
9007 proargtypes
=> 'internal', prosrc
=> 'xml_recv' },
9008 { oid
=> '2899', descr
=> 'I/O',
9009 proname
=> 'xml_send', provolatile
=> 's', prorettype
=> 'bytea',
9010 proargtypes
=> 'xml', prosrc
=> 'xml_send' },
9011 { oid
=> '2900', descr
=> 'aggregate transition function',
9012 proname
=> 'xmlconcat2', proisstrict
=> 'f', prorettype
=> 'xml',
9013 proargtypes
=> 'xml xml', prosrc
=> 'xmlconcat2' },
9014 { oid
=> '2901', descr
=> 'concatenate XML values',
9015 proname
=> 'xmlagg', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'xml',
9016 proargtypes
=> 'xml', prosrc
=> 'aggregate_dummy' },
9017 { oid
=> '2922', descr
=> 'serialize an XML value to a character string',
9018 proname
=> 'text', prorettype
=> 'text', proargtypes
=> 'xml',
9019 prosrc
=> 'xmltotext' },
9020 { oid
=> '3813', descr
=> 'generate XML text node',
9021 proname
=> 'xmltext', prorettype
=> 'xml', proargtypes
=> 'text',
9022 prosrc
=> 'xmltext' },
9024 { oid
=> '2923', descr
=> 'map table contents to XML',
9025 proname
=> 'table_to_xml', procost
=> '100', provolatile
=> 's',
9026 proparallel
=> 'r', prorettype
=> 'xml',
9027 proargtypes
=> 'regclass bool bool text',
9028 proargnames
=> '{tbl,nulls,tableforest,targetns}', prosrc
=> 'table_to_xml' },
9029 { oid
=> '2924', descr
=> 'map query result to XML',
9030 proname
=> 'query_to_xml', procost
=> '100', provolatile
=> 'v',
9031 proparallel
=> 'u', prorettype
=> 'xml', proargtypes
=> 'text bool bool text',
9032 proargnames
=> '{query,nulls,tableforest,targetns}',
9033 prosrc
=> 'query_to_xml' },
9034 { oid
=> '2925', descr
=> 'map rows from cursor to XML',
9035 proname
=> 'cursor_to_xml', procost
=> '100', provolatile
=> 'v',
9036 proparallel
=> 'u', prorettype
=> 'xml',
9037 proargtypes
=> 'refcursor int4 bool bool text',
9038 proargnames
=> '{cursor,count,nulls,tableforest,targetns}',
9039 prosrc
=> 'cursor_to_xml' },
9040 { oid
=> '2926', descr
=> 'map table structure to XML Schema',
9041 proname
=> 'table_to_xmlschema', procost
=> '100', provolatile
=> 's',
9042 proparallel
=> 'r', prorettype
=> 'xml',
9043 proargtypes
=> 'regclass bool bool text',
9044 proargnames
=> '{tbl,nulls,tableforest,targetns}',
9045 prosrc
=> 'table_to_xmlschema' },
9046 { oid
=> '2927', descr
=> 'map query result structure to XML Schema',
9047 proname
=> 'query_to_xmlschema', procost
=> '100', provolatile
=> 'v',
9048 proparallel
=> 'u', prorettype
=> 'xml', proargtypes
=> 'text bool bool text',
9049 proargnames
=> '{query,nulls,tableforest,targetns}',
9050 prosrc
=> 'query_to_xmlschema' },
9051 { oid
=> '2928', descr
=> 'map cursor structure to XML Schema',
9052 proname
=> 'cursor_to_xmlschema', procost
=> '100', provolatile
=> 'v',
9053 proparallel
=> 'u', prorettype
=> 'xml',
9054 proargtypes
=> 'refcursor bool bool text',
9055 proargnames
=> '{cursor,nulls,tableforest,targetns}',
9056 prosrc
=> 'cursor_to_xmlschema' },
9058 descr
=> 'map table contents and structure to XML and XML Schema',
9059 proname
=> 'table_to_xml_and_xmlschema', procost
=> '100', provolatile
=> 's',
9060 proparallel
=> 'r', prorettype
=> 'xml',
9061 proargtypes
=> 'regclass bool bool text',
9062 proargnames
=> '{tbl,nulls,tableforest,targetns}',
9063 prosrc
=> 'table_to_xml_and_xmlschema' },
9065 descr
=> 'map query result and structure to XML and XML Schema',
9066 proname
=> 'query_to_xml_and_xmlschema', procost
=> '100', provolatile
=> 'v',
9067 proparallel
=> 'u', prorettype
=> 'xml', proargtypes
=> 'text bool bool text',
9068 proargnames
=> '{query,nulls,tableforest,targetns}',
9069 prosrc
=> 'query_to_xml_and_xmlschema' },
9071 { oid
=> '2933', descr
=> 'map schema contents to XML',
9072 proname
=> 'schema_to_xml', procost
=> '100', provolatile
=> 's',
9073 proparallel
=> 'r', prorettype
=> 'xml', proargtypes
=> 'name bool bool text',
9074 proargnames
=> '{schema,nulls,tableforest,targetns}',
9075 prosrc
=> 'schema_to_xml' },
9076 { oid
=> '2934', descr
=> 'map schema structure to XML Schema',
9077 proname
=> 'schema_to_xmlschema', procost
=> '100', provolatile
=> 's',
9078 proparallel
=> 'r', prorettype
=> 'xml', proargtypes
=> 'name bool bool text',
9079 proargnames
=> '{schema,nulls,tableforest,targetns}',
9080 prosrc
=> 'schema_to_xmlschema' },
9082 descr
=> 'map schema contents and structure to XML and XML Schema',
9083 proname
=> 'schema_to_xml_and_xmlschema', procost
=> '100',
9084 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'xml',
9085 proargtypes
=> 'name bool bool text',
9086 proargnames
=> '{schema,nulls,tableforest,targetns}',
9087 prosrc
=> 'schema_to_xml_and_xmlschema' },
9089 { oid
=> '2936', descr
=> 'map database contents to XML',
9090 proname
=> 'database_to_xml', procost
=> '100', provolatile
=> 's',
9091 proparallel
=> 'r', prorettype
=> 'xml', proargtypes
=> 'bool bool text',
9092 proargnames
=> '{nulls,tableforest,targetns}', prosrc
=> 'database_to_xml' },
9093 { oid
=> '2937', descr
=> 'map database structure to XML Schema',
9094 proname
=> 'database_to_xmlschema', procost
=> '100', provolatile
=> 's',
9095 proparallel
=> 'r', prorettype
=> 'xml', proargtypes
=> 'bool bool text',
9096 proargnames
=> '{nulls,tableforest,targetns}',
9097 prosrc
=> 'database_to_xmlschema' },
9099 descr
=> 'map database contents and structure to XML and XML Schema',
9100 proname
=> 'database_to_xml_and_xmlschema', procost
=> '100',
9101 provolatile
=> 's', proparallel
=> 'r', prorettype
=> 'xml',
9102 proargtypes
=> 'bool bool text',
9103 proargnames
=> '{nulls,tableforest,targetns}',
9104 prosrc
=> 'database_to_xml_and_xmlschema' },
9107 descr
=> 'evaluate XPath expression, with namespaces support',
9108 proname
=> 'xpath', prorettype
=> '_xml', proargtypes
=> 'text xml _text',
9109 prosrc
=> 'xpath' },
9110 { oid
=> '2932', descr
=> 'evaluate XPath expression',
9111 proname
=> 'xpath', prolang
=> 'sql', prorettype
=> '_xml',
9112 proargtypes
=> 'text xml', prosrc
=> 'see system_functions.sql' },
9114 { oid
=> '2614', descr
=> 'test XML value against XPath expression',
9115 proname
=> 'xmlexists', prorettype
=> 'bool', proargtypes
=> 'text xml',
9116 prosrc
=> 'xmlexists' },
9119 descr
=> 'test XML value against XPath expression, with namespace support',
9120 proname
=> 'xpath_exists', prorettype
=> 'bool',
9121 proargtypes
=> 'text xml _text', prosrc
=> 'xpath_exists' },
9122 { oid
=> '3050', descr
=> 'test XML value against XPath expression',
9123 proname
=> 'xpath_exists', prolang
=> 'sql', prorettype
=> 'bool',
9124 proargtypes
=> 'text xml', prosrc
=> 'see system_functions.sql' },
9125 { oid
=> '3051', descr
=> 'determine if a string is well formed XML',
9126 proname
=> 'xml_is_well_formed', provolatile
=> 's', prorettype
=> 'bool',
9127 proargtypes
=> 'text', prosrc
=> 'xml_is_well_formed' },
9128 { oid
=> '3052', descr
=> 'determine if a string is well formed XML document',
9129 proname
=> 'xml_is_well_formed_document', prorettype
=> 'bool',
9130 proargtypes
=> 'text', prosrc
=> 'xml_is_well_formed_document' },
9131 { oid
=> '3053', descr
=> 'determine if a string is well formed XML content',
9132 proname
=> 'xml_is_well_formed_content', prorettype
=> 'bool',
9133 proargtypes
=> 'text', prosrc
=> 'xml_is_well_formed_content' },
9136 { oid
=> '321', descr
=> 'I/O',
9137 proname
=> 'json_in', prorettype
=> 'json', proargtypes
=> 'cstring',
9138 prosrc
=> 'json_in' },
9139 { oid
=> '322', descr
=> 'I/O',
9140 proname
=> 'json_out', prorettype
=> 'cstring', proargtypes
=> 'json',
9141 prosrc
=> 'json_out' },
9142 { oid
=> '323', descr
=> 'I/O',
9143 proname
=> 'json_recv', prorettype
=> 'json', proargtypes
=> 'internal',
9144 prosrc
=> 'json_recv' },
9145 { oid
=> '324', descr
=> 'I/O',
9146 proname
=> 'json_send', prorettype
=> 'bytea', proargtypes
=> 'json',
9147 prosrc
=> 'json_send' },
9148 { oid
=> '3153', descr
=> 'map array to json',
9149 proname
=> 'array_to_json', provolatile
=> 's', prorettype
=> 'json',
9150 proargtypes
=> 'anyarray', prosrc
=> 'array_to_json' },
9151 { oid
=> '3154', descr
=> 'map array to json with optional pretty printing',
9152 proname
=> 'array_to_json', provolatile
=> 's', prorettype
=> 'json',
9153 proargtypes
=> 'anyarray bool', prosrc
=> 'array_to_json_pretty' },
9154 { oid
=> '3155', descr
=> 'map row to json',
9155 proname
=> 'row_to_json', provolatile
=> 's', prorettype
=> 'json',
9156 proargtypes
=> 'record', prosrc
=> 'row_to_json' },
9157 { oid
=> '3156', descr
=> 'map row to json with optional pretty printing',
9158 proname
=> 'row_to_json', provolatile
=> 's', prorettype
=> 'json',
9159 proargtypes
=> 'record bool', prosrc
=> 'row_to_json_pretty' },
9160 { oid
=> '3173', descr
=> 'json aggregate transition function',
9161 proname
=> 'json_agg_transfn', proisstrict
=> 'f', provolatile
=> 's',
9162 prorettype
=> 'internal', proargtypes
=> 'internal anyelement',
9163 prosrc
=> 'json_agg_transfn' },
9164 { oid
=> '6275', descr
=> 'json aggregate transition function',
9165 proname
=> 'json_agg_strict_transfn', proisstrict
=> 'f', provolatile
=> 's',
9166 prorettype
=> 'internal', proargtypes
=> 'internal anyelement',
9167 prosrc
=> 'json_agg_strict_transfn' },
9168 { oid
=> '3174', descr
=> 'json aggregate final function',
9169 proname
=> 'json_agg_finalfn', proisstrict
=> 'f', prorettype
=> 'json',
9170 proargtypes
=> 'internal', prosrc
=> 'json_agg_finalfn' },
9171 { oid
=> '3175', descr
=> 'aggregate input into json',
9172 proname
=> 'json_agg', prokind
=> 'a', proisstrict
=> 'f', provolatile
=> 's',
9173 prorettype
=> 'json', proargtypes
=> 'anyelement',
9174 prosrc
=> 'aggregate_dummy' },
9175 { oid
=> '6276', descr
=> 'aggregate input into json',
9176 proname
=> 'json_agg_strict', prokind
=> 'a', proisstrict
=> 'f',
9177 provolatile
=> 's', prorettype
=> 'json', proargtypes
=> 'anyelement',
9178 prosrc
=> 'aggregate_dummy' },
9179 { oid
=> '3180', descr
=> 'json object aggregate transition function',
9180 proname
=> 'json_object_agg_transfn', proisstrict
=> 'f', provolatile
=> 's',
9181 prorettype
=> 'internal', proargtypes
=> 'internal any any',
9182 prosrc
=> 'json_object_agg_transfn' },
9183 { oid
=> '6277', descr
=> 'json object aggregate transition function',
9184 proname
=> 'json_object_agg_strict_transfn', proisstrict
=> 'f',
9185 provolatile
=> 's', prorettype
=> 'internal',
9186 proargtypes
=> 'internal any any',
9187 prosrc
=> 'json_object_agg_strict_transfn' },
9188 { oid
=> '6278', descr
=> 'json object aggregate transition function',
9189 proname
=> 'json_object_agg_unique_transfn', proisstrict
=> 'f',
9190 provolatile
=> 's', prorettype
=> 'internal',
9191 proargtypes
=> 'internal any any',
9192 prosrc
=> 'json_object_agg_unique_transfn' },
9193 { oid
=> '6279', descr
=> 'json object aggregate transition function',
9194 proname
=> 'json_object_agg_unique_strict_transfn', proisstrict
=> 'f',
9195 provolatile
=> 's', prorettype
=> 'internal',
9196 proargtypes
=> 'internal any any',
9197 prosrc
=> 'json_object_agg_unique_strict_transfn' },
9198 { oid
=> '3196', descr
=> 'json object aggregate final function',
9199 proname
=> 'json_object_agg_finalfn', proisstrict
=> 'f',
9200 prorettype
=> 'json', proargtypes
=> 'internal',
9201 prosrc
=> 'json_object_agg_finalfn' },
9202 { oid
=> '3197', descr
=> 'aggregate input into a json object',
9203 proname
=> 'json_object_agg', prokind
=> 'a', proisstrict
=> 'f',
9204 provolatile
=> 's', prorettype
=> 'json', proargtypes
=> 'any any',
9205 proargnames
=> '{key,value}', prosrc
=> 'aggregate_dummy' },
9206 { oid
=> '6280', descr
=> 'aggregate non-NULL input into a json object',
9207 proname
=> 'json_object_agg_strict', prokind
=> 'a', proisstrict
=> 'f',
9208 provolatile
=> 's', prorettype
=> 'json', proargtypes
=> 'any any',
9209 proargnames
=> '{key,value}', prosrc
=> 'aggregate_dummy' },
9211 descr
=> 'aggregate input into a json object with unique keys',
9212 proname
=> 'json_object_agg_unique', prokind
=> 'a', proisstrict
=> 'f',
9213 provolatile
=> 's', prorettype
=> 'json', proargtypes
=> 'any any',
9214 proargnames
=> '{key,value}', prosrc
=> 'aggregate_dummy' },
9216 descr
=> 'aggregate non-NULL input into a json object with unique keys',
9217 proname
=> 'json_object_agg_unique_strict', prokind
=> 'a',
9218 proisstrict
=> 'f', provolatile
=> 's', prorettype
=> 'json',
9219 proargtypes
=> 'any any', proargnames
=> '{key,value}',
9220 prosrc
=> 'aggregate_dummy' },
9221 { oid
=> '3198', descr
=> 'build a json array from any inputs',
9222 proname
=> 'json_build_array', provariadic
=> 'any', proisstrict
=> 'f',
9223 provolatile
=> 's', prorettype
=> 'json', proargtypes
=> 'any',
9224 proallargtypes
=> '{any}', proargmodes
=> '{v}',
9225 prosrc
=> 'json_build_array' },
9226 { oid
=> '3199', descr
=> 'build an empty json array',
9227 proname
=> 'json_build_array', proisstrict
=> 'f', provolatile
=> 's',
9228 prorettype
=> 'json', proargtypes
=> '',
9229 prosrc
=> 'json_build_array_noargs' },
9231 descr
=> 'build a json object from pairwise key/value inputs',
9232 proname
=> 'json_build_object', provariadic
=> 'any', proisstrict
=> 'f',
9233 provolatile
=> 's', prorettype
=> 'json', proargtypes
=> 'any',
9234 proallargtypes
=> '{any}', proargmodes
=> '{v}',
9235 prosrc
=> 'json_build_object' },
9236 { oid
=> '3201', descr
=> 'build an empty json object',
9237 proname
=> 'json_build_object', proisstrict
=> 'f', provolatile
=> 's',
9238 prorettype
=> 'json', proargtypes
=> '',
9239 prosrc
=> 'json_build_object_noargs' },
9240 { oid
=> '3202', descr
=> 'map text array of key value pairs to json object',
9241 proname
=> 'json_object', prorettype
=> 'json', proargtypes
=> '_text',
9242 prosrc
=> 'json_object' },
9243 { oid
=> '3203', descr
=> 'map text arrays of keys and values to json object',
9244 proname
=> 'json_object', prorettype
=> 'json', proargtypes
=> '_text _text',
9245 prosrc
=> 'json_object_two_arg' },
9246 { oid
=> '3176', descr
=> 'map input to json',
9247 proname
=> 'to_json', provolatile
=> 's', prorettype
=> 'json',
9248 proargtypes
=> 'anyelement', prosrc
=> 'to_json' },
9249 { oid
=> '3261', descr
=> 'remove object fields with null values from json',
9250 proname
=> 'json_strip_nulls', prorettype
=> 'json', proargtypes
=> 'json',
9251 prosrc
=> 'json_strip_nulls' },
9254 proname
=> 'json_object_field', prorettype
=> 'json',
9255 proargtypes
=> 'json text', proargnames
=> '{from_json, field_name}',
9256 prosrc
=> 'json_object_field' },
9258 proname
=> 'json_object_field_text', prorettype
=> 'text',
9259 proargtypes
=> 'json text', proargnames
=> '{from_json, field_name}',
9260 prosrc
=> 'json_object_field_text' },
9262 proname
=> 'json_array_element', prorettype
=> 'json',
9263 proargtypes
=> 'json int4', proargnames
=> '{from_json, element_index}',
9264 prosrc
=> 'json_array_element' },
9266 proname
=> 'json_array_element_text', prorettype
=> 'text',
9267 proargtypes
=> 'json int4', proargnames
=> '{from_json, element_index}',
9268 prosrc
=> 'json_array_element_text' },
9269 { oid
=> '3951', descr
=> 'get value from json with path elements',
9270 proname
=> 'json_extract_path', provariadic
=> 'text', prorettype
=> 'json',
9271 proargtypes
=> 'json _text', proallargtypes
=> '{json,_text}',
9272 proargmodes
=> '{i,v}', proargnames
=> '{from_json,path_elems}',
9273 prosrc
=> 'json_extract_path' },
9274 { oid
=> '3953', descr
=> 'get value from json as text with path elements',
9275 proname
=> 'json_extract_path_text', provariadic
=> 'text',
9276 prorettype
=> 'text', proargtypes
=> 'json _text',
9277 proallargtypes
=> '{json,_text}', proargmodes
=> '{i,v}',
9278 proargnames
=> '{from_json,path_elems}', prosrc
=> 'json_extract_path_text' },
9279 { oid
=> '3955', descr
=> 'key value pairs of a json object',
9280 proname
=> 'json_array_elements', prorows
=> '100', proretset
=> 't',
9281 prorettype
=> 'json', proargtypes
=> 'json', proallargtypes
=> '{json,json}',
9282 proargmodes
=> '{i,o}', proargnames
=> '{from_json,value}',
9283 prosrc
=> 'json_array_elements' },
9284 { oid
=> '3969', descr
=> 'elements of json array',
9285 proname
=> 'json_array_elements_text', prorows
=> '100', proretset
=> 't',
9286 prorettype
=> 'text', proargtypes
=> 'json', proallargtypes
=> '{json,text}',
9287 proargmodes
=> '{i,o}', proargnames
=> '{from_json,value}',
9288 prosrc
=> 'json_array_elements_text' },
9289 { oid
=> '3956', descr
=> 'length of json array',
9290 proname
=> 'json_array_length', prorettype
=> 'int4', proargtypes
=> 'json',
9291 prosrc
=> 'json_array_length' },
9292 { oid
=> '3957', descr
=> 'get json object keys',
9293 proname
=> 'json_object_keys', prorows
=> '100', proretset
=> 't',
9294 prorettype
=> 'text', proargtypes
=> 'json', prosrc
=> 'json_object_keys' },
9295 { oid
=> '3958', descr
=> 'key value pairs of a json object',
9296 proname
=> 'json_each', prorows
=> '100', proretset
=> 't',
9297 prorettype
=> 'record', proargtypes
=> 'json',
9298 proallargtypes
=> '{json,text,json}', proargmodes
=> '{i,o,o}',
9299 proargnames
=> '{from_json,key,value}', prosrc
=> 'json_each' },
9300 { oid
=> '3959', descr
=> 'key value pairs of a json object',
9301 proname
=> 'json_each_text', prorows
=> '100', proretset
=> 't',
9302 prorettype
=> 'record', proargtypes
=> 'json',
9303 proallargtypes
=> '{json,text,text}', proargmodes
=> '{i,o,o}',
9304 proargnames
=> '{from_json,key,value}', prosrc
=> 'json_each_text' },
9305 { oid
=> '3960', descr
=> 'get record fields from a json object',
9306 proname
=> 'json_populate_record', proisstrict
=> 'f', provolatile
=> 's',
9307 prorettype
=> 'anyelement', proargtypes
=> 'anyelement json bool',
9308 prosrc
=> 'json_populate_record' },
9310 descr
=> 'get set of records with fields from a json array of objects',
9311 proname
=> 'json_populate_recordset', prorows
=> '100', proisstrict
=> 'f',
9312 proretset
=> 't', provolatile
=> 's', prorettype
=> 'anyelement',
9313 proargtypes
=> 'anyelement json bool', prosrc
=> 'json_populate_recordset' },
9314 { oid
=> '3204', descr
=> 'get record fields from a json object',
9315 proname
=> 'json_to_record', provolatile
=> 's', prorettype
=> 'record',
9316 proargtypes
=> 'json', prosrc
=> 'json_to_record' },
9318 descr
=> 'get set of records with fields from a json array of objects',
9319 proname
=> 'json_to_recordset', prorows
=> '100', proisstrict
=> 'f',
9320 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
9321 proargtypes
=> 'json', prosrc
=> 'json_to_recordset' },
9322 { oid
=> '3968', descr
=> 'get the type of a json value',
9323 proname
=> 'json_typeof', prorettype
=> 'text', proargtypes
=> 'json',
9324 prosrc
=> 'json_typeof' },
9327 { oid
=> '2952', descr
=> 'I/O',
9328 proname
=> 'uuid_in', prorettype
=> 'uuid', proargtypes
=> 'cstring',
9329 prosrc
=> 'uuid_in' },
9330 { oid
=> '2953', descr
=> 'I/O',
9331 proname
=> 'uuid_out', prorettype
=> 'cstring', proargtypes
=> 'uuid',
9332 prosrc
=> 'uuid_out' },
9334 proname
=> 'uuid_lt', proleakproof
=> 't', prorettype
=> 'bool',
9335 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_lt' },
9337 proname
=> 'uuid_le', proleakproof
=> 't', prorettype
=> 'bool',
9338 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_le' },
9340 proname
=> 'uuid_eq', proleakproof
=> 't', prorettype
=> 'bool',
9341 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_eq' },
9343 proname
=> 'uuid_ge', proleakproof
=> 't', prorettype
=> 'bool',
9344 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_ge' },
9346 proname
=> 'uuid_gt', proleakproof
=> 't', prorettype
=> 'bool',
9347 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_gt' },
9349 proname
=> 'uuid_ne', proleakproof
=> 't', prorettype
=> 'bool',
9350 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_ne' },
9351 { oid
=> '2960', descr
=> 'less-equal-greater',
9352 proname
=> 'uuid_cmp', proleakproof
=> 't', prorettype
=> 'int4',
9353 proargtypes
=> 'uuid uuid', prosrc
=> 'uuid_cmp' },
9354 { oid
=> '3300', descr
=> 'sort support',
9355 proname
=> 'uuid_sortsupport', prorettype
=> 'void',
9356 proargtypes
=> 'internal', prosrc
=> 'uuid_sortsupport' },
9357 { oid
=> '2961', descr
=> 'I/O',
9358 proname
=> 'uuid_recv', prorettype
=> 'uuid', proargtypes
=> 'internal',
9359 prosrc
=> 'uuid_recv' },
9360 { oid
=> '2962', descr
=> 'I/O',
9361 proname
=> 'uuid_send', prorettype
=> 'bytea', proargtypes
=> 'uuid',
9362 prosrc
=> 'uuid_send' },
9363 { oid
=> '2963', descr
=> 'hash',
9364 proname
=> 'uuid_hash', prorettype
=> 'int4', proargtypes
=> 'uuid',
9365 prosrc
=> 'uuid_hash' },
9366 { oid
=> '3412', descr
=> 'hash',
9367 proname
=> 'uuid_hash_extended', prorettype
=> 'int8',
9368 proargtypes
=> 'uuid int8', prosrc
=> 'uuid_hash_extended' },
9369 { oid
=> '3432', descr
=> 'generate random UUID',
9370 proname
=> 'gen_random_uuid', provolatile
=> 'v',
9371 prorettype
=> 'uuid', proargtypes
=> '', prosrc
=> 'gen_random_uuid' },
9372 { oid
=> '9895', descr
=> 'generate UUID version 4',
9373 proname
=> 'uuidv4', provolatile
=> 'v',
9374 prorettype
=> 'uuid', proargtypes
=> '', prosrc
=> 'gen_random_uuid' },
9375 { oid
=> '9896', descr
=> 'generate UUID version 7',
9376 proname
=> 'uuidv7', provolatile
=> 'v',
9377 prorettype
=> 'uuid', proargtypes
=> '', prosrc
=> 'uuidv7' },
9378 { oid
=> '9897', descr
=> 'generate UUID version 7 with a timestamp shifted by specified interval',
9379 proname
=> 'uuidv7', provolatile
=> 'v', proargnames
=> '{shift}',
9380 prorettype
=> 'uuid', proargtypes
=> 'interval', prosrc
=> 'uuidv7_interval' },
9381 { oid
=> '6342', descr
=> 'extract timestamp from UUID',
9382 proname
=> 'uuid_extract_timestamp', proleakproof
=> 't',
9383 prorettype
=> 'timestamptz', proargtypes
=> 'uuid',
9384 prosrc
=> 'uuid_extract_timestamp' },
9385 { oid
=> '6343', descr
=> 'extract version from RFC 9562 UUID',
9386 proname
=> 'uuid_extract_version', proleakproof
=> 't', prorettype
=> 'int2',
9387 proargtypes
=> 'uuid', prosrc
=> 'uuid_extract_version' },
9390 { oid
=> '3229', descr
=> 'I/O',
9391 proname
=> 'pg_lsn_in', prorettype
=> 'pg_lsn', proargtypes
=> 'cstring',
9392 prosrc
=> 'pg_lsn_in' },
9393 { oid
=> '3230', descr
=> 'I/O',
9394 proname
=> 'pg_lsn_out', prorettype
=> 'cstring', proargtypes
=> 'pg_lsn',
9395 prosrc
=> 'pg_lsn_out' },
9397 proname
=> 'pg_lsn_lt', proleakproof
=> 't', prorettype
=> 'bool',
9398 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_lt' },
9400 proname
=> 'pg_lsn_le', proleakproof
=> 't', prorettype
=> 'bool',
9401 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_le' },
9403 proname
=> 'pg_lsn_eq', proleakproof
=> 't', prorettype
=> 'bool',
9404 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_eq' },
9406 proname
=> 'pg_lsn_ge', proleakproof
=> 't', prorettype
=> 'bool',
9407 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_ge' },
9409 proname
=> 'pg_lsn_gt', proleakproof
=> 't', prorettype
=> 'bool',
9410 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_gt' },
9412 proname
=> 'pg_lsn_ne', proleakproof
=> 't', prorettype
=> 'bool',
9413 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_ne' },
9415 proname
=> 'pg_lsn_mi', prorettype
=> 'numeric',
9416 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_mi' },
9417 { oid
=> '3238', descr
=> 'I/O',
9418 proname
=> 'pg_lsn_recv', prorettype
=> 'pg_lsn', proargtypes
=> 'internal',
9419 prosrc
=> 'pg_lsn_recv' },
9420 { oid
=> '3239', descr
=> 'I/O',
9421 proname
=> 'pg_lsn_send', prorettype
=> 'bytea', proargtypes
=> 'pg_lsn',
9422 prosrc
=> 'pg_lsn_send' },
9423 { oid
=> '3251', descr
=> 'less-equal-greater',
9424 proname
=> 'pg_lsn_cmp', proleakproof
=> 't', prorettype
=> 'int4',
9425 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_cmp' },
9426 { oid
=> '3252', descr
=> 'hash',
9427 proname
=> 'pg_lsn_hash', prorettype
=> 'int4', proargtypes
=> 'pg_lsn',
9428 prosrc
=> 'pg_lsn_hash' },
9429 { oid
=> '3413', descr
=> 'hash',
9430 proname
=> 'pg_lsn_hash_extended', prorettype
=> 'int8',
9431 proargtypes
=> 'pg_lsn int8', prosrc
=> 'pg_lsn_hash_extended' },
9432 { oid
=> '4187', descr
=> 'larger of two',
9433 proname
=> 'pg_lsn_larger', prorettype
=> 'pg_lsn',
9434 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_larger' },
9435 { oid
=> '4188', descr
=> 'smaller of two',
9436 proname
=> 'pg_lsn_smaller', prorettype
=> 'pg_lsn',
9437 proargtypes
=> 'pg_lsn pg_lsn', prosrc
=> 'pg_lsn_smaller' },
9439 proname
=> 'pg_lsn_pli', prorettype
=> 'pg_lsn',
9440 proargtypes
=> 'pg_lsn numeric', prosrc
=> 'pg_lsn_pli' },
9442 proname
=> 'numeric_pl_pg_lsn', prolang
=> 'sql', prorettype
=> 'pg_lsn',
9443 proargtypes
=> 'numeric pg_lsn', prosrc
=> 'see system_functions.sql' },
9445 proname
=> 'pg_lsn_mii', prorettype
=> 'pg_lsn',
9446 proargtypes
=> 'pg_lsn numeric', prosrc
=> 'pg_lsn_mii' },
9448 # enum related procs
9449 { oid
=> '3504', descr
=> 'I/O',
9450 proname
=> 'anyenum_in', prorettype
=> 'anyenum', proargtypes
=> 'cstring',
9451 prosrc
=> 'anyenum_in' },
9452 { oid
=> '3505', descr
=> 'I/O',
9453 proname
=> 'anyenum_out', provolatile
=> 's', prorettype
=> 'cstring',
9454 proargtypes
=> 'anyenum', prosrc
=> 'anyenum_out' },
9455 { oid
=> '3506', descr
=> 'I/O',
9456 proname
=> 'enum_in', provolatile
=> 's', prorettype
=> 'anyenum',
9457 proargtypes
=> 'cstring oid', prosrc
=> 'enum_in' },
9458 { oid
=> '3507', descr
=> 'I/O',
9459 proname
=> 'enum_out', provolatile
=> 's', prorettype
=> 'cstring',
9460 proargtypes
=> 'anyenum', prosrc
=> 'enum_out' },
9462 proname
=> 'enum_eq', prorettype
=> 'bool', proargtypes
=> 'anyenum anyenum',
9463 prosrc
=> 'enum_eq' },
9465 proname
=> 'enum_ne', prorettype
=> 'bool', proargtypes
=> 'anyenum anyenum',
9466 prosrc
=> 'enum_ne' },
9468 proname
=> 'enum_lt', prorettype
=> 'bool', proargtypes
=> 'anyenum anyenum',
9469 prosrc
=> 'enum_lt' },
9471 proname
=> 'enum_gt', prorettype
=> 'bool', proargtypes
=> 'anyenum anyenum',
9472 prosrc
=> 'enum_gt' },
9474 proname
=> 'enum_le', prorettype
=> 'bool', proargtypes
=> 'anyenum anyenum',
9475 prosrc
=> 'enum_le' },
9477 proname
=> 'enum_ge', prorettype
=> 'bool', proargtypes
=> 'anyenum anyenum',
9478 prosrc
=> 'enum_ge' },
9479 { oid
=> '3514', descr
=> 'less-equal-greater',
9480 proname
=> 'enum_cmp', prorettype
=> 'int4', proargtypes
=> 'anyenum anyenum',
9481 prosrc
=> 'enum_cmp' },
9482 { oid
=> '3515', descr
=> 'hash',
9483 proname
=> 'hashenum', prorettype
=> 'int4', proargtypes
=> 'anyenum',
9484 prosrc
=> 'hashenum' },
9485 { oid
=> '3414', descr
=> 'hash',
9486 proname
=> 'hashenumextended', prorettype
=> 'int8',
9487 proargtypes
=> 'anyenum int8', prosrc
=> 'hashenumextended' },
9488 { oid
=> '3524', descr
=> 'smaller of two',
9489 proname
=> 'enum_smaller', prorettype
=> 'anyenum',
9490 proargtypes
=> 'anyenum anyenum', prosrc
=> 'enum_smaller' },
9491 { oid
=> '3525', descr
=> 'larger of two',
9492 proname
=> 'enum_larger', prorettype
=> 'anyenum',
9493 proargtypes
=> 'anyenum anyenum', prosrc
=> 'enum_larger' },
9494 { oid
=> '3526', descr
=> 'maximum value of all enum input values',
9495 proname
=> 'max', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'anyenum',
9496 proargtypes
=> 'anyenum', prosrc
=> 'aggregate_dummy' },
9497 { oid
=> '3527', descr
=> 'minimum value of all enum input values',
9498 proname
=> 'min', prokind
=> 'a', proisstrict
=> 'f', prorettype
=> 'anyenum',
9499 proargtypes
=> 'anyenum', prosrc
=> 'aggregate_dummy' },
9500 { oid
=> '3528', descr
=> 'first value of the input enum type',
9501 proname
=> 'enum_first', proisstrict
=> 'f', provolatile
=> 's',
9502 prorettype
=> 'anyenum', proargtypes
=> 'anyenum', prosrc
=> 'enum_first' },
9503 { oid
=> '3529', descr
=> 'last value of the input enum type',
9504 proname
=> 'enum_last', proisstrict
=> 'f', provolatile
=> 's',
9505 prorettype
=> 'anyenum', proargtypes
=> 'anyenum', prosrc
=> 'enum_last' },
9507 descr
=> 'range between the two given enum values, as an ordered array',
9508 proname
=> 'enum_range', proisstrict
=> 'f', provolatile
=> 's',
9509 prorettype
=> 'anyarray', proargtypes
=> 'anyenum anyenum',
9510 prosrc
=> 'enum_range_bounds' },
9511 { oid
=> '3531', descr
=> 'range of the given enum type, as an ordered array',
9512 proname
=> 'enum_range', proisstrict
=> 'f', provolatile
=> 's',
9513 prorettype
=> 'anyarray', proargtypes
=> 'anyenum',
9514 prosrc
=> 'enum_range_all' },
9515 { oid
=> '3532', descr
=> 'I/O',
9516 proname
=> 'enum_recv', provolatile
=> 's', prorettype
=> 'anyenum',
9517 proargtypes
=> 'internal oid', prosrc
=> 'enum_recv' },
9518 { oid
=> '3533', descr
=> 'I/O',
9519 proname
=> 'enum_send', provolatile
=> 's', prorettype
=> 'bytea',
9520 proargtypes
=> 'anyenum', prosrc
=> 'enum_send' },
9523 { oid
=> '3610', descr
=> 'I/O',
9524 proname
=> 'tsvectorin', prorettype
=> 'tsvector', proargtypes
=> 'cstring',
9525 prosrc
=> 'tsvectorin' },
9526 { oid
=> '3639', descr
=> 'I/O',
9527 proname
=> 'tsvectorrecv', prorettype
=> 'tsvector',
9528 proargtypes
=> 'internal', prosrc
=> 'tsvectorrecv' },
9529 { oid
=> '3611', descr
=> 'I/O',
9530 proname
=> 'tsvectorout', prorettype
=> 'cstring', proargtypes
=> 'tsvector',
9531 prosrc
=> 'tsvectorout' },
9532 { oid
=> '3638', descr
=> 'I/O',
9533 proname
=> 'tsvectorsend', prorettype
=> 'bytea', proargtypes
=> 'tsvector',
9534 prosrc
=> 'tsvectorsend' },
9535 { oid
=> '3612', descr
=> 'I/O',
9536 proname
=> 'tsqueryin', prorettype
=> 'tsquery', proargtypes
=> 'cstring',
9537 prosrc
=> 'tsqueryin' },
9538 { oid
=> '3641', descr
=> 'I/O',
9539 proname
=> 'tsqueryrecv', prorettype
=> 'tsquery', proargtypes
=> 'internal',
9540 prosrc
=> 'tsqueryrecv' },
9541 { oid
=> '3613', descr
=> 'I/O',
9542 proname
=> 'tsqueryout', prorettype
=> 'cstring', proargtypes
=> 'tsquery',
9543 prosrc
=> 'tsqueryout' },
9544 { oid
=> '3640', descr
=> 'I/O',
9545 proname
=> 'tsquerysend', prorettype
=> 'bytea', proargtypes
=> 'tsquery',
9546 prosrc
=> 'tsquerysend' },
9547 { oid
=> '3646', descr
=> 'I/O',
9548 proname
=> 'gtsvectorin', prorettype
=> 'gtsvector', proargtypes
=> 'cstring',
9549 prosrc
=> 'gtsvectorin' },
9550 { oid
=> '3647', descr
=> 'I/O',
9551 proname
=> 'gtsvectorout', prorettype
=> 'cstring',
9552 proargtypes
=> 'gtsvector', prosrc
=> 'gtsvectorout' },
9555 proname
=> 'tsvector_lt', prorettype
=> 'bool',
9556 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_lt' },
9558 proname
=> 'tsvector_le', prorettype
=> 'bool',
9559 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_le' },
9561 proname
=> 'tsvector_eq', prorettype
=> 'bool',
9562 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_eq' },
9564 proname
=> 'tsvector_ne', prorettype
=> 'bool',
9565 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_ne' },
9567 proname
=> 'tsvector_ge', prorettype
=> 'bool',
9568 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_ge' },
9570 proname
=> 'tsvector_gt', prorettype
=> 'bool',
9571 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_gt' },
9572 { oid
=> '3622', descr
=> 'less-equal-greater',
9573 proname
=> 'tsvector_cmp', prorettype
=> 'int4',
9574 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_cmp' },
9576 { oid
=> '3711', descr
=> 'number of lexemes',
9577 proname
=> 'length', prorettype
=> 'int4', proargtypes
=> 'tsvector',
9578 prosrc
=> 'tsvector_length' },
9579 { oid
=> '3623', descr
=> 'strip position information',
9580 proname
=> 'strip', prorettype
=> 'tsvector', proargtypes
=> 'tsvector',
9581 prosrc
=> 'tsvector_strip' },
9582 { oid
=> '3624', descr
=> 'set given weight for whole tsvector',
9583 proname
=> 'setweight', prorettype
=> 'tsvector',
9584 proargtypes
=> 'tsvector char', prosrc
=> 'tsvector_setweight' },
9585 { oid
=> '3320', descr
=> 'set given weight for given lexemes',
9586 proname
=> 'setweight', prorettype
=> 'tsvector',
9587 proargtypes
=> 'tsvector char _text',
9588 prosrc
=> 'tsvector_setweight_by_filter' },
9590 proname
=> 'tsvector_concat', prorettype
=> 'tsvector',
9591 proargtypes
=> 'tsvector tsvector', prosrc
=> 'tsvector_concat' },
9592 { oid
=> '3321', descr
=> 'delete lexeme',
9593 proname
=> 'ts_delete', prorettype
=> 'tsvector',
9594 proargtypes
=> 'tsvector text', prosrc
=> 'tsvector_delete_str' },
9595 { oid
=> '3323', descr
=> 'delete given lexemes',
9596 proname
=> 'ts_delete', prorettype
=> 'tsvector',
9597 proargtypes
=> 'tsvector _text', prosrc
=> 'tsvector_delete_arr' },
9598 { oid
=> '3322', descr
=> 'expand tsvector to set of rows',
9599 proname
=> 'unnest', prorows
=> '10', proretset
=> 't',
9600 prorettype
=> 'record', proargtypes
=> 'tsvector',
9601 proallargtypes
=> '{tsvector,text,_int2,_text}', proargmodes
=> '{i,o,o,o}',
9602 proargnames
=> '{tsvector,lexeme,positions,weights}',
9603 prosrc
=> 'tsvector_unnest' },
9604 { oid
=> '3326', descr
=> 'convert tsvector to array of lexemes',
9605 proname
=> 'tsvector_to_array', prorettype
=> '_text',
9606 proargtypes
=> 'tsvector', prosrc
=> 'tsvector_to_array' },
9607 { oid
=> '3327', descr
=> 'build tsvector from array of lexemes',
9608 proname
=> 'array_to_tsvector', prorettype
=> 'tsvector',
9609 proargtypes
=> '_text', prosrc
=> 'array_to_tsvector' },
9611 descr
=> 'delete lexemes that do not have one of the given weights',
9612 proname
=> 'ts_filter', prorettype
=> 'tsvector',
9613 proargtypes
=> 'tsvector _char', prosrc
=> 'tsvector_filter' },
9616 proname
=> 'ts_match_vq', prorettype
=> 'bool',
9617 proargtypes
=> 'tsvector tsquery', prosrc
=> 'ts_match_vq' },
9619 proname
=> 'ts_match_qv', prorettype
=> 'bool',
9620 proargtypes
=> 'tsquery tsvector', prosrc
=> 'ts_match_qv' },
9622 proname
=> 'ts_match_tt', procost
=> '100', provolatile
=> 's',
9623 prorettype
=> 'bool', proargtypes
=> 'text text', prosrc
=> 'ts_match_tt' },
9625 proname
=> 'ts_match_tq', procost
=> '100', provolatile
=> 's',
9626 prorettype
=> 'bool', proargtypes
=> 'text tsquery',
9627 prosrc
=> 'ts_match_tq' },
9629 { oid
=> '3648', descr
=> 'GiST tsvector support',
9630 proname
=> 'gtsvector_compress', prorettype
=> 'internal',
9631 proargtypes
=> 'internal', prosrc
=> 'gtsvector_compress' },
9632 { oid
=> '3649', descr
=> 'GiST tsvector support',
9633 proname
=> 'gtsvector_decompress', prorettype
=> 'internal',
9634 proargtypes
=> 'internal', prosrc
=> 'gtsvector_decompress' },
9635 { oid
=> '3650', descr
=> 'GiST tsvector support',
9636 proname
=> 'gtsvector_picksplit', prorettype
=> 'internal',
9637 proargtypes
=> 'internal internal', prosrc
=> 'gtsvector_picksplit' },
9638 { oid
=> '3651', descr
=> 'GiST tsvector support',
9639 proname
=> 'gtsvector_union', prorettype
=> 'gtsvector',
9640 proargtypes
=> 'internal internal', prosrc
=> 'gtsvector_union' },
9641 { oid
=> '3652', descr
=> 'GiST tsvector support',
9642 proname
=> 'gtsvector_same', prorettype
=> 'internal',
9643 proargtypes
=> 'gtsvector gtsvector internal', prosrc
=> 'gtsvector_same' },
9644 { oid
=> '3653', descr
=> 'GiST tsvector support',
9645 proname
=> 'gtsvector_penalty', prorettype
=> 'internal',
9646 proargtypes
=> 'internal internal internal', prosrc
=> 'gtsvector_penalty' },
9647 { oid
=> '3654', descr
=> 'GiST tsvector support',
9648 proname
=> 'gtsvector_consistent', prorettype
=> 'bool',
9649 proargtypes
=> 'internal tsvector int2 oid internal',
9650 prosrc
=> 'gtsvector_consistent' },
9651 { oid
=> '3790', descr
=> 'GiST tsvector support (obsolete)',
9652 proname
=> 'gtsvector_consistent', prorettype
=> 'bool',
9653 proargtypes
=> 'internal gtsvector int4 oid internal',
9654 prosrc
=> 'gtsvector_consistent_oldsig' },
9655 { oid
=> '3434', descr
=> 'GiST tsvector support',
9656 proname
=> 'gtsvector_options', proisstrict
=> 'f', prorettype
=> 'void',
9657 proargtypes
=> 'internal', prosrc
=> 'gtsvector_options' },
9659 { oid
=> '3656', descr
=> 'GIN tsvector support',
9660 proname
=> 'gin_extract_tsvector', prorettype
=> 'internal',
9661 proargtypes
=> 'tsvector internal internal',
9662 prosrc
=> 'gin_extract_tsvector' },
9663 { oid
=> '3657', descr
=> 'GIN tsvector support',
9664 proname
=> 'gin_extract_tsquery', prorettype
=> 'internal',
9665 proargtypes
=> 'tsvector internal int2 internal internal internal internal',
9666 prosrc
=> 'gin_extract_tsquery' },
9667 { oid
=> '3658', descr
=> 'GIN tsvector support',
9668 proname
=> 'gin_tsquery_consistent', prorettype
=> 'bool',
9669 proargtypes
=> 'internal int2 tsvector int4 internal internal internal internal',
9670 prosrc
=> 'gin_tsquery_consistent' },
9671 { oid
=> '3921', descr
=> 'GIN tsvector support',
9672 proname
=> 'gin_tsquery_triconsistent', prorettype
=> 'char',
9673 proargtypes
=> 'internal int2 tsvector int4 internal internal internal',
9674 prosrc
=> 'gin_tsquery_triconsistent' },
9675 { oid
=> '3724', descr
=> 'GIN tsvector support',
9676 proname
=> 'gin_cmp_tslexeme', prorettype
=> 'int4',
9677 proargtypes
=> 'text text', prosrc
=> 'gin_cmp_tslexeme' },
9678 { oid
=> '2700', descr
=> 'GIN tsvector support',
9679 proname
=> 'gin_cmp_prefix', prorettype
=> 'int4',
9680 proargtypes
=> 'text text int2 internal', prosrc
=> 'gin_cmp_prefix' },
9681 { oid
=> '3077', descr
=> 'GIN tsvector support (obsolete)',
9682 proname
=> 'gin_extract_tsvector', prorettype
=> 'internal',
9683 proargtypes
=> 'tsvector internal', prosrc
=> 'gin_extract_tsvector_2args' },
9684 { oid
=> '3087', descr
=> 'GIN tsvector support (obsolete)',
9685 proname
=> 'gin_extract_tsquery', prorettype
=> 'internal',
9686 proargtypes
=> 'tsquery internal int2 internal internal',
9687 prosrc
=> 'gin_extract_tsquery_5args' },
9688 { oid
=> '3088', descr
=> 'GIN tsvector support (obsolete)',
9689 proname
=> 'gin_tsquery_consistent', prorettype
=> 'bool',
9690 proargtypes
=> 'internal int2 tsquery int4 internal internal',
9691 prosrc
=> 'gin_tsquery_consistent_6args' },
9692 { oid
=> '3791', descr
=> 'GIN tsvector support (obsolete)',
9693 proname
=> 'gin_extract_tsquery', prorettype
=> 'internal',
9694 proargtypes
=> 'tsquery internal int2 internal internal internal internal',
9695 prosrc
=> 'gin_extract_tsquery_oldsig' },
9696 { oid
=> '3792', descr
=> 'GIN tsvector support (obsolete)',
9697 proname
=> 'gin_tsquery_consistent', prorettype
=> 'bool',
9698 proargtypes
=> 'internal int2 tsquery int4 internal internal internal internal',
9699 prosrc
=> 'gin_tsquery_consistent_oldsig' },
9701 { oid
=> '3789', descr
=> 'clean up GIN pending list',
9702 proname
=> 'gin_clean_pending_list', provolatile
=> 'v', proparallel
=> 'u',
9703 prorettype
=> 'int8', proargtypes
=> 'regclass',
9704 prosrc
=> 'gin_clean_pending_list' },
9707 proname
=> 'tsquery_lt', prorettype
=> 'bool',
9708 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_lt' },
9710 proname
=> 'tsquery_le', prorettype
=> 'bool',
9711 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_le' },
9713 proname
=> 'tsquery_eq', prorettype
=> 'bool',
9714 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_eq' },
9716 proname
=> 'tsquery_ne', prorettype
=> 'bool',
9717 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_ne' },
9719 proname
=> 'tsquery_ge', prorettype
=> 'bool',
9720 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_ge' },
9722 proname
=> 'tsquery_gt', prorettype
=> 'bool',
9723 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_gt' },
9724 { oid
=> '3668', descr
=> 'less-equal-greater',
9725 proname
=> 'tsquery_cmp', prorettype
=> 'int4',
9726 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_cmp' },
9729 proname
=> 'tsquery_and', prorettype
=> 'tsquery',
9730 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_and' },
9732 proname
=> 'tsquery_or', prorettype
=> 'tsquery',
9733 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_or' },
9735 proname
=> 'tsquery_phrase', prorettype
=> 'tsquery',
9736 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsquery_phrase' },
9737 { oid
=> '5004', descr
=> 'phrase-concatenate with distance',
9738 proname
=> 'tsquery_phrase', prorettype
=> 'tsquery',
9739 proargtypes
=> 'tsquery tsquery int4', prosrc
=> 'tsquery_phrase_distance' },
9741 proname
=> 'tsquery_not', prorettype
=> 'tsquery', proargtypes
=> 'tsquery',
9742 prosrc
=> 'tsquery_not' },
9745 proname
=> 'tsq_mcontains', prorettype
=> 'bool',
9746 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsq_mcontains' },
9748 proname
=> 'tsq_mcontained', prorettype
=> 'bool',
9749 proargtypes
=> 'tsquery tsquery', prosrc
=> 'tsq_mcontained' },
9751 { oid
=> '3672', descr
=> 'number of nodes',
9752 proname
=> 'numnode', prorettype
=> 'int4', proargtypes
=> 'tsquery',
9753 prosrc
=> 'tsquery_numnode' },
9754 { oid
=> '3673', descr
=> 'show real useful query for GiST index',
9755 proname
=> 'querytree', prorettype
=> 'text', proargtypes
=> 'tsquery',
9756 prosrc
=> 'tsquerytree' },
9758 { oid
=> '3684', descr
=> 'rewrite tsquery',
9759 proname
=> 'ts_rewrite', prorettype
=> 'tsquery',
9760 proargtypes
=> 'tsquery tsquery tsquery', prosrc
=> 'tsquery_rewrite' },
9761 { oid
=> '3685', descr
=> 'rewrite tsquery',
9762 proname
=> 'ts_rewrite', procost
=> '100', provolatile
=> 'v',
9763 proparallel
=> 'u', prorettype
=> 'tsquery', proargtypes
=> 'tsquery text',
9764 prosrc
=> 'tsquery_rewrite_query' },
9766 { oid
=> '3695', descr
=> 'GiST tsquery support',
9767 proname
=> 'gtsquery_compress', prorettype
=> 'internal',
9768 proargtypes
=> 'internal', prosrc
=> 'gtsquery_compress' },
9769 { oid
=> '3697', descr
=> 'GiST tsquery support',
9770 proname
=> 'gtsquery_picksplit', prorettype
=> 'internal',
9771 proargtypes
=> 'internal internal', prosrc
=> 'gtsquery_picksplit' },
9772 { oid
=> '3698', descr
=> 'GiST tsquery support',
9773 proname
=> 'gtsquery_union', prorettype
=> 'int8',
9774 proargtypes
=> 'internal internal', prosrc
=> 'gtsquery_union' },
9775 { oid
=> '3699', descr
=> 'GiST tsquery support',
9776 proname
=> 'gtsquery_same', prorettype
=> 'internal',
9777 proargtypes
=> 'int8 int8 internal', prosrc
=> 'gtsquery_same' },
9778 { oid
=> '3700', descr
=> 'GiST tsquery support',
9779 proname
=> 'gtsquery_penalty', prorettype
=> 'internal',
9780 proargtypes
=> 'internal internal internal', prosrc
=> 'gtsquery_penalty' },
9781 { oid
=> '3701', descr
=> 'GiST tsquery support',
9782 proname
=> 'gtsquery_consistent', prorettype
=> 'bool',
9783 proargtypes
=> 'internal tsquery int2 oid internal',
9784 prosrc
=> 'gtsquery_consistent' },
9785 { oid
=> '3793', descr
=> 'GiST tsquery support (obsolete)',
9786 proname
=> 'gtsquery_consistent', prorettype
=> 'bool',
9787 proargtypes
=> 'internal internal int4 oid internal',
9788 prosrc
=> 'gtsquery_consistent_oldsig' },
9790 { oid
=> '3686', descr
=> 'restriction selectivity of tsvector @@ tsquery',
9791 proname
=> 'tsmatchsel', provolatile
=> 's', prorettype
=> 'float8',
9792 proargtypes
=> 'internal oid internal int4', prosrc
=> 'tsmatchsel' },
9793 { oid
=> '3687', descr
=> 'join selectivity of tsvector @@ tsquery',
9794 proname
=> 'tsmatchjoinsel', provolatile
=> 's', prorettype
=> 'float8',
9795 proargtypes
=> 'internal oid internal int2 internal',
9796 prosrc
=> 'tsmatchjoinsel' },
9797 { oid
=> '3688', descr
=> 'tsvector typanalyze',
9798 proname
=> 'ts_typanalyze', provolatile
=> 's', prorettype
=> 'bool',
9799 proargtypes
=> 'internal', prosrc
=> 'ts_typanalyze' },
9801 { oid
=> '3689', descr
=> 'statistics of tsvector column',
9802 proname
=> 'ts_stat', procost
=> '10', prorows
=> '10000', proretset
=> 't',
9803 provolatile
=> 'v', proparallel
=> 'u', prorettype
=> 'record',
9804 proargtypes
=> 'text', proallargtypes
=> '{text,text,int4,int4}',
9805 proargmodes
=> '{i,o,o,o}', proargnames
=> '{query,word,ndoc,nentry}',
9806 prosrc
=> 'ts_stat1' },
9807 { oid
=> '3690', descr
=> 'statistics of tsvector column',
9808 proname
=> 'ts_stat', procost
=> '10', prorows
=> '10000', proretset
=> 't',
9809 provolatile
=> 'v', proparallel
=> 'u', prorettype
=> 'record',
9810 proargtypes
=> 'text text', proallargtypes
=> '{text,text,text,int4,int4}',
9811 proargmodes
=> '{i,i,o,o,o}',
9812 proargnames
=> '{query,weights,word,ndoc,nentry}', prosrc
=> 'ts_stat2' },
9814 { oid
=> '3703', descr
=> 'relevance',
9815 proname
=> 'ts_rank', prorettype
=> 'float4',
9816 proargtypes
=> '_float4 tsvector tsquery int4', prosrc
=> 'ts_rank_wttf' },
9817 { oid
=> '3704', descr
=> 'relevance',
9818 proname
=> 'ts_rank', prorettype
=> 'float4',
9819 proargtypes
=> '_float4 tsvector tsquery', prosrc
=> 'ts_rank_wtt' },
9820 { oid
=> '3705', descr
=> 'relevance',
9821 proname
=> 'ts_rank', prorettype
=> 'float4',
9822 proargtypes
=> 'tsvector tsquery int4', prosrc
=> 'ts_rank_ttf' },
9823 { oid
=> '3706', descr
=> 'relevance',
9824 proname
=> 'ts_rank', prorettype
=> 'float4',
9825 proargtypes
=> 'tsvector tsquery', prosrc
=> 'ts_rank_tt' },
9826 { oid
=> '3707', descr
=> 'relevance',
9827 proname
=> 'ts_rank_cd', prorettype
=> 'float4',
9828 proargtypes
=> '_float4 tsvector tsquery int4', prosrc
=> 'ts_rankcd_wttf' },
9829 { oid
=> '3708', descr
=> 'relevance',
9830 proname
=> 'ts_rank_cd', prorettype
=> 'float4',
9831 proargtypes
=> '_float4 tsvector tsquery', prosrc
=> 'ts_rankcd_wtt' },
9832 { oid
=> '3709', descr
=> 'relevance',
9833 proname
=> 'ts_rank_cd', prorettype
=> 'float4',
9834 proargtypes
=> 'tsvector tsquery int4', prosrc
=> 'ts_rankcd_ttf' },
9835 { oid
=> '3710', descr
=> 'relevance',
9836 proname
=> 'ts_rank_cd', prorettype
=> 'float4',
9837 proargtypes
=> 'tsvector tsquery', prosrc
=> 'ts_rankcd_tt' },
9839 { oid
=> '3713', descr
=> 'get parser\'s token types',
9840 proname
=> 'ts_token_type', prorows
=> '16', proretset
=> 't',
9841 prorettype
=> 'record', proargtypes
=> 'oid',
9842 proallargtypes
=> '{oid,int4,text,text}', proargmodes
=> '{i,o,o,o}',
9843 proargnames
=> '{parser_oid,tokid,alias,description}',
9844 prosrc
=> 'ts_token_type_byid' },
9845 { oid
=> '3714', descr
=> 'get parser\'s token types',
9846 proname
=> 'ts_token_type', prorows
=> '16', proretset
=> 't',
9847 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> 'text',
9848 proallargtypes
=> '{text,int4,text,text}', proargmodes
=> '{i,o,o,o}',
9849 proargnames
=> '{parser_name,tokid,alias,description}',
9850 prosrc
=> 'ts_token_type_byname' },
9851 { oid
=> '3715', descr
=> 'parse text to tokens',
9852 proname
=> 'ts_parse', prorows
=> '1000', proretset
=> 't',
9853 prorettype
=> 'record', proargtypes
=> 'oid text',
9854 proallargtypes
=> '{oid,text,int4,text}', proargmodes
=> '{i,i,o,o}',
9855 proargnames
=> '{parser_oid,txt,tokid,token}', prosrc
=> 'ts_parse_byid' },
9856 { oid
=> '3716', descr
=> 'parse text to tokens',
9857 proname
=> 'ts_parse', prorows
=> '1000', proretset
=> 't',
9858 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> 'text text',
9859 proallargtypes
=> '{text,text,int4,text}', proargmodes
=> '{i,i,o,o}',
9860 proargnames
=> '{parser_name,txt,tokid,token}', prosrc
=> 'ts_parse_byname' },
9862 { oid
=> '3717', descr
=> '(internal)',
9863 proname
=> 'prsd_start', prorettype
=> 'internal',
9864 proargtypes
=> 'internal int4', prosrc
=> 'prsd_start' },
9865 { oid
=> '3718', descr
=> '(internal)',
9866 proname
=> 'prsd_nexttoken', prorettype
=> 'internal',
9867 proargtypes
=> 'internal internal internal', prosrc
=> 'prsd_nexttoken' },
9868 { oid
=> '3719', descr
=> '(internal)',
9869 proname
=> 'prsd_end', prorettype
=> 'void', proargtypes
=> 'internal',
9870 prosrc
=> 'prsd_end' },
9871 { oid
=> '3720', descr
=> '(internal)',
9872 proname
=> 'prsd_headline', prorettype
=> 'internal',
9873 proargtypes
=> 'internal internal tsquery', prosrc
=> 'prsd_headline' },
9874 { oid
=> '3721', descr
=> '(internal)',
9875 proname
=> 'prsd_lextype', prorettype
=> 'internal',
9876 proargtypes
=> 'internal', prosrc
=> 'prsd_lextype' },
9878 { oid
=> '3723', descr
=> 'normalize one word by dictionary',
9879 proname
=> 'ts_lexize', prorettype
=> '_text',
9880 proargtypes
=> 'regdictionary text', prosrc
=> 'ts_lexize' },
9882 { oid
=> '6183', descr
=> 'debug function for text search configuration',
9883 proname
=> 'ts_debug', prolang
=> 'sql', prorows
=> '1000', proretset
=> 't',
9884 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> 'regconfig text',
9885 proallargtypes
=> '{regconfig,text,text,text,text,_regdictionary,regdictionary,_text}',
9886 proargmodes
=> '{i,i,o,o,o,o,o,o}',
9887 proargnames
=> '{config,document,alias,description,token,dictionaries,dictionary,lexemes}',
9888 prosrc
=> 'see system_functions.sql' },
9891 descr
=> 'debug function for current text search configuration',
9892 proname
=> 'ts_debug', prolang
=> 'sql', prorows
=> '1000', proretset
=> 't',
9893 provolatile
=> 's', prorettype
=> 'record', proargtypes
=> 'text',
9894 proallargtypes
=> '{text,text,text,text,_regdictionary,regdictionary,_text}',
9895 proargmodes
=> '{i,o,o,o,o,o,o}',
9896 proargnames
=> '{document,alias,description,token,dictionaries,dictionary,lexemes}',
9897 prosrc
=> 'see system_functions.sql' },
9899 { oid
=> '3725', descr
=> '(internal)',
9900 proname
=> 'dsimple_init', prorettype
=> 'internal',
9901 proargtypes
=> 'internal', prosrc
=> 'dsimple_init' },
9902 { oid
=> '3726', descr
=> '(internal)',
9903 proname
=> 'dsimple_lexize', prorettype
=> 'internal',
9904 proargtypes
=> 'internal internal internal internal',
9905 prosrc
=> 'dsimple_lexize' },
9907 { oid
=> '3728', descr
=> '(internal)',
9908 proname
=> 'dsynonym_init', prorettype
=> 'internal',
9909 proargtypes
=> 'internal', prosrc
=> 'dsynonym_init' },
9910 { oid
=> '3729', descr
=> '(internal)',
9911 proname
=> 'dsynonym_lexize', prorettype
=> 'internal',
9912 proargtypes
=> 'internal internal internal internal',
9913 prosrc
=> 'dsynonym_lexize' },
9915 { oid
=> '3731', descr
=> '(internal)',
9916 proname
=> 'dispell_init', prorettype
=> 'internal',
9917 proargtypes
=> 'internal', prosrc
=> 'dispell_init' },
9918 { oid
=> '3732', descr
=> '(internal)',
9919 proname
=> 'dispell_lexize', prorettype
=> 'internal',
9920 proargtypes
=> 'internal internal internal internal',
9921 prosrc
=> 'dispell_lexize' },
9923 { oid
=> '3740', descr
=> '(internal)',
9924 proname
=> 'thesaurus_init', prorettype
=> 'internal',
9925 proargtypes
=> 'internal', prosrc
=> 'thesaurus_init' },
9926 { oid
=> '3741', descr
=> '(internal)',
9927 proname
=> 'thesaurus_lexize', prorettype
=> 'internal',
9928 proargtypes
=> 'internal internal internal internal',
9929 prosrc
=> 'thesaurus_lexize' },
9931 { oid
=> '3743', descr
=> 'generate headline',
9932 proname
=> 'ts_headline', procost
=> '100', prorettype
=> 'text',
9933 proargtypes
=> 'regconfig text tsquery text',
9934 prosrc
=> 'ts_headline_byid_opt' },
9935 { oid
=> '3744', descr
=> 'generate headline',
9936 proname
=> 'ts_headline', procost
=> '100', prorettype
=> 'text',
9937 proargtypes
=> 'regconfig text tsquery', prosrc
=> 'ts_headline_byid' },
9938 { oid
=> '3754', descr
=> 'generate headline',
9939 proname
=> 'ts_headline', procost
=> '100', provolatile
=> 's',
9940 prorettype
=> 'text', proargtypes
=> 'text tsquery text',
9941 prosrc
=> 'ts_headline_opt' },
9942 { oid
=> '3755', descr
=> 'generate headline',
9943 proname
=> 'ts_headline', procost
=> '100', provolatile
=> 's',
9944 prorettype
=> 'text', proargtypes
=> 'text tsquery',
9945 prosrc
=> 'ts_headline' },
9947 { oid
=> '4201', descr
=> 'generate headline from jsonb',
9948 proname
=> 'ts_headline', procost
=> '100', prorettype
=> 'jsonb',
9949 proargtypes
=> 'regconfig jsonb tsquery text',
9950 prosrc
=> 'ts_headline_jsonb_byid_opt' },
9951 { oid
=> '4202', descr
=> 'generate headline from jsonb',
9952 proname
=> 'ts_headline', procost
=> '100', prorettype
=> 'jsonb',
9953 proargtypes
=> 'regconfig jsonb tsquery',
9954 prosrc
=> 'ts_headline_jsonb_byid' },
9955 { oid
=> '4203', descr
=> 'generate headline from jsonb',
9956 proname
=> 'ts_headline', procost
=> '100', provolatile
=> 's',
9957 prorettype
=> 'jsonb', proargtypes
=> 'jsonb tsquery text',
9958 prosrc
=> 'ts_headline_jsonb_opt' },
9959 { oid
=> '4204', descr
=> 'generate headline from jsonb',
9960 proname
=> 'ts_headline', procost
=> '100', provolatile
=> 's',
9961 prorettype
=> 'jsonb', proargtypes
=> 'jsonb tsquery',
9962 prosrc
=> 'ts_headline_jsonb' },
9964 { oid
=> '4205', descr
=> 'generate headline from json',
9965 proname
=> 'ts_headline', procost
=> '100', prorettype
=> 'json',
9966 proargtypes
=> 'regconfig json tsquery text',
9967 prosrc
=> 'ts_headline_json_byid_opt' },
9968 { oid
=> '4206', descr
=> 'generate headline from json',
9969 proname
=> 'ts_headline', procost
=> '100', prorettype
=> 'json',
9970 proargtypes
=> 'regconfig json tsquery', prosrc
=> 'ts_headline_json_byid' },
9971 { oid
=> '4207', descr
=> 'generate headline from json',
9972 proname
=> 'ts_headline', procost
=> '100', provolatile
=> 's',
9973 prorettype
=> 'json', proargtypes
=> 'json tsquery text',
9974 prosrc
=> 'ts_headline_json_opt' },
9975 { oid
=> '4208', descr
=> 'generate headline from json',
9976 proname
=> 'ts_headline', procost
=> '100', provolatile
=> 's',
9977 prorettype
=> 'json', proargtypes
=> 'json tsquery',
9978 prosrc
=> 'ts_headline_json' },
9980 { oid
=> '3745', descr
=> 'transform to tsvector',
9981 proname
=> 'to_tsvector', procost
=> '100', prorettype
=> 'tsvector',
9982 proargtypes
=> 'regconfig text', prosrc
=> 'to_tsvector_byid' },
9983 { oid
=> '3746', descr
=> 'make tsquery',
9984 proname
=> 'to_tsquery', procost
=> '100', prorettype
=> 'tsquery',
9985 proargtypes
=> 'regconfig text', prosrc
=> 'to_tsquery_byid' },
9986 { oid
=> '3747', descr
=> 'transform to tsquery',
9987 proname
=> 'plainto_tsquery', procost
=> '100', prorettype
=> 'tsquery',
9988 proargtypes
=> 'regconfig text', prosrc
=> 'plainto_tsquery_byid' },
9989 { oid
=> '5006', descr
=> 'transform to tsquery',
9990 proname
=> 'phraseto_tsquery', procost
=> '100', prorettype
=> 'tsquery',
9991 proargtypes
=> 'regconfig text', prosrc
=> 'phraseto_tsquery_byid' },
9992 { oid
=> '5007', descr
=> 'transform to tsquery',
9993 proname
=> 'websearch_to_tsquery', procost
=> '100', prorettype
=> 'tsquery',
9994 proargtypes
=> 'regconfig text', prosrc
=> 'websearch_to_tsquery_byid' },
9995 { oid
=> '3749', descr
=> 'transform to tsvector',
9996 proname
=> 'to_tsvector', procost
=> '100', provolatile
=> 's',
9997 prorettype
=> 'tsvector', proargtypes
=> 'text', prosrc
=> 'to_tsvector' },
9998 { oid
=> '3750', descr
=> 'make tsquery',
9999 proname
=> 'to_tsquery', procost
=> '100', provolatile
=> 's',
10000 prorettype
=> 'tsquery', proargtypes
=> 'text', prosrc
=> 'to_tsquery' },
10001 { oid
=> '3751', descr
=> 'transform to tsquery',
10002 proname
=> 'plainto_tsquery', procost
=> '100', provolatile
=> 's',
10003 prorettype
=> 'tsquery', proargtypes
=> 'text', prosrc
=> 'plainto_tsquery' },
10004 { oid
=> '5001', descr
=> 'transform to tsquery',
10005 proname
=> 'phraseto_tsquery', procost
=> '100', provolatile
=> 's',
10006 prorettype
=> 'tsquery', proargtypes
=> 'text',
10007 prosrc
=> 'phraseto_tsquery' },
10008 { oid
=> '5009', descr
=> 'transform to tsquery',
10009 proname
=> 'websearch_to_tsquery', procost
=> '100', provolatile
=> 's',
10010 prorettype
=> 'tsquery', proargtypes
=> 'text',
10011 prosrc
=> 'websearch_to_tsquery' },
10012 { oid
=> '4209', descr
=> 'transform string values from jsonb to tsvector',
10013 proname
=> 'to_tsvector', procost
=> '100', provolatile
=> 's',
10014 prorettype
=> 'tsvector', proargtypes
=> 'jsonb',
10015 prosrc
=> 'jsonb_string_to_tsvector' },
10016 { oid
=> '4213', descr
=> 'transform specified values from jsonb to tsvector',
10017 proname
=> 'jsonb_to_tsvector', procost
=> '100', provolatile
=> 's',
10018 prorettype
=> 'tsvector', proargtypes
=> 'jsonb jsonb',
10019 prosrc
=> 'jsonb_to_tsvector' },
10020 { oid
=> '4210', descr
=> 'transform string values from json to tsvector',
10021 proname
=> 'to_tsvector', procost
=> '100', provolatile
=> 's',
10022 prorettype
=> 'tsvector', proargtypes
=> 'json',
10023 prosrc
=> 'json_string_to_tsvector' },
10024 { oid
=> '4215', descr
=> 'transform specified values from json to tsvector',
10025 proname
=> 'json_to_tsvector', procost
=> '100', provolatile
=> 's',
10026 prorettype
=> 'tsvector', proargtypes
=> 'json jsonb',
10027 prosrc
=> 'json_to_tsvector' },
10028 { oid
=> '4211', descr
=> 'transform string values from jsonb to tsvector',
10029 proname
=> 'to_tsvector', procost
=> '100', prorettype
=> 'tsvector',
10030 proargtypes
=> 'regconfig jsonb', prosrc
=> 'jsonb_string_to_tsvector_byid' },
10031 { oid
=> '4214', descr
=> 'transform specified values from jsonb to tsvector',
10032 proname
=> 'jsonb_to_tsvector', procost
=> '100', prorettype
=> 'tsvector',
10033 proargtypes
=> 'regconfig jsonb jsonb', prosrc
=> 'jsonb_to_tsvector_byid' },
10034 { oid
=> '4212', descr
=> 'transform string values from json to tsvector',
10035 proname
=> 'to_tsvector', procost
=> '100', prorettype
=> 'tsvector',
10036 proargtypes
=> 'regconfig json', prosrc
=> 'json_string_to_tsvector_byid' },
10037 { oid
=> '4216', descr
=> 'transform specified values from json to tsvector',
10038 proname
=> 'json_to_tsvector', procost
=> '100', prorettype
=> 'tsvector',
10039 proargtypes
=> 'regconfig json jsonb', prosrc
=> 'json_to_tsvector_byid' },
10041 { oid
=> '3752', descr
=> 'trigger for automatic update of tsvector column',
10042 proname
=> 'tsvector_update_trigger', proisstrict
=> 'f', provolatile
=> 'v',
10043 prorettype
=> 'trigger', proargtypes
=> '',
10044 prosrc
=> 'tsvector_update_trigger_byid' },
10045 { oid
=> '3753', descr
=> 'trigger for automatic update of tsvector column',
10046 proname
=> 'tsvector_update_trigger_column', proisstrict
=> 'f',
10047 provolatile
=> 'v', prorettype
=> 'trigger', proargtypes
=> '',
10048 prosrc
=> 'tsvector_update_trigger_bycolumn' },
10050 { oid
=> '3759', descr
=> 'get current tsearch configuration',
10051 proname
=> 'get_current_ts_config', provolatile
=> 's',
10052 prorettype
=> 'regconfig', proargtypes
=> '',
10053 prosrc
=> 'get_current_ts_config' },
10055 { oid
=> '3736', descr
=> 'I/O',
10056 proname
=> 'regconfigin', provolatile
=> 's', prorettype
=> 'regconfig',
10057 proargtypes
=> 'cstring', prosrc
=> 'regconfigin' },
10058 { oid
=> '3737', descr
=> 'I/O',
10059 proname
=> 'regconfigout', provolatile
=> 's', prorettype
=> 'cstring',
10060 proargtypes
=> 'regconfig', prosrc
=> 'regconfigout' },
10061 { oid
=> '3738', descr
=> 'I/O',
10062 proname
=> 'regconfigrecv', prorettype
=> 'regconfig',
10063 proargtypes
=> 'internal', prosrc
=> 'regconfigrecv' },
10064 { oid
=> '3739', descr
=> 'I/O',
10065 proname
=> 'regconfigsend', prorettype
=> 'bytea', proargtypes
=> 'regconfig',
10066 prosrc
=> 'regconfigsend' },
10068 { oid
=> '3771', descr
=> 'I/O',
10069 proname
=> 'regdictionaryin', provolatile
=> 's',
10070 prorettype
=> 'regdictionary', proargtypes
=> 'cstring',
10071 prosrc
=> 'regdictionaryin' },
10072 { oid
=> '3772', descr
=> 'I/O',
10073 proname
=> 'regdictionaryout', provolatile
=> 's', prorettype
=> 'cstring',
10074 proargtypes
=> 'regdictionary', prosrc
=> 'regdictionaryout' },
10075 { oid
=> '3773', descr
=> 'I/O',
10076 proname
=> 'regdictionaryrecv', prorettype
=> 'regdictionary',
10077 proargtypes
=> 'internal', prosrc
=> 'regdictionaryrecv' },
10078 { oid
=> '3774', descr
=> 'I/O',
10079 proname
=> 'regdictionarysend', prorettype
=> 'bytea',
10080 proargtypes
=> 'regdictionary', prosrc
=> 'regdictionarysend' },
10083 { oid
=> '3806', descr
=> 'I/O',
10084 proname
=> 'jsonb_in', prorettype
=> 'jsonb', proargtypes
=> 'cstring',
10085 prosrc
=> 'jsonb_in' },
10086 { oid
=> '3805', descr
=> 'I/O',
10087 proname
=> 'jsonb_recv', prorettype
=> 'jsonb', proargtypes
=> 'internal',
10088 prosrc
=> 'jsonb_recv' },
10089 { oid
=> '3804', descr
=> 'I/O',
10090 proname
=> 'jsonb_out', prorettype
=> 'cstring', proargtypes
=> 'jsonb',
10091 prosrc
=> 'jsonb_out' },
10092 { oid
=> '3803', descr
=> 'I/O',
10093 proname
=> 'jsonb_send', prorettype
=> 'bytea', proargtypes
=> 'jsonb',
10094 prosrc
=> 'jsonb_send' },
10096 { oid
=> '3263', descr
=> 'map text array of key value pairs to jsonb object',
10097 proname
=> 'jsonb_object', prorettype
=> 'jsonb', proargtypes
=> '_text',
10098 prosrc
=> 'jsonb_object' },
10099 { oid
=> '3264', descr
=> 'map text array of key value pairs to jsonb object',
10100 proname
=> 'jsonb_object', prorettype
=> 'jsonb',
10101 proargtypes
=> '_text _text', prosrc
=> 'jsonb_object_two_arg' },
10102 { oid
=> '3787', descr
=> 'map input to jsonb',
10103 proname
=> 'to_jsonb', provolatile
=> 's', prorettype
=> 'jsonb',
10104 proargtypes
=> 'anyelement', prosrc
=> 'to_jsonb' },
10105 { oid
=> '3265', descr
=> 'jsonb aggregate transition function',
10106 proname
=> 'jsonb_agg_transfn', proisstrict
=> 'f', provolatile
=> 's',
10107 prorettype
=> 'internal', proargtypes
=> 'internal anyelement',
10108 prosrc
=> 'jsonb_agg_transfn' },
10109 { oid
=> '6283', descr
=> 'jsonb aggregate transition function',
10110 proname
=> 'jsonb_agg_strict_transfn', proisstrict
=> 'f', provolatile
=> 's',
10111 prorettype
=> 'internal', proargtypes
=> 'internal anyelement',
10112 prosrc
=> 'jsonb_agg_strict_transfn' },
10113 { oid
=> '3266', descr
=> 'jsonb aggregate final function',
10114 proname
=> 'jsonb_agg_finalfn', proisstrict
=> 'f', provolatile
=> 's',
10115 prorettype
=> 'jsonb', proargtypes
=> 'internal',
10116 prosrc
=> 'jsonb_agg_finalfn' },
10117 { oid
=> '3267', descr
=> 'aggregate input into jsonb',
10118 proname
=> 'jsonb_agg', prokind
=> 'a', proisstrict
=> 'f',
10119 provolatile
=> 's', prorettype
=> 'jsonb', proargtypes
=> 'anyelement',
10120 prosrc
=> 'aggregate_dummy' },
10121 { oid
=> '6284', descr
=> 'aggregate input into jsonb skipping nulls',
10122 proname
=> 'jsonb_agg_strict', prokind
=> 'a', proisstrict
=> 'f',
10123 provolatile
=> 's', prorettype
=> 'jsonb', proargtypes
=> 'anyelement',
10124 prosrc
=> 'aggregate_dummy' },
10125 { oid
=> '3268', descr
=> 'jsonb object aggregate transition function',
10126 proname
=> 'jsonb_object_agg_transfn', proisstrict
=> 'f', provolatile
=> 's',
10127 prorettype
=> 'internal', proargtypes
=> 'internal any any',
10128 prosrc
=> 'jsonb_object_agg_transfn' },
10129 { oid
=> '6285', descr
=> 'jsonb object aggregate transition function',
10130 proname
=> 'jsonb_object_agg_strict_transfn', proisstrict
=> 'f',
10131 provolatile
=> 's', prorettype
=> 'internal',
10132 proargtypes
=> 'internal any any',
10133 prosrc
=> 'jsonb_object_agg_strict_transfn' },
10134 { oid
=> '6286', descr
=> 'jsonb object aggregate transition function',
10135 proname
=> 'jsonb_object_agg_unique_transfn', proisstrict
=> 'f',
10136 provolatile
=> 's', prorettype
=> 'internal',
10137 proargtypes
=> 'internal any any',
10138 prosrc
=> 'jsonb_object_agg_unique_transfn' },
10139 { oid
=> '6287', descr
=> 'jsonb object aggregate transition function',
10140 proname
=> 'jsonb_object_agg_unique_strict_transfn', proisstrict
=> 'f',
10141 provolatile
=> 's', prorettype
=> 'internal',
10142 proargtypes
=> 'internal any any',
10143 prosrc
=> 'jsonb_object_agg_unique_strict_transfn' },
10144 { oid
=> '3269', descr
=> 'jsonb object aggregate final function',
10145 proname
=> 'jsonb_object_agg_finalfn', proisstrict
=> 'f', provolatile
=> 's',
10146 prorettype
=> 'jsonb', proargtypes
=> 'internal',
10147 prosrc
=> 'jsonb_object_agg_finalfn' },
10148 { oid
=> '3270', descr
=> 'aggregate inputs into jsonb object',
10149 proname
=> 'jsonb_object_agg', prokind
=> 'a', proisstrict
=> 'f',
10150 prorettype
=> 'jsonb', proargtypes
=> 'any any', proargnames
=> '{key,value}',
10151 prosrc
=> 'aggregate_dummy' },
10152 { oid
=> '6288', descr
=> 'aggregate non-NULL inputs into jsonb object',
10153 proname
=> 'jsonb_object_agg_strict', prokind
=> 'a', proisstrict
=> 'f',
10154 prorettype
=> 'jsonb', proargtypes
=> 'any any', proargnames
=> '{key,value}',
10155 prosrc
=> 'aggregate_dummy' },
10157 descr
=> 'aggregate inputs into jsonb object checking key uniqueness',
10158 proname
=> 'jsonb_object_agg_unique', prokind
=> 'a', proisstrict
=> 'f',
10159 prorettype
=> 'jsonb', proargtypes
=> 'any any', proargnames
=> '{key,value}',
10160 prosrc
=> 'aggregate_dummy' },
10162 descr
=> 'aggregate non-NULL inputs into jsonb object checking key uniqueness',
10163 proname
=> 'jsonb_object_agg_unique_strict', prokind
=> 'a',
10164 proisstrict
=> 'f', prorettype
=> 'jsonb', proargtypes
=> 'any any',
10165 proargnames
=> '{key,value}', prosrc
=> 'aggregate_dummy' },
10166 { oid
=> '3271', descr
=> 'build a jsonb array from any inputs',
10167 proname
=> 'jsonb_build_array', provariadic
=> 'any', proisstrict
=> 'f',
10168 provolatile
=> 's', prorettype
=> 'jsonb', proargtypes
=> 'any',
10169 proallargtypes
=> '{any}', proargmodes
=> '{v}',
10170 prosrc
=> 'jsonb_build_array' },
10171 { oid
=> '3272', descr
=> 'build an empty jsonb array',
10172 proname
=> 'jsonb_build_array', proisstrict
=> 'f', provolatile
=> 's',
10173 prorettype
=> 'jsonb', proargtypes
=> '',
10174 prosrc
=> 'jsonb_build_array_noargs' },
10176 descr
=> 'build a jsonb object from pairwise key/value inputs',
10177 proname
=> 'jsonb_build_object', provariadic
=> 'any', proisstrict
=> 'f',
10178 provolatile
=> 's', prorettype
=> 'jsonb', proargtypes
=> 'any',
10179 proallargtypes
=> '{any}', proargmodes
=> '{v}',
10180 prosrc
=> 'jsonb_build_object' },
10181 { oid
=> '3274', descr
=> 'build an empty jsonb object',
10182 proname
=> 'jsonb_build_object', proisstrict
=> 'f', provolatile
=> 's',
10183 prorettype
=> 'jsonb', proargtypes
=> '',
10184 prosrc
=> 'jsonb_build_object_noargs' },
10185 { oid
=> '3262', descr
=> 'remove object fields with null values from jsonb',
10186 proname
=> 'jsonb_strip_nulls', prorettype
=> 'jsonb', proargtypes
=> 'jsonb',
10187 prosrc
=> 'jsonb_strip_nulls' },
10190 proname
=> 'jsonb_object_field', prorettype
=> 'jsonb',
10191 proargtypes
=> 'jsonb text', proargnames
=> '{from_json, field_name}',
10192 prosrc
=> 'jsonb_object_field' },
10194 proname
=> 'jsonb_object_field_text', prorettype
=> 'text',
10195 proargtypes
=> 'jsonb text', proargnames
=> '{from_json, field_name}',
10196 prosrc
=> 'jsonb_object_field_text' },
10198 proname
=> 'jsonb_array_element', prorettype
=> 'jsonb',
10199 proargtypes
=> 'jsonb int4', proargnames
=> '{from_json, element_index}',
10200 prosrc
=> 'jsonb_array_element' },
10202 proname
=> 'jsonb_array_element_text', prorettype
=> 'text',
10203 proargtypes
=> 'jsonb int4', proargnames
=> '{from_json, element_index}',
10204 prosrc
=> 'jsonb_array_element_text' },
10205 { oid
=> '3217', descr
=> 'get value from jsonb with path elements',
10206 proname
=> 'jsonb_extract_path', provariadic
=> 'text', prorettype
=> 'jsonb',
10207 proargtypes
=> 'jsonb _text', proallargtypes
=> '{jsonb,_text}',
10208 proargmodes
=> '{i,v}', proargnames
=> '{from_json,path_elems}',
10209 prosrc
=> 'jsonb_extract_path' },
10210 { oid
=> '3940', descr
=> 'get value from jsonb as text with path elements',
10211 proname
=> 'jsonb_extract_path_text', provariadic
=> 'text',
10212 prorettype
=> 'text', proargtypes
=> 'jsonb _text',
10213 proallargtypes
=> '{jsonb,_text}', proargmodes
=> '{i,v}',
10214 proargnames
=> '{from_json,path_elems}',
10215 prosrc
=> 'jsonb_extract_path_text' },
10216 { oid
=> '3219', descr
=> 'elements of a jsonb array',
10217 proname
=> 'jsonb_array_elements', prorows
=> '100', proretset
=> 't',
10218 prorettype
=> 'jsonb', proargtypes
=> 'jsonb',
10219 proallargtypes
=> '{jsonb,jsonb}', proargmodes
=> '{i,o}',
10220 proargnames
=> '{from_json,value}', prosrc
=> 'jsonb_array_elements' },
10221 { oid
=> '3465', descr
=> 'elements of jsonb array',
10222 proname
=> 'jsonb_array_elements_text', prorows
=> '100', proretset
=> 't',
10223 prorettype
=> 'text', proargtypes
=> 'jsonb',
10224 proallargtypes
=> '{jsonb,text}', proargmodes
=> '{i,o}',
10225 proargnames
=> '{from_json,value}', prosrc
=> 'jsonb_array_elements_text' },
10226 { oid
=> '3207', descr
=> 'length of jsonb array',
10227 proname
=> 'jsonb_array_length', prorettype
=> 'int4', proargtypes
=> 'jsonb',
10228 prosrc
=> 'jsonb_array_length' },
10229 { oid
=> '3931', descr
=> 'get jsonb object keys',
10230 proname
=> 'jsonb_object_keys', prorows
=> '100', proretset
=> 't',
10231 prorettype
=> 'text', proargtypes
=> 'jsonb', prosrc
=> 'jsonb_object_keys' },
10232 { oid
=> '3208', descr
=> 'key value pairs of a jsonb object',
10233 proname
=> 'jsonb_each', prorows
=> '100', proretset
=> 't',
10234 prorettype
=> 'record', proargtypes
=> 'jsonb',
10235 proallargtypes
=> '{jsonb,text,jsonb}', proargmodes
=> '{i,o,o}',
10236 proargnames
=> '{from_json,key,value}', prosrc
=> 'jsonb_each' },
10237 { oid
=> '3932', descr
=> 'key value pairs of a jsonb object',
10238 proname
=> 'jsonb_each_text', prorows
=> '100', proretset
=> 't',
10239 prorettype
=> 'record', proargtypes
=> 'jsonb',
10240 proallargtypes
=> '{jsonb,text,text}', proargmodes
=> '{i,o,o}',
10241 proargnames
=> '{from_json,key,value}', prosrc
=> 'jsonb_each_text' },
10242 { oid
=> '3209', descr
=> 'get record fields from a jsonb object',
10243 proname
=> 'jsonb_populate_record', proisstrict
=> 'f', provolatile
=> 's',
10244 prorettype
=> 'anyelement', proargtypes
=> 'anyelement jsonb',
10245 prosrc
=> 'jsonb_populate_record' },
10246 { oid
=> '6338', descr
=> 'test get record fields from a jsonb object',
10247 proname
=> 'jsonb_populate_record_valid', proisstrict
=> 'f',
10248 provolatile
=> 's', prorettype
=> 'bool', proargtypes
=> 'anyelement jsonb',
10249 prosrc
=> 'jsonb_populate_record_valid' },
10251 descr
=> 'get set of records with fields from a jsonb array of objects',
10252 proname
=> 'jsonb_populate_recordset', prorows
=> '100', proisstrict
=> 'f',
10253 proretset
=> 't', provolatile
=> 's', prorettype
=> 'anyelement',
10254 proargtypes
=> 'anyelement jsonb', prosrc
=> 'jsonb_populate_recordset' },
10255 { oid
=> '3490', descr
=> 'get record fields from a jsonb object',
10256 proname
=> 'jsonb_to_record', provolatile
=> 's', prorettype
=> 'record',
10257 proargtypes
=> 'jsonb', prosrc
=> 'jsonb_to_record' },
10259 descr
=> 'get set of records with fields from a jsonb array of objects',
10260 proname
=> 'jsonb_to_recordset', prorows
=> '100', proisstrict
=> 'f',
10261 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
10262 proargtypes
=> 'jsonb', prosrc
=> 'jsonb_to_recordset' },
10263 { oid
=> '3210', descr
=> 'get the type of a jsonb value',
10264 proname
=> 'jsonb_typeof', prorettype
=> 'text', proargtypes
=> 'jsonb',
10265 prosrc
=> 'jsonb_typeof' },
10267 proname
=> 'jsonb_ne', prorettype
=> 'bool', proargtypes
=> 'jsonb jsonb',
10268 prosrc
=> 'jsonb_ne' },
10270 proname
=> 'jsonb_lt', prorettype
=> 'bool', proargtypes
=> 'jsonb jsonb',
10271 prosrc
=> 'jsonb_lt' },
10273 proname
=> 'jsonb_gt', prorettype
=> 'bool', proargtypes
=> 'jsonb jsonb',
10274 prosrc
=> 'jsonb_gt' },
10276 proname
=> 'jsonb_le', prorettype
=> 'bool', proargtypes
=> 'jsonb jsonb',
10277 prosrc
=> 'jsonb_le' },
10279 proname
=> 'jsonb_ge', prorettype
=> 'bool', proargtypes
=> 'jsonb jsonb',
10280 prosrc
=> 'jsonb_ge' },
10282 proname
=> 'jsonb_eq', prorettype
=> 'bool', proargtypes
=> 'jsonb jsonb',
10283 prosrc
=> 'jsonb_eq' },
10284 { oid
=> '4044', descr
=> 'less-equal-greater',
10285 proname
=> 'jsonb_cmp', prorettype
=> 'int4', proargtypes
=> 'jsonb jsonb',
10286 prosrc
=> 'jsonb_cmp' },
10287 { oid
=> '4045', descr
=> 'hash',
10288 proname
=> 'jsonb_hash', prorettype
=> 'int4', proargtypes
=> 'jsonb',
10289 prosrc
=> 'jsonb_hash' },
10290 { oid
=> '3416', descr
=> 'hash',
10291 proname
=> 'jsonb_hash_extended', prorettype
=> 'int8',
10292 proargtypes
=> 'jsonb int8', prosrc
=> 'jsonb_hash_extended' },
10294 proname
=> 'jsonb_contains', prorettype
=> 'bool',
10295 proargtypes
=> 'jsonb jsonb', prosrc
=> 'jsonb_contains' },
10297 proname
=> 'jsonb_exists', prorettype
=> 'bool', proargtypes
=> 'jsonb text',
10298 prosrc
=> 'jsonb_exists' },
10300 proname
=> 'jsonb_exists_any', prorettype
=> 'bool',
10301 proargtypes
=> 'jsonb _text', prosrc
=> 'jsonb_exists_any' },
10303 proname
=> 'jsonb_exists_all', prorettype
=> 'bool',
10304 proargtypes
=> 'jsonb _text', prosrc
=> 'jsonb_exists_all' },
10306 proname
=> 'jsonb_contained', prorettype
=> 'bool',
10307 proargtypes
=> 'jsonb jsonb', prosrc
=> 'jsonb_contained' },
10308 { oid
=> '3480', descr
=> 'GIN support',
10309 proname
=> 'gin_compare_jsonb', prorettype
=> 'int4',
10310 proargtypes
=> 'text text', prosrc
=> 'gin_compare_jsonb' },
10311 { oid
=> '3482', descr
=> 'GIN support',
10312 proname
=> 'gin_extract_jsonb', prorettype
=> 'internal',
10313 proargtypes
=> 'jsonb internal internal', prosrc
=> 'gin_extract_jsonb' },
10314 { oid
=> '3483', descr
=> 'GIN support',
10315 proname
=> 'gin_extract_jsonb_query', prorettype
=> 'internal',
10316 proargtypes
=> 'jsonb internal int2 internal internal internal internal',
10317 prosrc
=> 'gin_extract_jsonb_query' },
10318 { oid
=> '3484', descr
=> 'GIN support',
10319 proname
=> 'gin_consistent_jsonb', prorettype
=> 'bool',
10320 proargtypes
=> 'internal int2 jsonb int4 internal internal internal internal',
10321 prosrc
=> 'gin_consistent_jsonb' },
10322 { oid
=> '3488', descr
=> 'GIN support',
10323 proname
=> 'gin_triconsistent_jsonb', prorettype
=> 'char',
10324 proargtypes
=> 'internal int2 jsonb int4 internal internal internal',
10325 prosrc
=> 'gin_triconsistent_jsonb' },
10326 { oid
=> '3485', descr
=> 'GIN support',
10327 proname
=> 'gin_extract_jsonb_path', prorettype
=> 'internal',
10328 proargtypes
=> 'jsonb internal internal',
10329 prosrc
=> 'gin_extract_jsonb_path' },
10330 { oid
=> '3486', descr
=> 'GIN support',
10331 proname
=> 'gin_extract_jsonb_query_path', prorettype
=> 'internal',
10332 proargtypes
=> 'jsonb internal int2 internal internal internal internal',
10333 prosrc
=> 'gin_extract_jsonb_query_path' },
10334 { oid
=> '3487', descr
=> 'GIN support',
10335 proname
=> 'gin_consistent_jsonb_path', prorettype
=> 'bool',
10336 proargtypes
=> 'internal int2 jsonb int4 internal internal internal internal',
10337 prosrc
=> 'gin_consistent_jsonb_path' },
10338 { oid
=> '3489', descr
=> 'GIN support',
10339 proname
=> 'gin_triconsistent_jsonb_path', prorettype
=> 'char',
10340 proargtypes
=> 'internal int2 jsonb int4 internal internal internal',
10341 prosrc
=> 'gin_triconsistent_jsonb_path' },
10343 proname
=> 'jsonb_concat', prorettype
=> 'jsonb',
10344 proargtypes
=> 'jsonb jsonb', prosrc
=> 'jsonb_concat' },
10346 proname
=> 'jsonb_delete', prorettype
=> 'jsonb', proargtypes
=> 'jsonb text',
10347 prosrc
=> 'jsonb_delete' },
10349 proname
=> 'jsonb_delete', prorettype
=> 'jsonb', proargtypes
=> 'jsonb int4',
10350 prosrc
=> 'jsonb_delete_idx' },
10352 proname
=> 'jsonb_delete', provariadic
=> 'text', prorettype
=> 'jsonb',
10353 proargtypes
=> 'jsonb _text', proallargtypes
=> '{jsonb,_text}',
10354 proargmodes
=> '{i,v}', proargnames
=> '{from_json,path_elems}',
10355 prosrc
=> 'jsonb_delete_array' },
10357 proname
=> 'jsonb_delete_path', prorettype
=> 'jsonb',
10358 proargtypes
=> 'jsonb _text', prosrc
=> 'jsonb_delete_path' },
10359 { oid
=> '5054', descr
=> 'Set part of a jsonb, handle NULL value',
10360 proname
=> 'jsonb_set_lax', proisstrict
=> 'f', prorettype
=> 'jsonb',
10361 proargtypes
=> 'jsonb _text jsonb bool text', prosrc
=> 'jsonb_set_lax' },
10362 { oid
=> '3305', descr
=> 'Set part of a jsonb',
10363 proname
=> 'jsonb_set', prorettype
=> 'jsonb',
10364 proargtypes
=> 'jsonb _text jsonb bool', prosrc
=> 'jsonb_set' },
10365 { oid
=> '3306', descr
=> 'Indented text from jsonb',
10366 proname
=> 'jsonb_pretty', prorettype
=> 'text', proargtypes
=> 'jsonb',
10367 prosrc
=> 'jsonb_pretty' },
10368 { oid
=> '3579', descr
=> 'Insert value into a jsonb',
10369 proname
=> 'jsonb_insert', prorettype
=> 'jsonb',
10370 proargtypes
=> 'jsonb _text jsonb bool', prosrc
=> 'jsonb_insert' },
10373 { oid
=> '4001', descr
=> 'I/O',
10374 proname
=> 'jsonpath_in', prorettype
=> 'jsonpath', proargtypes
=> 'cstring',
10375 prosrc
=> 'jsonpath_in' },
10376 { oid
=> '4002', descr
=> 'I/O',
10377 proname
=> 'jsonpath_recv', prorettype
=> 'jsonpath',
10378 proargtypes
=> 'internal', prosrc
=> 'jsonpath_recv' },
10379 { oid
=> '4003', descr
=> 'I/O',
10380 proname
=> 'jsonpath_out', prorettype
=> 'cstring', proargtypes
=> 'jsonpath',
10381 prosrc
=> 'jsonpath_out' },
10382 { oid
=> '4004', descr
=> 'I/O',
10383 proname
=> 'jsonpath_send', prorettype
=> 'bytea', proargtypes
=> 'jsonpath',
10384 prosrc
=> 'jsonpath_send' },
10386 { oid
=> '4005', descr
=> 'jsonpath exists test',
10387 proname
=> 'jsonb_path_exists', prorettype
=> 'bool',
10388 proargtypes
=> 'jsonb jsonpath jsonb bool', prosrc
=> 'jsonb_path_exists' },
10389 { oid
=> '4006', descr
=> 'jsonpath query',
10390 proname
=> 'jsonb_path_query', prorows
=> '1000', proretset
=> 't',
10391 prorettype
=> 'jsonb', proargtypes
=> 'jsonb jsonpath jsonb bool',
10392 prosrc
=> 'jsonb_path_query' },
10393 { oid
=> '4007', descr
=> 'jsonpath query wrapped into array',
10394 proname
=> 'jsonb_path_query_array', prorettype
=> 'jsonb',
10395 proargtypes
=> 'jsonb jsonpath jsonb bool',
10396 prosrc
=> 'jsonb_path_query_array' },
10397 { oid
=> '4008', descr
=> 'jsonpath query first item',
10398 proname
=> 'jsonb_path_query_first', prorettype
=> 'jsonb',
10399 proargtypes
=> 'jsonb jsonpath jsonb bool',
10400 prosrc
=> 'jsonb_path_query_first' },
10401 { oid
=> '4009', descr
=> 'jsonpath match',
10402 proname
=> 'jsonb_path_match', prorettype
=> 'bool',
10403 proargtypes
=> 'jsonb jsonpath jsonb bool', prosrc
=> 'jsonb_path_match' },
10405 { oid
=> '1177', descr
=> 'jsonpath exists test with timezone',
10406 proname
=> 'jsonb_path_exists_tz', provolatile
=> 's', prorettype
=> 'bool',
10407 proargtypes
=> 'jsonb jsonpath jsonb bool',
10408 prosrc
=> 'jsonb_path_exists_tz' },
10409 { oid
=> '1179', descr
=> 'jsonpath query with timezone',
10410 proname
=> 'jsonb_path_query_tz', prorows
=> '1000', proretset
=> 't',
10411 provolatile
=> 's', prorettype
=> 'jsonb',
10412 proargtypes
=> 'jsonb jsonpath jsonb bool', prosrc
=> 'jsonb_path_query_tz' },
10413 { oid
=> '1180', descr
=> 'jsonpath query wrapped into array with timezone',
10414 proname
=> 'jsonb_path_query_array_tz', provolatile
=> 's',
10415 prorettype
=> 'jsonb', proargtypes
=> 'jsonb jsonpath jsonb bool',
10416 prosrc
=> 'jsonb_path_query_array_tz' },
10417 { oid
=> '2023', descr
=> 'jsonpath query first item with timezone',
10418 proname
=> 'jsonb_path_query_first_tz', provolatile
=> 's',
10419 prorettype
=> 'jsonb', proargtypes
=> 'jsonb jsonpath jsonb bool',
10420 prosrc
=> 'jsonb_path_query_first_tz' },
10421 { oid
=> '2030', descr
=> 'jsonpath match with timezone',
10422 proname
=> 'jsonb_path_match_tz', provolatile
=> 's', prorettype
=> 'bool',
10423 proargtypes
=> 'jsonb jsonpath jsonb bool', prosrc
=> 'jsonb_path_match_tz' },
10425 { oid
=> '4010', descr
=> 'implementation of @? operator',
10426 proname
=> 'jsonb_path_exists_opr', prorettype
=> 'bool',
10427 proargtypes
=> 'jsonb jsonpath', prosrc
=> 'jsonb_path_exists_opr' },
10428 { oid
=> '4011', descr
=> 'implementation of @@ operator',
10429 proname
=> 'jsonb_path_match_opr', prorettype
=> 'bool',
10430 proargtypes
=> 'jsonb jsonpath', prosrc
=> 'jsonb_path_match_opr' },
10432 # historical int8/txid_snapshot variants of xid8 functions
10433 { oid
=> '2939', descr
=> 'I/O',
10434 proname
=> 'txid_snapshot_in', prorettype
=> 'txid_snapshot',
10435 proargtypes
=> 'cstring', prosrc
=> 'pg_snapshot_in' },
10436 { oid
=> '2940', descr
=> 'I/O',
10437 proname
=> 'txid_snapshot_out', prorettype
=> 'cstring',
10438 proargtypes
=> 'txid_snapshot', prosrc
=> 'pg_snapshot_out' },
10439 { oid
=> '2941', descr
=> 'I/O',
10440 proname
=> 'txid_snapshot_recv', prorettype
=> 'txid_snapshot',
10441 proargtypes
=> 'internal', prosrc
=> 'pg_snapshot_recv' },
10442 { oid
=> '2942', descr
=> 'I/O',
10443 proname
=> 'txid_snapshot_send', prorettype
=> 'bytea',
10444 proargtypes
=> 'txid_snapshot', prosrc
=> 'pg_snapshot_send' },
10445 { oid
=> '2943', descr
=> 'get current transaction ID',
10446 proname
=> 'txid_current', provolatile
=> 's', proparallel
=> 'u',
10447 prorettype
=> 'int8', proargtypes
=> '', prosrc
=> 'pg_current_xact_id' },
10448 { oid
=> '3348', descr
=> 'get current transaction ID',
10449 proname
=> 'txid_current_if_assigned', provolatile
=> 's', proparallel
=> 'u',
10450 prorettype
=> 'int8', proargtypes
=> '',
10451 prosrc
=> 'pg_current_xact_id_if_assigned' },
10452 { oid
=> '2944', descr
=> 'get current snapshot',
10453 proname
=> 'txid_current_snapshot', provolatile
=> 's',
10454 prorettype
=> 'txid_snapshot', proargtypes
=> '',
10455 prosrc
=> 'pg_current_snapshot' },
10456 { oid
=> '2945', descr
=> 'get xmin of snapshot',
10457 proname
=> 'txid_snapshot_xmin', prorettype
=> 'int8',
10458 proargtypes
=> 'txid_snapshot', prosrc
=> 'pg_snapshot_xmin' },
10459 { oid
=> '2946', descr
=> 'get xmax of snapshot',
10460 proname
=> 'txid_snapshot_xmax', prorettype
=> 'int8',
10461 proargtypes
=> 'txid_snapshot', prosrc
=> 'pg_snapshot_xmax' },
10462 { oid
=> '2947', descr
=> 'get set of in-progress txids in snapshot',
10463 proname
=> 'txid_snapshot_xip', prorows
=> '50', proretset
=> 't',
10464 prorettype
=> 'int8', proargtypes
=> 'txid_snapshot',
10465 prosrc
=> 'pg_snapshot_xip' },
10466 { oid
=> '2948', descr
=> 'is txid visible in snapshot?',
10467 proname
=> 'txid_visible_in_snapshot', prorettype
=> 'bool',
10468 proargtypes
=> 'int8 txid_snapshot', prosrc
=> 'pg_visible_in_snapshot' },
10469 { oid
=> '3360', descr
=> 'commit status of transaction',
10470 proname
=> 'txid_status', provolatile
=> 'v', prorettype
=> 'text',
10471 proargtypes
=> 'int8', prosrc
=> 'pg_xact_status' },
10473 # pg_snapshot functions
10474 { oid
=> '5055', descr
=> 'I/O',
10475 proname
=> 'pg_snapshot_in', prorettype
=> 'pg_snapshot',
10476 proargtypes
=> 'cstring', prosrc
=> 'pg_snapshot_in' },
10477 { oid
=> '5056', descr
=> 'I/O',
10478 proname
=> 'pg_snapshot_out', prorettype
=> 'cstring',
10479 proargtypes
=> 'pg_snapshot', prosrc
=> 'pg_snapshot_out' },
10480 { oid
=> '5057', descr
=> 'I/O',
10481 proname
=> 'pg_snapshot_recv', prorettype
=> 'pg_snapshot',
10482 proargtypes
=> 'internal', prosrc
=> 'pg_snapshot_recv' },
10483 { oid
=> '5058', descr
=> 'I/O',
10484 proname
=> 'pg_snapshot_send', prorettype
=> 'bytea',
10485 proargtypes
=> 'pg_snapshot', prosrc
=> 'pg_snapshot_send' },
10486 { oid
=> '5061', descr
=> 'get current snapshot',
10487 proname
=> 'pg_current_snapshot', provolatile
=> 's',
10488 prorettype
=> 'pg_snapshot', proargtypes
=> '',
10489 prosrc
=> 'pg_current_snapshot' },
10490 { oid
=> '5062', descr
=> 'get xmin of snapshot',
10491 proname
=> 'pg_snapshot_xmin', prorettype
=> 'xid8',
10492 proargtypes
=> 'pg_snapshot', prosrc
=> 'pg_snapshot_xmin' },
10493 { oid
=> '5063', descr
=> 'get xmax of snapshot',
10494 proname
=> 'pg_snapshot_xmax', prorettype
=> 'xid8',
10495 proargtypes
=> 'pg_snapshot', prosrc
=> 'pg_snapshot_xmax' },
10496 { oid
=> '5064', descr
=> 'get set of in-progress transactions in snapshot',
10497 proname
=> 'pg_snapshot_xip', prorows
=> '50', proretset
=> 't',
10498 prorettype
=> 'xid8', proargtypes
=> 'pg_snapshot',
10499 prosrc
=> 'pg_snapshot_xip' },
10500 { oid
=> '5065', descr
=> 'is xid8 visible in snapshot?',
10501 proname
=> 'pg_visible_in_snapshot', prorettype
=> 'bool',
10502 proargtypes
=> 'xid8 pg_snapshot', prosrc
=> 'pg_visible_in_snapshot' },
10504 # transaction ID and status functions
10505 { oid
=> '5059', descr
=> 'get current transaction ID',
10506 proname
=> 'pg_current_xact_id', provolatile
=> 's', proparallel
=> 'u',
10507 prorettype
=> 'xid8', proargtypes
=> '', prosrc
=> 'pg_current_xact_id' },
10508 { oid
=> '5060', descr
=> 'get current transaction ID',
10509 proname
=> 'pg_current_xact_id_if_assigned', provolatile
=> 's',
10510 proparallel
=> 'u', prorettype
=> 'xid8', proargtypes
=> '',
10511 prosrc
=> 'pg_current_xact_id_if_assigned' },
10512 { oid
=> '5066', descr
=> 'commit status of transaction',
10513 proname
=> 'pg_xact_status', provolatile
=> 'v', prorettype
=> 'text',
10514 proargtypes
=> 'xid8', prosrc
=> 'pg_xact_status' },
10516 # record comparison using normal comparison rules
10518 proname
=> 'record_eq', prorettype
=> 'bool', proargtypes
=> 'record record',
10519 prosrc
=> 'record_eq' },
10521 proname
=> 'record_ne', prorettype
=> 'bool', proargtypes
=> 'record record',
10522 prosrc
=> 'record_ne' },
10524 proname
=> 'record_lt', prorettype
=> 'bool', proargtypes
=> 'record record',
10525 prosrc
=> 'record_lt' },
10527 proname
=> 'record_gt', prorettype
=> 'bool', proargtypes
=> 'record record',
10528 prosrc
=> 'record_gt' },
10530 proname
=> 'record_le', prorettype
=> 'bool', proargtypes
=> 'record record',
10531 prosrc
=> 'record_le' },
10533 proname
=> 'record_ge', prorettype
=> 'bool', proargtypes
=> 'record record',
10534 prosrc
=> 'record_ge' },
10535 { oid
=> '2987', descr
=> 'less-equal-greater',
10536 proname
=> 'btrecordcmp', prorettype
=> 'int4',
10537 proargtypes
=> 'record record', prosrc
=> 'btrecordcmp' },
10538 { oid
=> '8597', descr
=> 'larger of two',
10539 proname
=> 'record_larger', prorettype
=> 'record',
10540 proargtypes
=> 'record record', prosrc
=> 'record_larger' },
10541 { oid
=> '8598', descr
=> 'smaller of two',
10542 proname
=> 'record_smaller', prorettype
=> 'record',
10543 proargtypes
=> 'record record', prosrc
=> 'record_smaller' },
10545 { oid
=> '6192', descr
=> 'hash',
10546 proname
=> 'hash_record', prorettype
=> 'int4', proargtypes
=> 'record',
10547 prosrc
=> 'hash_record' },
10548 { oid
=> '6193', descr
=> 'hash',
10549 proname
=> 'hash_record_extended', prorettype
=> 'int8',
10550 proargtypes
=> 'record int8', prosrc
=> 'hash_record_extended' },
10552 # record comparison using raw byte images
10554 proname
=> 'record_image_eq', prorettype
=> 'bool',
10555 proargtypes
=> 'record record', prosrc
=> 'record_image_eq' },
10557 proname
=> 'record_image_ne', prorettype
=> 'bool',
10558 proargtypes
=> 'record record', prosrc
=> 'record_image_ne' },
10560 proname
=> 'record_image_lt', prorettype
=> 'bool',
10561 proargtypes
=> 'record record', prosrc
=> 'record_image_lt' },
10563 proname
=> 'record_image_gt', prorettype
=> 'bool',
10564 proargtypes
=> 'record record', prosrc
=> 'record_image_gt' },
10566 proname
=> 'record_image_le', prorettype
=> 'bool',
10567 proargtypes
=> 'record record', prosrc
=> 'record_image_le' },
10569 proname
=> 'record_image_ge', prorettype
=> 'bool',
10570 proargtypes
=> 'record record', prosrc
=> 'record_image_ge' },
10571 { oid
=> '3187', descr
=> 'less-equal-greater based on byte images',
10572 proname
=> 'btrecordimagecmp', prorettype
=> 'int4',
10573 proargtypes
=> 'record record', prosrc
=> 'btrecordimagecmp' },
10574 { oid
=> '5051', descr
=> 'equal image',
10575 proname
=> 'btequalimage', prorettype
=> 'bool', proargtypes
=> 'oid',
10576 prosrc
=> 'btequalimage' },
10579 { oid
=> '3082', descr
=> 'list available extensions',
10580 proname
=> 'pg_available_extensions', procost
=> '10', prorows
=> '100',
10581 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
10582 proargtypes
=> '', proallargtypes
=> '{name,text,text}',
10583 proargmodes
=> '{o,o,o}', proargnames
=> '{name,default_version,comment}',
10584 prosrc
=> 'pg_available_extensions' },
10585 { oid
=> '3083', descr
=> 'list available extension versions',
10586 proname
=> 'pg_available_extension_versions', procost
=> '10',
10587 prorows
=> '100', proretset
=> 't', provolatile
=> 's',
10588 prorettype
=> 'record', proargtypes
=> '',
10589 proallargtypes
=> '{name,text,bool,bool,bool,name,_name,text}',
10590 proargmodes
=> '{o,o,o,o,o,o,o,o}',
10591 proargnames
=> '{name,version,superuser,trusted,relocatable,schema,requires,comment}',
10592 prosrc
=> 'pg_available_extension_versions' },
10593 { oid
=> '3084', descr
=> 'list an extension\'s version update paths',
10594 proname
=> 'pg_extension_update_paths', procost
=> '10', prorows
=> '100',
10595 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
10596 proargtypes
=> 'name', proallargtypes
=> '{name,text,text,text}',
10597 proargmodes
=> '{i,o,o,o}', proargnames
=> '{name,source,target,path}',
10598 prosrc
=> 'pg_extension_update_paths' },
10600 descr
=> 'flag an extension\'s table contents to be emitted by pg_dump',
10601 proname
=> 'pg_extension_config_dump', provolatile
=> 'v', proparallel
=> 'u',
10602 prorettype
=> 'void', proargtypes
=> 'regclass text',
10603 prosrc
=> 'pg_extension_config_dump' },
10605 # SQL-spec window functions
10606 { oid
=> '3100', descr
=> 'row number within partition',
10607 proname
=> 'row_number', prosupport
=> 'window_row_number_support',
10608 prokind
=> 'w', proisstrict
=> 'f', prorettype
=> 'int8', proargtypes
=> '',
10609 prosrc
=> 'window_row_number' },
10610 { oid
=> '6233', descr
=> 'planner support for row_number',
10611 proname
=> 'window_row_number_support', prorettype
=> 'internal',
10612 proargtypes
=> 'internal', prosrc
=> 'window_row_number_support' },
10613 { oid
=> '3101', descr
=> 'integer rank with gaps',
10614 proname
=> 'rank', prosupport
=> 'window_rank_support', prokind
=> 'w',
10615 proisstrict
=> 'f', prorettype
=> 'int8', proargtypes
=> '',
10616 prosrc
=> 'window_rank' },
10617 { oid
=> '6234', descr
=> 'planner support for rank',
10618 proname
=> 'window_rank_support', prorettype
=> 'internal',
10619 proargtypes
=> 'internal', prosrc
=> 'window_rank_support' },
10620 { oid
=> '3102', descr
=> 'integer rank without gaps',
10621 proname
=> 'dense_rank', prosupport
=> 'window_dense_rank_support',
10622 prokind
=> 'w', proisstrict
=> 'f', prorettype
=> 'int8', proargtypes
=> '',
10623 prosrc
=> 'window_dense_rank' },
10624 { oid
=> '6235', descr
=> 'planner support for dense_rank',
10625 proname
=> 'window_dense_rank_support', prorettype
=> 'internal',
10626 proargtypes
=> 'internal', prosrc
=> 'window_dense_rank_support' },
10627 { oid
=> '3103', descr
=> 'fractional rank within partition',
10628 proname
=> 'percent_rank', prosupport
=> 'window_percent_rank_support',
10629 prokind
=> 'w', proisstrict
=> 'f', prorettype
=> 'float8', proargtypes
=> '',
10630 prosrc
=> 'window_percent_rank' },
10631 { oid
=> '6306', descr
=> 'planner support for percent_rank',
10632 proname
=> 'window_percent_rank_support', prorettype
=> 'internal',
10633 proargtypes
=> 'internal', prosrc
=> 'window_percent_rank_support' },
10634 { oid
=> '3104', descr
=> 'fractional row number within partition',
10635 proname
=> 'cume_dist', prosupport
=> 'window_cume_dist_support',
10636 prokind
=> 'w', proisstrict
=> 'f', prorettype
=> 'float8', proargtypes
=> '',
10637 prosrc
=> 'window_cume_dist' },
10638 { oid
=> '6307', descr
=> 'planner support for cume_dist',
10639 proname
=> 'window_cume_dist_support', prorettype
=> 'internal',
10640 proargtypes
=> 'internal', prosrc
=> 'window_cume_dist_support' },
10641 { oid
=> '3105', descr
=> 'split rows into N groups',
10642 proname
=> 'ntile', prosupport
=> 'window_ntile_support', prokind
=> 'w',
10643 prorettype
=> 'int4', proargtypes
=> 'int4', prosrc
=> 'window_ntile' },
10644 { oid
=> '6308', descr
=> 'planner support for ntile',
10645 proname
=> 'window_ntile_support', prorettype
=> 'internal',
10646 proargtypes
=> 'internal', prosrc
=> 'window_ntile_support' },
10647 { oid
=> '3106', descr
=> 'fetch the preceding row value',
10648 proname
=> 'lag', prokind
=> 'w', prorettype
=> 'anyelement',
10649 proargtypes
=> 'anyelement', prosrc
=> 'window_lag' },
10650 { oid
=> '3107', descr
=> 'fetch the Nth preceding row value',
10651 proname
=> 'lag', prokind
=> 'w', prorettype
=> 'anyelement',
10652 proargtypes
=> 'anyelement int4', prosrc
=> 'window_lag_with_offset' },
10653 { oid
=> '3108', descr
=> 'fetch the Nth preceding row value with default',
10654 proname
=> 'lag', prokind
=> 'w', prorettype
=> 'anycompatible',
10655 proargtypes
=> 'anycompatible int4 anycompatible',
10656 prosrc
=> 'window_lag_with_offset_and_default' },
10657 { oid
=> '3109', descr
=> 'fetch the following row value',
10658 proname
=> 'lead', prokind
=> 'w', prorettype
=> 'anyelement',
10659 proargtypes
=> 'anyelement', prosrc
=> 'window_lead' },
10660 { oid
=> '3110', descr
=> 'fetch the Nth following row value',
10661 proname
=> 'lead', prokind
=> 'w', prorettype
=> 'anyelement',
10662 proargtypes
=> 'anyelement int4', prosrc
=> 'window_lead_with_offset' },
10663 { oid
=> '3111', descr
=> 'fetch the Nth following row value with default',
10664 proname
=> 'lead', prokind
=> 'w', prorettype
=> 'anycompatible',
10665 proargtypes
=> 'anycompatible int4 anycompatible',
10666 prosrc
=> 'window_lead_with_offset_and_default' },
10667 { oid
=> '3112', descr
=> 'fetch the first row value',
10668 proname
=> 'first_value', prokind
=> 'w', prorettype
=> 'anyelement',
10669 proargtypes
=> 'anyelement', prosrc
=> 'window_first_value' },
10670 { oid
=> '3113', descr
=> 'fetch the last row value',
10671 proname
=> 'last_value', prokind
=> 'w', prorettype
=> 'anyelement',
10672 proargtypes
=> 'anyelement', prosrc
=> 'window_last_value' },
10673 { oid
=> '3114', descr
=> 'fetch the Nth row value',
10674 proname
=> 'nth_value', prokind
=> 'w', prorettype
=> 'anyelement',
10675 proargtypes
=> 'anyelement int4', prosrc
=> 'window_nth_value' },
10677 # functions for range types
10678 { oid
=> '3832', descr
=> 'I/O',
10679 proname
=> 'anyrange_in', provolatile
=> 's', prorettype
=> 'anyrange',
10680 proargtypes
=> 'cstring oid int4', prosrc
=> 'anyrange_in' },
10681 { oid
=> '3833', descr
=> 'I/O',
10682 proname
=> 'anyrange_out', provolatile
=> 's', prorettype
=> 'cstring',
10683 proargtypes
=> 'anyrange', prosrc
=> 'anyrange_out' },
10684 { oid
=> '3834', descr
=> 'I/O',
10685 proname
=> 'range_in', provolatile
=> 's', prorettype
=> 'anyrange',
10686 proargtypes
=> 'cstring oid int4', prosrc
=> 'range_in' },
10687 { oid
=> '3835', descr
=> 'I/O',
10688 proname
=> 'range_out', provolatile
=> 's', prorettype
=> 'cstring',
10689 proargtypes
=> 'anyrange', prosrc
=> 'range_out' },
10690 { oid
=> '3836', descr
=> 'I/O',
10691 proname
=> 'range_recv', provolatile
=> 's', prorettype
=> 'anyrange',
10692 proargtypes
=> 'internal oid int4', prosrc
=> 'range_recv' },
10693 { oid
=> '3837', descr
=> 'I/O',
10694 proname
=> 'range_send', provolatile
=> 's', prorettype
=> 'bytea',
10695 proargtypes
=> 'anyrange', prosrc
=> 'range_send' },
10696 { oid
=> '3848', descr
=> 'lower bound of range',
10697 proname
=> 'lower', prorettype
=> 'anyelement', proargtypes
=> 'anyrange',
10698 prosrc
=> 'range_lower' },
10699 { oid
=> '3849', descr
=> 'upper bound of range',
10700 proname
=> 'upper', prorettype
=> 'anyelement', proargtypes
=> 'anyrange',
10701 prosrc
=> 'range_upper' },
10702 { oid
=> '3850', descr
=> 'is the range empty?',
10703 proname
=> 'isempty', prorettype
=> 'bool', proargtypes
=> 'anyrange',
10704 prosrc
=> 'range_empty' },
10705 { oid
=> '3851', descr
=> 'is the range\'s lower bound inclusive?',
10706 proname
=> 'lower_inc', prorettype
=> 'bool', proargtypes
=> 'anyrange',
10707 prosrc
=> 'range_lower_inc' },
10708 { oid
=> '3852', descr
=> 'is the range\'s upper bound inclusive?',
10709 proname
=> 'upper_inc', prorettype
=> 'bool', proargtypes
=> 'anyrange',
10710 prosrc
=> 'range_upper_inc' },
10711 { oid
=> '3853', descr
=> 'is the range\'s lower bound infinite?',
10712 proname
=> 'lower_inf', prorettype
=> 'bool', proargtypes
=> 'anyrange',
10713 prosrc
=> 'range_lower_inf' },
10714 { oid
=> '3854', descr
=> 'is the range\'s upper bound infinite?',
10715 proname
=> 'upper_inf', prorettype
=> 'bool', proargtypes
=> 'anyrange',
10716 prosrc
=> 'range_upper_inf' },
10718 proname
=> 'range_eq', prorettype
=> 'bool',
10719 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_eq' },
10721 proname
=> 'range_ne', prorettype
=> 'bool',
10722 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_ne' },
10724 proname
=> 'range_overlaps', prorettype
=> 'bool',
10725 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_overlaps' },
10727 proname
=> 'range_contains_elem', prosupport
=> 'range_contains_elem_support',
10728 prorettype
=> 'bool', proargtypes
=> 'anyrange anyelement',
10729 prosrc
=> 'range_contains_elem' },
10731 proname
=> 'range_contains', prorettype
=> 'bool',
10732 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_contains' },
10734 proname
=> 'elem_contained_by_range',
10735 prosupport
=> 'elem_contained_by_range_support', prorettype
=> 'bool',
10736 proargtypes
=> 'anyelement anyrange', prosrc
=> 'elem_contained_by_range' },
10738 proname
=> 'range_contained_by', prorettype
=> 'bool',
10739 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_contained_by' },
10741 proname
=> 'range_adjacent', prorettype
=> 'bool',
10742 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_adjacent' },
10744 proname
=> 'range_before', prorettype
=> 'bool',
10745 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_before' },
10747 proname
=> 'range_after', prorettype
=> 'bool',
10748 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_after' },
10750 proname
=> 'range_overleft', prorettype
=> 'bool',
10751 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_overleft' },
10753 proname
=> 'range_overright', prorettype
=> 'bool',
10754 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_overright' },
10756 proname
=> 'range_union', prorettype
=> 'anyrange',
10757 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_union' },
10758 { oid
=> '6345', descr
=> 'planner support for range_contains_elem',
10759 proname
=> 'range_contains_elem_support', prorettype
=> 'internal',
10760 proargtypes
=> 'internal', prosrc
=> 'range_contains_elem_support' },
10761 { oid
=> '6346', descr
=> 'planner support for elem_contained_by_range',
10762 proname
=> 'elem_contained_by_range_support', prorettype
=> 'internal',
10763 proargtypes
=> 'internal', prosrc
=> 'elem_contained_by_range_support' },
10765 descr
=> 'the smallest range which includes both of the given ranges',
10766 proname
=> 'range_merge', prorettype
=> 'anyrange',
10767 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_merge' },
10769 descr
=> 'the smallest range which includes the whole multirange',
10770 proname
=> 'range_merge', prorettype
=> 'anyrange',
10771 proargtypes
=> 'anymultirange', prosrc
=> 'range_merge_from_multirange' },
10773 proname
=> 'range_intersect', prorettype
=> 'anyrange',
10774 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_intersect' },
10776 proname
=> 'range_minus', prorettype
=> 'anyrange',
10777 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_minus' },
10778 { oid
=> '3870', descr
=> 'less-equal-greater',
10779 proname
=> 'range_cmp', prorettype
=> 'int4',
10780 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_cmp' },
10782 proname
=> 'range_lt', prorettype
=> 'bool',
10783 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_lt' },
10785 proname
=> 'range_le', prorettype
=> 'bool',
10786 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_le' },
10788 proname
=> 'range_ge', prorettype
=> 'bool',
10789 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_ge' },
10791 proname
=> 'range_gt', prorettype
=> 'bool',
10792 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_gt' },
10793 { oid
=> '3875', descr
=> 'GiST support',
10794 proname
=> 'range_gist_consistent', prorettype
=> 'bool',
10795 proargtypes
=> 'internal anyrange int2 oid internal',
10796 prosrc
=> 'range_gist_consistent' },
10797 { oid
=> '3876', descr
=> 'GiST support',
10798 proname
=> 'range_gist_union', prorettype
=> 'anyrange',
10799 proargtypes
=> 'internal internal', prosrc
=> 'range_gist_union' },
10800 { oid
=> '3879', descr
=> 'GiST support',
10801 proname
=> 'range_gist_penalty', prorettype
=> 'internal',
10802 proargtypes
=> 'internal internal internal', prosrc
=> 'range_gist_penalty' },
10803 { oid
=> '3880', descr
=> 'GiST support',
10804 proname
=> 'range_gist_picksplit', prorettype
=> 'internal',
10805 proargtypes
=> 'internal internal', prosrc
=> 'range_gist_picksplit' },
10806 { oid
=> '3881', descr
=> 'GiST support',
10807 proname
=> 'range_gist_same', prorettype
=> 'internal',
10808 proargtypes
=> 'anyrange anyrange internal', prosrc
=> 'range_gist_same' },
10809 { oid
=> '6154', descr
=> 'GiST support',
10810 proname
=> 'multirange_gist_consistent', prorettype
=> 'bool',
10811 proargtypes
=> 'internal anymultirange int2 oid internal',
10812 prosrc
=> 'multirange_gist_consistent' },
10813 { oid
=> '6156', descr
=> 'GiST support',
10814 proname
=> 'multirange_gist_compress', prorettype
=> 'internal',
10815 proargtypes
=> 'internal', prosrc
=> 'multirange_gist_compress' },
10816 { oid
=> '3902', descr
=> 'hash a range',
10817 proname
=> 'hash_range', prorettype
=> 'int4', proargtypes
=> 'anyrange',
10818 prosrc
=> 'hash_range' },
10819 { oid
=> '3417', descr
=> 'hash a range',
10820 proname
=> 'hash_range_extended', prorettype
=> 'int8',
10821 proargtypes
=> 'anyrange int8', prosrc
=> 'hash_range_extended' },
10822 { oid
=> '3916', descr
=> 'range typanalyze',
10823 proname
=> 'range_typanalyze', provolatile
=> 's', prorettype
=> 'bool',
10824 proargtypes
=> 'internal', prosrc
=> 'range_typanalyze' },
10825 { oid
=> '3169', descr
=> 'restriction selectivity for range operators',
10826 proname
=> 'rangesel', provolatile
=> 's', prorettype
=> 'float8',
10827 proargtypes
=> 'internal oid internal int4', prosrc
=> 'rangesel' },
10828 { oid
=> '4401', descr
=> 'range aggregate by intersecting',
10829 proname
=> 'range_intersect_agg_transfn', prorettype
=> 'anyrange',
10830 proargtypes
=> 'anyrange anyrange', prosrc
=> 'range_intersect_agg_transfn' },
10831 { oid
=> '4450', descr
=> 'range aggregate by intersecting',
10832 proname
=> 'range_intersect_agg', prokind
=> 'a', proisstrict
=> 'f',
10833 prorettype
=> 'anyrange', proargtypes
=> 'anyrange',
10834 prosrc
=> 'aggregate_dummy' },
10836 { oid
=> '3914', descr
=> 'convert an int4 range to canonical form',
10837 proname
=> 'int4range_canonical', prorettype
=> 'int4range',
10838 proargtypes
=> 'int4range', prosrc
=> 'int4range_canonical' },
10839 { oid
=> '3928', descr
=> 'convert an int8 range to canonical form',
10840 proname
=> 'int8range_canonical', prorettype
=> 'int8range',
10841 proargtypes
=> 'int8range', prosrc
=> 'int8range_canonical' },
10842 { oid
=> '3915', descr
=> 'convert a date range to canonical form',
10843 proname
=> 'daterange_canonical', prorettype
=> 'daterange',
10844 proargtypes
=> 'daterange', prosrc
=> 'daterange_canonical' },
10845 { oid
=> '3922', descr
=> 'float8 difference of two int4 values',
10846 proname
=> 'int4range_subdiff', prorettype
=> 'float8',
10847 proargtypes
=> 'int4 int4', prosrc
=> 'int4range_subdiff' },
10848 { oid
=> '3923', descr
=> 'float8 difference of two int8 values',
10849 proname
=> 'int8range_subdiff', prorettype
=> 'float8',
10850 proargtypes
=> 'int8 int8', prosrc
=> 'int8range_subdiff' },
10851 { oid
=> '3924', descr
=> 'float8 difference of two numeric values',
10852 proname
=> 'numrange_subdiff', prorettype
=> 'float8',
10853 proargtypes
=> 'numeric numeric', prosrc
=> 'numrange_subdiff' },
10854 { oid
=> '3925', descr
=> 'float8 difference of two date values',
10855 proname
=> 'daterange_subdiff', prorettype
=> 'float8',
10856 proargtypes
=> 'date date', prosrc
=> 'daterange_subdiff' },
10857 { oid
=> '3929', descr
=> 'float8 difference of two timestamp values',
10858 proname
=> 'tsrange_subdiff', prorettype
=> 'float8',
10859 proargtypes
=> 'timestamp timestamp', prosrc
=> 'tsrange_subdiff' },
10861 descr
=> 'float8 difference of two timestamp with time zone values',
10862 proname
=> 'tstzrange_subdiff', prorettype
=> 'float8',
10863 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'tstzrange_subdiff' },
10865 { oid
=> '3840', descr
=> 'int4range constructor',
10866 proname
=> 'int4range', proisstrict
=> 'f', prorettype
=> 'int4range',
10867 proargtypes
=> 'int4 int4', prosrc
=> 'range_constructor2' },
10868 { oid
=> '3841', descr
=> 'int4range constructor',
10869 proname
=> 'int4range', proisstrict
=> 'f', prorettype
=> 'int4range',
10870 proargtypes
=> 'int4 int4 text', prosrc
=> 'range_constructor3' },
10871 { oid
=> '3844', descr
=> 'numrange constructor',
10872 proname
=> 'numrange', proisstrict
=> 'f', prorettype
=> 'numrange',
10873 proargtypes
=> 'numeric numeric', prosrc
=> 'range_constructor2' },
10874 { oid
=> '3845', descr
=> 'numrange constructor',
10875 proname
=> 'numrange', proisstrict
=> 'f', prorettype
=> 'numrange',
10876 proargtypes
=> 'numeric numeric text', prosrc
=> 'range_constructor3' },
10877 { oid
=> '3933', descr
=> 'tsrange constructor',
10878 proname
=> 'tsrange', proisstrict
=> 'f', prorettype
=> 'tsrange',
10879 proargtypes
=> 'timestamp timestamp', prosrc
=> 'range_constructor2' },
10880 { oid
=> '3934', descr
=> 'tsrange constructor',
10881 proname
=> 'tsrange', proisstrict
=> 'f', prorettype
=> 'tsrange',
10882 proargtypes
=> 'timestamp timestamp text', prosrc
=> 'range_constructor3' },
10883 { oid
=> '3937', descr
=> 'tstzrange constructor',
10884 proname
=> 'tstzrange', proisstrict
=> 'f', prorettype
=> 'tstzrange',
10885 proargtypes
=> 'timestamptz timestamptz', prosrc
=> 'range_constructor2' },
10886 { oid
=> '3938', descr
=> 'tstzrange constructor',
10887 proname
=> 'tstzrange', proisstrict
=> 'f', prorettype
=> 'tstzrange',
10888 proargtypes
=> 'timestamptz timestamptz text',
10889 prosrc
=> 'range_constructor3' },
10890 { oid
=> '3941', descr
=> 'daterange constructor',
10891 proname
=> 'daterange', proisstrict
=> 'f', prorettype
=> 'daterange',
10892 proargtypes
=> 'date date', prosrc
=> 'range_constructor2' },
10893 { oid
=> '3942', descr
=> 'daterange constructor',
10894 proname
=> 'daterange', proisstrict
=> 'f', prorettype
=> 'daterange',
10895 proargtypes
=> 'date date text', prosrc
=> 'range_constructor3' },
10896 { oid
=> '3945', descr
=> 'int8range constructor',
10897 proname
=> 'int8range', proisstrict
=> 'f', prorettype
=> 'int8range',
10898 proargtypes
=> 'int8 int8', prosrc
=> 'range_constructor2' },
10899 { oid
=> '3946', descr
=> 'int8range constructor',
10900 proname
=> 'int8range', proisstrict
=> 'f', prorettype
=> 'int8range',
10901 proargtypes
=> 'int8 int8 text', prosrc
=> 'range_constructor3' },
10903 # functions for multiranges
10904 { oid
=> '4229', descr
=> 'I/O',
10905 proname
=> 'anymultirange_in', provolatile
=> 's',
10906 prorettype
=> 'anymultirange', proargtypes
=> 'cstring oid int4',
10907 prosrc
=> 'anymultirange_in' },
10908 { oid
=> '4230', descr
=> 'I/O',
10909 proname
=> 'anymultirange_out', provolatile
=> 's', prorettype
=> 'cstring',
10910 proargtypes
=> 'anymultirange', prosrc
=> 'anymultirange_out' },
10911 { oid
=> '4231', descr
=> 'I/O',
10912 proname
=> 'multirange_in', provolatile
=> 's', prorettype
=> 'anymultirange',
10913 proargtypes
=> 'cstring oid int4', prosrc
=> 'multirange_in' },
10914 { oid
=> '4232', descr
=> 'I/O',
10915 proname
=> 'multirange_out', provolatile
=> 's', prorettype
=> 'cstring',
10916 proargtypes
=> 'anymultirange', prosrc
=> 'multirange_out' },
10917 { oid
=> '4233', descr
=> 'I/O',
10918 proname
=> 'multirange_recv', provolatile
=> 's',
10919 prorettype
=> 'anymultirange', proargtypes
=> 'internal oid int4',
10920 prosrc
=> 'multirange_recv' },
10921 { oid
=> '4234', descr
=> 'I/O',
10922 proname
=> 'multirange_send', provolatile
=> 's', prorettype
=> 'bytea',
10923 proargtypes
=> 'anymultirange', prosrc
=> 'multirange_send' },
10924 { oid
=> '4235', descr
=> 'lower bound of multirange',
10925 proname
=> 'lower', prorettype
=> 'anyelement',
10926 proargtypes
=> 'anymultirange', prosrc
=> 'multirange_lower' },
10927 { oid
=> '4236', descr
=> 'upper bound of multirange',
10928 proname
=> 'upper', prorettype
=> 'anyelement',
10929 proargtypes
=> 'anymultirange', prosrc
=> 'multirange_upper' },
10930 { oid
=> '4237', descr
=> 'is the multirange empty?',
10931 proname
=> 'isempty', prorettype
=> 'bool', proargtypes
=> 'anymultirange',
10932 prosrc
=> 'multirange_empty' },
10933 { oid
=> '4238', descr
=> 'is the multirange\'s lower bound inclusive?',
10934 proname
=> 'lower_inc', prorettype
=> 'bool', proargtypes
=> 'anymultirange',
10935 prosrc
=> 'multirange_lower_inc' },
10936 { oid
=> '4239', descr
=> 'is the multirange\'s upper bound inclusive?',
10937 proname
=> 'upper_inc', prorettype
=> 'bool', proargtypes
=> 'anymultirange',
10938 prosrc
=> 'multirange_upper_inc' },
10939 { oid
=> '4240', descr
=> 'is the multirange\'s lower bound infinite?',
10940 proname
=> 'lower_inf', prorettype
=> 'bool', proargtypes
=> 'anymultirange',
10941 prosrc
=> 'multirange_lower_inf' },
10942 { oid
=> '4241', descr
=> 'is the multirange\'s upper bound infinite?',
10943 proname
=> 'upper_inf', prorettype
=> 'bool', proargtypes
=> 'anymultirange',
10944 prosrc
=> 'multirange_upper_inf' },
10945 { oid
=> '4242', descr
=> 'multirange typanalyze',
10946 proname
=> 'multirange_typanalyze', provolatile
=> 's', prorettype
=> 'bool',
10947 proargtypes
=> 'internal', prosrc
=> 'multirange_typanalyze' },
10948 { oid
=> '4243', descr
=> 'restriction selectivity for multirange operators',
10949 proname
=> 'multirangesel', provolatile
=> 's', prorettype
=> 'float8',
10950 proargtypes
=> 'internal oid internal int4', prosrc
=> 'multirangesel' },
10952 proname
=> 'multirange_eq', prorettype
=> 'bool',
10953 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_eq' },
10955 proname
=> 'multirange_ne', prorettype
=> 'bool',
10956 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_ne' },
10958 proname
=> 'range_overlaps_multirange', prorettype
=> 'bool',
10959 proargtypes
=> 'anyrange anymultirange',
10960 prosrc
=> 'range_overlaps_multirange' },
10962 proname
=> 'multirange_overlaps_range', prorettype
=> 'bool',
10963 proargtypes
=> 'anymultirange anyrange',
10964 prosrc
=> 'multirange_overlaps_range' },
10966 proname
=> 'multirange_overlaps_multirange', prorettype
=> 'bool',
10967 proargtypes
=> 'anymultirange anymultirange',
10968 prosrc
=> 'multirange_overlaps_multirange' },
10970 proname
=> 'multirange_contains_elem', prorettype
=> 'bool',
10971 proargtypes
=> 'anymultirange anyelement',
10972 prosrc
=> 'multirange_contains_elem' },
10974 proname
=> 'multirange_contains_range', prorettype
=> 'bool',
10975 proargtypes
=> 'anymultirange anyrange',
10976 prosrc
=> 'multirange_contains_range' },
10978 proname
=> 'multirange_contains_multirange', prorettype
=> 'bool',
10979 proargtypes
=> 'anymultirange anymultirange',
10980 prosrc
=> 'multirange_contains_multirange' },
10982 proname
=> 'elem_contained_by_multirange', prorettype
=> 'bool',
10983 proargtypes
=> 'anyelement anymultirange',
10984 prosrc
=> 'elem_contained_by_multirange' },
10986 proname
=> 'range_contained_by_multirange', prorettype
=> 'bool',
10987 proargtypes
=> 'anyrange anymultirange',
10988 prosrc
=> 'range_contained_by_multirange' },
10990 proname
=> 'range_contains_multirange', prorettype
=> 'bool',
10991 proargtypes
=> 'anyrange anymultirange',
10992 prosrc
=> 'range_contains_multirange' },
10994 proname
=> 'multirange_contained_by_range', prorettype
=> 'bool',
10995 proargtypes
=> 'anymultirange anyrange',
10996 prosrc
=> 'multirange_contained_by_range' },
10998 proname
=> 'multirange_contained_by_multirange', prorettype
=> 'bool',
10999 proargtypes
=> 'anymultirange anymultirange',
11000 prosrc
=> 'multirange_contained_by_multirange' },
11002 proname
=> 'range_adjacent_multirange', prorettype
=> 'bool',
11003 proargtypes
=> 'anyrange anymultirange',
11004 prosrc
=> 'range_adjacent_multirange' },
11006 proname
=> 'multirange_adjacent_multirange', prorettype
=> 'bool',
11007 proargtypes
=> 'anymultirange anymultirange',
11008 prosrc
=> 'multirange_adjacent_multirange' },
11010 proname
=> 'multirange_adjacent_range', prorettype
=> 'bool',
11011 proargtypes
=> 'anymultirange anyrange',
11012 prosrc
=> 'multirange_adjacent_range' },
11014 proname
=> 'range_before_multirange', prorettype
=> 'bool',
11015 proargtypes
=> 'anyrange anymultirange',
11016 prosrc
=> 'range_before_multirange' },
11018 proname
=> 'multirange_before_range', prorettype
=> 'bool',
11019 proargtypes
=> 'anymultirange anyrange',
11020 prosrc
=> 'multirange_before_range' },
11022 proname
=> 'multirange_before_multirange', prorettype
=> 'bool',
11023 proargtypes
=> 'anymultirange anymultirange',
11024 prosrc
=> 'multirange_before_multirange' },
11026 proname
=> 'range_after_multirange', prorettype
=> 'bool',
11027 proargtypes
=> 'anyrange anymultirange', prosrc
=> 'range_after_multirange' },
11029 proname
=> 'multirange_after_range', prorettype
=> 'bool',
11030 proargtypes
=> 'anymultirange anyrange', prosrc
=> 'multirange_after_range' },
11032 proname
=> 'multirange_after_multirange', prorettype
=> 'bool',
11033 proargtypes
=> 'anymultirange anymultirange',
11034 prosrc
=> 'multirange_after_multirange' },
11036 proname
=> 'range_overleft_multirange', prorettype
=> 'bool',
11037 proargtypes
=> 'anyrange anymultirange',
11038 prosrc
=> 'range_overleft_multirange' },
11040 proname
=> 'multirange_overleft_range', prorettype
=> 'bool',
11041 proargtypes
=> 'anymultirange anyrange',
11042 prosrc
=> 'multirange_overleft_range' },
11044 proname
=> 'multirange_overleft_multirange', prorettype
=> 'bool',
11045 proargtypes
=> 'anymultirange anymultirange',
11046 prosrc
=> 'multirange_overleft_multirange' },
11048 proname
=> 'range_overright_multirange', prorettype
=> 'bool',
11049 proargtypes
=> 'anyrange anymultirange',
11050 prosrc
=> 'range_overright_multirange' },
11052 proname
=> 'multirange_overright_range', prorettype
=> 'bool',
11053 proargtypes
=> 'anymultirange anyrange',
11054 prosrc
=> 'multirange_overright_range' },
11056 proname
=> 'multirange_overright_multirange', prorettype
=> 'bool',
11057 proargtypes
=> 'anymultirange anymultirange',
11058 prosrc
=> 'multirange_overright_multirange' },
11060 proname
=> 'multirange_union', prorettype
=> 'anymultirange',
11061 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_union' },
11063 proname
=> 'multirange_minus', prorettype
=> 'anymultirange',
11064 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_minus' },
11066 proname
=> 'multirange_intersect', prorettype
=> 'anymultirange',
11067 proargtypes
=> 'anymultirange anymultirange',
11068 prosrc
=> 'multirange_intersect' },
11069 { oid
=> '4273', descr
=> 'less-equal-greater',
11070 proname
=> 'multirange_cmp', prorettype
=> 'int4',
11071 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_cmp' },
11073 proname
=> 'multirange_lt', prorettype
=> 'bool',
11074 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_lt' },
11076 proname
=> 'multirange_le', prorettype
=> 'bool',
11077 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_le' },
11079 proname
=> 'multirange_ge', prorettype
=> 'bool',
11080 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_ge' },
11082 proname
=> 'multirange_gt', prorettype
=> 'bool',
11083 proargtypes
=> 'anymultirange anymultirange', prosrc
=> 'multirange_gt' },
11084 { oid
=> '4278', descr
=> 'hash a multirange',
11085 proname
=> 'hash_multirange', prorettype
=> 'int4',
11086 proargtypes
=> 'anymultirange', prosrc
=> 'hash_multirange' },
11087 { oid
=> '4279', descr
=> 'hash a multirange',
11088 proname
=> 'hash_multirange_extended', prorettype
=> 'int8',
11089 proargtypes
=> 'anymultirange int8', prosrc
=> 'hash_multirange_extended' },
11091 { oid
=> '4280', descr
=> 'int4multirange constructor',
11092 proname
=> 'int4multirange', prorettype
=> 'int4multirange',
11093 proargtypes
=> '', prosrc
=> 'multirange_constructor0' },
11094 { oid
=> '4281', descr
=> 'int4multirange constructor',
11095 proname
=> 'int4multirange', prorettype
=> 'int4multirange',
11096 proargtypes
=> 'int4range', prosrc
=> 'multirange_constructor1' },
11097 { oid
=> '4282', descr
=> 'int4multirange constructor',
11098 proname
=> 'int4multirange', provariadic
=> 'int4range',
11099 prorettype
=> 'int4multirange', proargtypes
=> '_int4range',
11100 proallargtypes
=> '{_int4range}', proargmodes
=> '{v}',
11101 prosrc
=> 'multirange_constructor2' },
11102 { oid
=> '4283', descr
=> 'nummultirange constructor',
11103 proname
=> 'nummultirange', prorettype
=> 'nummultirange', proargtypes
=> '',
11104 prosrc
=> 'multirange_constructor0' },
11105 { oid
=> '4284', descr
=> 'nummultirange constructor',
11106 proname
=> 'nummultirange', prorettype
=> 'nummultirange',
11107 proargtypes
=> 'numrange', prosrc
=> 'multirange_constructor1' },
11108 { oid
=> '4285', descr
=> 'nummultirange constructor',
11109 proname
=> 'nummultirange', provariadic
=> 'numrange',
11110 prorettype
=> 'nummultirange', proargtypes
=> '_numrange',
11111 proallargtypes
=> '{_numrange}', proargmodes
=> '{v}',
11112 prosrc
=> 'multirange_constructor2' },
11113 { oid
=> '4286', descr
=> 'tsmultirange constructor',
11114 proname
=> 'tsmultirange', prorettype
=> 'tsmultirange', proargtypes
=> '',
11115 prosrc
=> 'multirange_constructor0' },
11116 { oid
=> '4287', descr
=> 'tsmultirange constructor',
11117 proname
=> 'tsmultirange', prorettype
=> 'tsmultirange',
11118 proargtypes
=> 'tsrange', prosrc
=> 'multirange_constructor1' },
11119 { oid
=> '4288', descr
=> 'tsmultirange constructor',
11120 proname
=> 'tsmultirange', provariadic
=> 'tsrange',
11121 prorettype
=> 'tsmultirange', proargtypes
=> '_tsrange',
11122 proallargtypes
=> '{_tsrange}', proargmodes
=> '{v}',
11123 prosrc
=> 'multirange_constructor2' },
11124 { oid
=> '4289', descr
=> 'tstzmultirange constructor',
11125 proname
=> 'tstzmultirange', prorettype
=> 'tstzmultirange',
11126 proargtypes
=> '', prosrc
=> 'multirange_constructor0' },
11127 { oid
=> '4290', descr
=> 'tstzmultirange constructor',
11128 proname
=> 'tstzmultirange', prorettype
=> 'tstzmultirange',
11129 proargtypes
=> 'tstzrange', prosrc
=> 'multirange_constructor1' },
11130 { oid
=> '4291', descr
=> 'tstzmultirange constructor',
11131 proname
=> 'tstzmultirange', provariadic
=> 'tstzrange',
11132 prorettype
=> 'tstzmultirange', proargtypes
=> '_tstzrange',
11133 proallargtypes
=> '{_tstzrange}', proargmodes
=> '{v}',
11134 prosrc
=> 'multirange_constructor2' },
11135 { oid
=> '4292', descr
=> 'datemultirange constructor',
11136 proname
=> 'datemultirange', prorettype
=> 'datemultirange',
11137 proargtypes
=> '', prosrc
=> 'multirange_constructor0' },
11138 { oid
=> '4293', descr
=> 'datemultirange constructor',
11139 proname
=> 'datemultirange', prorettype
=> 'datemultirange',
11140 proargtypes
=> 'daterange', prosrc
=> 'multirange_constructor1' },
11141 { oid
=> '4294', descr
=> 'datemultirange constructor',
11142 proname
=> 'datemultirange', provariadic
=> 'daterange',
11143 prorettype
=> 'datemultirange', proargtypes
=> '_daterange',
11144 proallargtypes
=> '{_daterange}', proargmodes
=> '{v}',
11145 prosrc
=> 'multirange_constructor2' },
11146 { oid
=> '4295', descr
=> 'int8multirange constructor',
11147 proname
=> 'int8multirange', prorettype
=> 'int8multirange',
11148 proargtypes
=> '', prosrc
=> 'multirange_constructor0' },
11149 { oid
=> '4296', descr
=> 'int8multirange constructor',
11150 proname
=> 'int8multirange', prorettype
=> 'int8multirange',
11151 proargtypes
=> 'int8range', prosrc
=> 'multirange_constructor1' },
11152 { oid
=> '4297', descr
=> 'int8multirange constructor',
11153 proname
=> 'int8multirange', provariadic
=> 'int8range',
11154 prorettype
=> 'int8multirange', proargtypes
=> '_int8range',
11155 proallargtypes
=> '{_int8range}', proargmodes
=> '{v}',
11156 prosrc
=> 'multirange_constructor2' },
11157 { oid
=> '4298', descr
=> 'anymultirange cast',
11158 proname
=> 'multirange', prorettype
=> 'anymultirange',
11159 proargtypes
=> 'anyrange', prosrc
=> 'multirange_constructor1' },
11160 { oid
=> '4299', descr
=> 'aggregate transition function',
11161 proname
=> 'range_agg_transfn', proisstrict
=> 'f', prorettype
=> 'internal',
11162 proargtypes
=> 'internal anyrange', prosrc
=> 'range_agg_transfn' },
11163 { oid
=> '4300', descr
=> 'aggregate final function',
11164 proname
=> 'range_agg_finalfn', proisstrict
=> 'f',
11165 prorettype
=> 'anymultirange', proargtypes
=> 'internal anyrange',
11166 prosrc
=> 'range_agg_finalfn' },
11167 { oid
=> '4301', descr
=> 'combine aggregate input into a multirange',
11168 proname
=> 'range_agg', prokind
=> 'a', proisstrict
=> 'f',
11169 prorettype
=> 'anymultirange', proargtypes
=> 'anyrange',
11170 prosrc
=> 'aggregate_dummy' },
11171 { oid
=> '6225', descr
=> 'aggregate transition function',
11172 proname
=> 'multirange_agg_transfn', proisstrict
=> 'f',
11173 prorettype
=> 'internal', proargtypes
=> 'internal anymultirange',
11174 prosrc
=> 'multirange_agg_transfn' },
11175 { oid
=> '6226', descr
=> 'aggregate final function',
11176 proname
=> 'multirange_agg_finalfn', proisstrict
=> 'f',
11177 prorettype
=> 'anymultirange', proargtypes
=> 'internal anymultirange',
11178 prosrc
=> 'range_agg_finalfn' },
11179 { oid
=> '6227', descr
=> 'combine aggregate input into a multirange',
11180 proname
=> 'range_agg', prokind
=> 'a', proisstrict
=> 'f',
11181 prorettype
=> 'anymultirange', proargtypes
=> 'anymultirange',
11182 prosrc
=> 'aggregate_dummy' },
11183 { oid
=> '4388', descr
=> 'range aggregate by intersecting',
11184 proname
=> 'multirange_intersect_agg_transfn', prorettype
=> 'anymultirange',
11185 proargtypes
=> 'anymultirange anymultirange',
11186 prosrc
=> 'multirange_intersect_agg_transfn' },
11187 { oid
=> '4389', descr
=> 'range aggregate by intersecting',
11188 proname
=> 'range_intersect_agg', prokind
=> 'a', proisstrict
=> 'f',
11189 prorettype
=> 'anymultirange', proargtypes
=> 'anymultirange',
11190 prosrc
=> 'aggregate_dummy' },
11191 { oid
=> '1293', descr
=> 'expand multirange to set of ranges',
11192 proname
=> 'unnest', prorows
=> '100', proretset
=> 't',
11193 prorettype
=> 'anyrange', proargtypes
=> 'anymultirange',
11194 prosrc
=> 'multirange_unnest' },
11196 # date, time, timestamp constructors
11197 { oid
=> '3846', descr
=> 'construct date',
11198 proname
=> 'make_date', prorettype
=> 'date', proargtypes
=> 'int4 int4 int4',
11199 proargnames
=> '{year,month,day}', prosrc
=> 'make_date' },
11200 { oid
=> '3847', descr
=> 'construct time',
11201 proname
=> 'make_time', prorettype
=> 'time',
11202 proargtypes
=> 'int4 int4 float8', proargnames
=> '{hour,min,sec}',
11203 prosrc
=> 'make_time' },
11204 { oid
=> '3461', descr
=> 'construct timestamp',
11205 proname
=> 'make_timestamp', prorettype
=> 'timestamp',
11206 proargtypes
=> 'int4 int4 int4 int4 int4 float8',
11207 proargnames
=> '{year,month,mday,hour,min,sec}', prosrc
=> 'make_timestamp' },
11208 { oid
=> '3462', descr
=> 'construct timestamp with time zone',
11209 proname
=> 'make_timestamptz', provolatile
=> 's',
11210 prorettype
=> 'timestamptz', proargtypes
=> 'int4 int4 int4 int4 int4 float8',
11211 proargnames
=> '{year,month,mday,hour,min,sec}',
11212 prosrc
=> 'make_timestamptz' },
11213 { oid
=> '3463', descr
=> 'construct timestamp with time zone',
11214 proname
=> 'make_timestamptz', provolatile
=> 's',
11215 prorettype
=> 'timestamptz',
11216 proargtypes
=> 'int4 int4 int4 int4 int4 float8 text',
11217 proargnames
=> '{year,month,mday,hour,min,sec,timezone}',
11218 prosrc
=> 'make_timestamptz_at_timezone' },
11219 { oid
=> '3464', descr
=> 'construct interval',
11220 proname
=> 'make_interval', prorettype
=> 'interval',
11221 proargtypes
=> 'int4 int4 int4 int4 int4 int4 float8',
11222 proargnames
=> '{years,months,weeks,days,hours,mins,secs}',
11223 prosrc
=> 'make_interval' },
11226 { oid
=> '4018', descr
=> 'SP-GiST support for quad tree over point',
11227 proname
=> 'spg_quad_config', prorettype
=> 'void',
11228 proargtypes
=> 'internal internal', prosrc
=> 'spg_quad_config' },
11229 { oid
=> '4019', descr
=> 'SP-GiST support for quad tree over point',
11230 proname
=> 'spg_quad_choose', prorettype
=> 'void',
11231 proargtypes
=> 'internal internal', prosrc
=> 'spg_quad_choose' },
11232 { oid
=> '4020', descr
=> 'SP-GiST support for quad tree over point',
11233 proname
=> 'spg_quad_picksplit', prorettype
=> 'void',
11234 proargtypes
=> 'internal internal', prosrc
=> 'spg_quad_picksplit' },
11235 { oid
=> '4021', descr
=> 'SP-GiST support for quad tree over point',
11236 proname
=> 'spg_quad_inner_consistent', prorettype
=> 'void',
11237 proargtypes
=> 'internal internal', prosrc
=> 'spg_quad_inner_consistent' },
11239 descr
=> 'SP-GiST support for quad tree and k-d tree over point',
11240 proname
=> 'spg_quad_leaf_consistent', prorettype
=> 'bool',
11241 proargtypes
=> 'internal internal', prosrc
=> 'spg_quad_leaf_consistent' },
11243 { oid
=> '4023', descr
=> 'SP-GiST support for k-d tree over point',
11244 proname
=> 'spg_kd_config', prorettype
=> 'void',
11245 proargtypes
=> 'internal internal', prosrc
=> 'spg_kd_config' },
11246 { oid
=> '4024', descr
=> 'SP-GiST support for k-d tree over point',
11247 proname
=> 'spg_kd_choose', prorettype
=> 'void',
11248 proargtypes
=> 'internal internal', prosrc
=> 'spg_kd_choose' },
11249 { oid
=> '4025', descr
=> 'SP-GiST support for k-d tree over point',
11250 proname
=> 'spg_kd_picksplit', prorettype
=> 'void',
11251 proargtypes
=> 'internal internal', prosrc
=> 'spg_kd_picksplit' },
11252 { oid
=> '4026', descr
=> 'SP-GiST support for k-d tree over point',
11253 proname
=> 'spg_kd_inner_consistent', prorettype
=> 'void',
11254 proargtypes
=> 'internal internal', prosrc
=> 'spg_kd_inner_consistent' },
11256 { oid
=> '4027', descr
=> 'SP-GiST support for radix tree over text',
11257 proname
=> 'spg_text_config', prorettype
=> 'void',
11258 proargtypes
=> 'internal internal', prosrc
=> 'spg_text_config' },
11259 { oid
=> '4028', descr
=> 'SP-GiST support for radix tree over text',
11260 proname
=> 'spg_text_choose', prorettype
=> 'void',
11261 proargtypes
=> 'internal internal', prosrc
=> 'spg_text_choose' },
11262 { oid
=> '4029', descr
=> 'SP-GiST support for radix tree over text',
11263 proname
=> 'spg_text_picksplit', prorettype
=> 'void',
11264 proargtypes
=> 'internal internal', prosrc
=> 'spg_text_picksplit' },
11265 { oid
=> '4030', descr
=> 'SP-GiST support for radix tree over text',
11266 proname
=> 'spg_text_inner_consistent', prorettype
=> 'void',
11267 proargtypes
=> 'internal internal', prosrc
=> 'spg_text_inner_consistent' },
11268 { oid
=> '4031', descr
=> 'SP-GiST support for radix tree over text',
11269 proname
=> 'spg_text_leaf_consistent', prorettype
=> 'bool',
11270 proargtypes
=> 'internal internal', prosrc
=> 'spg_text_leaf_consistent' },
11272 { oid
=> '3469', descr
=> 'SP-GiST support for quad tree over range',
11273 proname
=> 'spg_range_quad_config', prorettype
=> 'void',
11274 proargtypes
=> 'internal internal', prosrc
=> 'spg_range_quad_config' },
11275 { oid
=> '3470', descr
=> 'SP-GiST support for quad tree over range',
11276 proname
=> 'spg_range_quad_choose', prorettype
=> 'void',
11277 proargtypes
=> 'internal internal', prosrc
=> 'spg_range_quad_choose' },
11278 { oid
=> '3471', descr
=> 'SP-GiST support for quad tree over range',
11279 proname
=> 'spg_range_quad_picksplit', prorettype
=> 'void',
11280 proargtypes
=> 'internal internal', prosrc
=> 'spg_range_quad_picksplit' },
11281 { oid
=> '3472', descr
=> 'SP-GiST support for quad tree over range',
11282 proname
=> 'spg_range_quad_inner_consistent', prorettype
=> 'void',
11283 proargtypes
=> 'internal internal',
11284 prosrc
=> 'spg_range_quad_inner_consistent' },
11285 { oid
=> '3473', descr
=> 'SP-GiST support for quad tree over range',
11286 proname
=> 'spg_range_quad_leaf_consistent', prorettype
=> 'bool',
11287 proargtypes
=> 'internal internal',
11288 prosrc
=> 'spg_range_quad_leaf_consistent' },
11290 { oid
=> '5012', descr
=> 'SP-GiST support for quad tree over box',
11291 proname
=> 'spg_box_quad_config', prorettype
=> 'void',
11292 proargtypes
=> 'internal internal', prosrc
=> 'spg_box_quad_config' },
11293 { oid
=> '5013', descr
=> 'SP-GiST support for quad tree over box',
11294 proname
=> 'spg_box_quad_choose', prorettype
=> 'void',
11295 proargtypes
=> 'internal internal', prosrc
=> 'spg_box_quad_choose' },
11296 { oid
=> '5014', descr
=> 'SP-GiST support for quad tree over box',
11297 proname
=> 'spg_box_quad_picksplit', prorettype
=> 'void',
11298 proargtypes
=> 'internal internal', prosrc
=> 'spg_box_quad_picksplit' },
11299 { oid
=> '5015', descr
=> 'SP-GiST support for quad tree over box',
11300 proname
=> 'spg_box_quad_inner_consistent', prorettype
=> 'void',
11301 proargtypes
=> 'internal internal',
11302 prosrc
=> 'spg_box_quad_inner_consistent' },
11303 { oid
=> '5016', descr
=> 'SP-GiST support for quad tree over box',
11304 proname
=> 'spg_box_quad_leaf_consistent', prorettype
=> 'bool',
11305 proargtypes
=> 'internal internal',
11306 prosrc
=> 'spg_box_quad_leaf_consistent' },
11309 descr
=> 'SP-GiST support for quad tree over 2-D types represented by their bounding boxes',
11310 proname
=> 'spg_bbox_quad_config', prorettype
=> 'void',
11311 proargtypes
=> 'internal internal', prosrc
=> 'spg_bbox_quad_config' },
11312 { oid
=> '5011', descr
=> 'SP-GiST support for quad tree over polygons',
11313 proname
=> 'spg_poly_quad_compress', prorettype
=> 'box',
11314 proargtypes
=> 'polygon', prosrc
=> 'spg_poly_quad_compress' },
11316 # replication slots
11317 { oid
=> '3779', descr
=> 'create a physical replication slot',
11318 proname
=> 'pg_create_physical_replication_slot', provolatile
=> 'v',
11319 proparallel
=> 'u', prorettype
=> 'record', proargtypes
=> 'name bool bool',
11320 proallargtypes
=> '{name,bool,bool,name,pg_lsn}',
11321 proargmodes
=> '{i,i,i,o,o}',
11322 proargnames
=> '{slot_name,immediately_reserve,temporary,slot_name,lsn}',
11323 prosrc
=> 'pg_create_physical_replication_slot' },
11325 descr
=> 'copy a physical replication slot, changing temporality',
11326 proname
=> 'pg_copy_physical_replication_slot', provolatile
=> 'v',
11327 proparallel
=> 'u', prorettype
=> 'record', proargtypes
=> 'name name bool',
11328 proallargtypes
=> '{name,name,bool,name,pg_lsn}',
11329 proargmodes
=> '{i,i,i,o,o}',
11330 proargnames
=> '{src_slot_name,dst_slot_name,temporary,slot_name,lsn}',
11331 prosrc
=> 'pg_copy_physical_replication_slot_a' },
11332 { oid
=> '4221', descr
=> 'copy a physical replication slot',
11333 proname
=> 'pg_copy_physical_replication_slot', provolatile
=> 'v',
11334 proparallel
=> 'u', prorettype
=> 'record', proargtypes
=> 'name name',
11335 proallargtypes
=> '{name,name,name,pg_lsn}', proargmodes
=> '{i,i,o,o}',
11336 proargnames
=> '{src_slot_name,dst_slot_name,slot_name,lsn}',
11337 prosrc
=> 'pg_copy_physical_replication_slot_b' },
11338 { oid
=> '3780', descr
=> 'drop a replication slot',
11339 proname
=> 'pg_drop_replication_slot', provolatile
=> 'v', proparallel
=> 'u',
11340 prorettype
=> 'void', proargtypes
=> 'name',
11341 prosrc
=> 'pg_drop_replication_slot' },
11343 descr
=> 'information about replication slots currently in use',
11344 proname
=> 'pg_get_replication_slots', prorows
=> '10', proisstrict
=> 'f',
11345 proretset
=> 't', provolatile
=> 's', prorettype
=> 'record',
11347 proallargtypes
=> '{name,name,text,oid,bool,bool,int4,xid,xid,pg_lsn,pg_lsn,text,int8,bool,timestamptz,bool,text,bool,bool}',
11348 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
11349 proargnames
=> '{slot_name,plugin,slot_type,datoid,temporary,active,active_pid,xmin,catalog_xmin,restart_lsn,confirmed_flush_lsn,wal_status,safe_wal_size,two_phase,inactive_since,conflicting,invalidation_reason,failover,synced}',
11350 prosrc
=> 'pg_get_replication_slots' },
11351 { oid
=> '3786', descr
=> 'set up a logical replication slot',
11352 proname
=> 'pg_create_logical_replication_slot', provolatile
=> 'v',
11353 proparallel
=> 'u', prorettype
=> 'record',
11354 proargtypes
=> 'name name bool bool bool',
11355 proallargtypes
=> '{name,name,bool,bool,bool,name,pg_lsn}',
11356 proargmodes
=> '{i,i,i,i,i,o,o}',
11357 proargnames
=> '{slot_name,plugin,temporary,twophase,failover,slot_name,lsn}',
11358 prosrc
=> 'pg_create_logical_replication_slot' },
11360 descr
=> 'copy a logical replication slot, changing temporality and plugin',
11361 proname
=> 'pg_copy_logical_replication_slot', provolatile
=> 'v',
11362 proparallel
=> 'u', prorettype
=> 'record',
11363 proargtypes
=> 'name name bool name',
11364 proallargtypes
=> '{name,name,bool,name,name,pg_lsn}',
11365 proargmodes
=> '{i,i,i,i,o,o}',
11366 proargnames
=> '{src_slot_name,dst_slot_name,temporary,plugin,slot_name,lsn}',
11367 prosrc
=> 'pg_copy_logical_replication_slot_a' },
11369 descr
=> 'copy a logical replication slot, changing temporality',
11370 proname
=> 'pg_copy_logical_replication_slot', provolatile
=> 'v',
11371 proparallel
=> 'u', prorettype
=> 'record', proargtypes
=> 'name name bool',
11372 proallargtypes
=> '{name,name,bool,name,pg_lsn}',
11373 proargmodes
=> '{i,i,i,o,o}',
11374 proargnames
=> '{src_slot_name,dst_slot_name,temporary,slot_name,lsn}',
11375 prosrc
=> 'pg_copy_logical_replication_slot_b' },
11376 { oid
=> '4224', descr
=> 'copy a logical replication slot',
11377 proname
=> 'pg_copy_logical_replication_slot', provolatile
=> 'v',
11378 proparallel
=> 'u', prorettype
=> 'record', proargtypes
=> 'name name',
11379 proallargtypes
=> '{name,name,name,pg_lsn}', proargmodes
=> '{i,i,o,o}',
11380 proargnames
=> '{src_slot_name,dst_slot_name,slot_name,lsn}',
11381 prosrc
=> 'pg_copy_logical_replication_slot_c' },
11382 { oid
=> '3782', descr
=> 'get changes from replication slot',
11383 proname
=> 'pg_logical_slot_get_changes', procost
=> '1000',
11384 prorows
=> '1000', provariadic
=> 'text', proisstrict
=> 'f',
11385 proretset
=> 't', provolatile
=> 'v', proparallel
=> 'u',
11386 prorettype
=> 'record', proargtypes
=> 'name pg_lsn int4 _text',
11387 proallargtypes
=> '{name,pg_lsn,int4,_text,pg_lsn,xid,text}',
11388 proargmodes
=> '{i,i,i,v,o,o,o}',
11389 proargnames
=> '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}',
11390 prosrc
=> 'pg_logical_slot_get_changes' },
11391 { oid
=> '3783', descr
=> 'get binary changes from replication slot',
11392 proname
=> 'pg_logical_slot_get_binary_changes', procost
=> '1000',
11393 prorows
=> '1000', provariadic
=> 'text', proisstrict
=> 'f',
11394 proretset
=> 't', provolatile
=> 'v', proparallel
=> 'u',
11395 prorettype
=> 'record', proargtypes
=> 'name pg_lsn int4 _text',
11396 proallargtypes
=> '{name,pg_lsn,int4,_text,pg_lsn,xid,bytea}',
11397 proargmodes
=> '{i,i,i,v,o,o,o}',
11398 proargnames
=> '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}',
11399 prosrc
=> 'pg_logical_slot_get_binary_changes' },
11400 { oid
=> '3784', descr
=> 'peek at changes from replication slot',
11401 proname
=> 'pg_logical_slot_peek_changes', procost
=> '1000',
11402 prorows
=> '1000', provariadic
=> 'text', proisstrict
=> 'f',
11403 proretset
=> 't', provolatile
=> 'v', proparallel
=> 'u',
11404 prorettype
=> 'record', proargtypes
=> 'name pg_lsn int4 _text',
11405 proallargtypes
=> '{name,pg_lsn,int4,_text,pg_lsn,xid,text}',
11406 proargmodes
=> '{i,i,i,v,o,o,o}',
11407 proargnames
=> '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}',
11408 prosrc
=> 'pg_logical_slot_peek_changes' },
11409 { oid
=> '3785', descr
=> 'peek at binary changes from replication slot',
11410 proname
=> 'pg_logical_slot_peek_binary_changes', procost
=> '1000',
11411 prorows
=> '1000', provariadic
=> 'text', proisstrict
=> 'f',
11412 proretset
=> 't', provolatile
=> 'v', proparallel
=> 'u',
11413 prorettype
=> 'record', proargtypes
=> 'name pg_lsn int4 _text',
11414 proallargtypes
=> '{name,pg_lsn,int4,_text,pg_lsn,xid,bytea}',
11415 proargmodes
=> '{i,i,i,v,o,o,o}',
11416 proargnames
=> '{slot_name,upto_lsn,upto_nchanges,options,lsn,xid,data}',
11417 prosrc
=> 'pg_logical_slot_peek_binary_changes' },
11418 { oid
=> '3878', descr
=> 'advance logical replication slot',
11419 proname
=> 'pg_replication_slot_advance', provolatile
=> 'v',
11420 proparallel
=> 'u', prorettype
=> 'record', proargtypes
=> 'name pg_lsn',
11421 proallargtypes
=> '{name,pg_lsn,name,pg_lsn}', proargmodes
=> '{i,i,o,o}',
11422 proargnames
=> '{slot_name,upto_lsn,slot_name,end_lsn}',
11423 prosrc
=> 'pg_replication_slot_advance' },
11424 { oid
=> '3577', descr
=> 'emit a textual logical decoding message',
11425 proname
=> 'pg_logical_emit_message', provolatile
=> 'v', proparallel
=> 'u',
11426 prorettype
=> 'pg_lsn', proargtypes
=> 'bool text text bool',
11427 prosrc
=> 'pg_logical_emit_message_text' },
11428 { oid
=> '3578', descr
=> 'emit a binary logical decoding message',
11429 proname
=> 'pg_logical_emit_message', provolatile
=> 'v', proparallel
=> 'u',
11430 prorettype
=> 'pg_lsn', proargtypes
=> 'bool text bytea bool',
11431 prosrc
=> 'pg_logical_emit_message_bytea' },
11433 descr
=> 'sync replication slots from the primary to the standby',
11434 proname
=> 'pg_sync_replication_slots', provolatile
=> 'v',
11435 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> '',
11436 prosrc
=> 'pg_sync_replication_slots' },
11439 { oid
=> '3566', descr
=> 'list objects dropped by the current command',
11440 proname
=> 'pg_event_trigger_dropped_objects', procost
=> '10',
11441 prorows
=> '100', proretset
=> 't', provolatile
=> 's', proparallel
=> 'r',
11442 prorettype
=> 'record', proargtypes
=> '',
11443 proallargtypes
=> '{oid,oid,int4,bool,bool,bool,text,text,text,text,_text,_text}',
11444 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o}',
11445 proargnames
=> '{classid, objid, objsubid, original, normal, is_temporary, object_type, schema_name, object_name, object_identity, address_names, address_args}',
11446 prosrc
=> 'pg_event_trigger_dropped_objects' },
11447 { oid
=> '4566', descr
=> 'return Oid of the table getting rewritten',
11448 proname
=> 'pg_event_trigger_table_rewrite_oid', provolatile
=> 's',
11449 proparallel
=> 'r', prorettype
=> 'oid', proargtypes
=> '',
11450 proallargtypes
=> '{oid}', proargmodes
=> '{o}', proargnames
=> '{oid}',
11451 prosrc
=> 'pg_event_trigger_table_rewrite_oid' },
11452 { oid
=> '4567', descr
=> 'return reason code for table getting rewritten',
11453 proname
=> 'pg_event_trigger_table_rewrite_reason', provolatile
=> 's',
11454 proparallel
=> 'r', prorettype
=> 'int4', proargtypes
=> '',
11455 prosrc
=> 'pg_event_trigger_table_rewrite_reason' },
11457 descr
=> 'list DDL actions being executed by the current command',
11458 proname
=> 'pg_event_trigger_ddl_commands', procost
=> '10', prorows
=> '100',
11459 proretset
=> 't', provolatile
=> 's', proparallel
=> 'r',
11460 prorettype
=> 'record', proargtypes
=> '',
11461 proallargtypes
=> '{oid,oid,int4,text,text,text,text,bool,pg_ddl_command}',
11462 proargmodes
=> '{o,o,o,o,o,o,o,o,o}',
11463 proargnames
=> '{classid, objid, objsubid, command_tag, object_type, schema_name, object_identity, in_extension, command}',
11464 prosrc
=> 'pg_event_trigger_ddl_commands' },
11466 # generic transition functions for ordered-set aggregates
11467 { oid
=> '3970', descr
=> 'aggregate transition function',
11468 proname
=> 'ordered_set_transition', proisstrict
=> 'f',
11469 prorettype
=> 'internal', proargtypes
=> 'internal any',
11470 prosrc
=> 'ordered_set_transition' },
11471 { oid
=> '3971', descr
=> 'aggregate transition function',
11472 proname
=> 'ordered_set_transition_multi', provariadic
=> 'any',
11473 proisstrict
=> 'f', prorettype
=> 'internal', proargtypes
=> 'internal any',
11474 proallargtypes
=> '{internal,any}', proargmodes
=> '{i,v}',
11475 prosrc
=> 'ordered_set_transition_multi' },
11477 # inverse distribution aggregates (and their support functions)
11478 { oid
=> '3972', descr
=> 'discrete percentile',
11479 proname
=> 'percentile_disc', prokind
=> 'a', proisstrict
=> 'f',
11480 prorettype
=> 'anyelement', proargtypes
=> 'float8 anyelement',
11481 prosrc
=> 'aggregate_dummy' },
11482 { oid
=> '3973', descr
=> 'aggregate final function',
11483 proname
=> 'percentile_disc_final', proisstrict
=> 'f',
11484 prorettype
=> 'anyelement', proargtypes
=> 'internal float8 anyelement',
11485 prosrc
=> 'percentile_disc_final' },
11486 { oid
=> '3974', descr
=> 'continuous distribution percentile',
11487 proname
=> 'percentile_cont', prokind
=> 'a', proisstrict
=> 'f',
11488 prorettype
=> 'float8', proargtypes
=> 'float8 float8',
11489 prosrc
=> 'aggregate_dummy' },
11490 { oid
=> '3975', descr
=> 'aggregate final function',
11491 proname
=> 'percentile_cont_float8_final', proisstrict
=> 'f',
11492 prorettype
=> 'float8', proargtypes
=> 'internal float8',
11493 prosrc
=> 'percentile_cont_float8_final' },
11494 { oid
=> '3976', descr
=> 'continuous distribution percentile',
11495 proname
=> 'percentile_cont', prokind
=> 'a', proisstrict
=> 'f',
11496 prorettype
=> 'interval', proargtypes
=> 'float8 interval',
11497 prosrc
=> 'aggregate_dummy' },
11498 { oid
=> '3977', descr
=> 'aggregate final function',
11499 proname
=> 'percentile_cont_interval_final', proisstrict
=> 'f',
11500 prorettype
=> 'interval', proargtypes
=> 'internal float8',
11501 prosrc
=> 'percentile_cont_interval_final' },
11502 { oid
=> '3978', descr
=> 'multiple discrete percentiles',
11503 proname
=> 'percentile_disc', prokind
=> 'a', proisstrict
=> 'f',
11504 prorettype
=> 'anyarray', proargtypes
=> '_float8 anyelement',
11505 prosrc
=> 'aggregate_dummy' },
11506 { oid
=> '3979', descr
=> 'aggregate final function',
11507 proname
=> 'percentile_disc_multi_final', proisstrict
=> 'f',
11508 prorettype
=> 'anyarray', proargtypes
=> 'internal _float8 anyelement',
11509 prosrc
=> 'percentile_disc_multi_final' },
11510 { oid
=> '3980', descr
=> 'multiple continuous percentiles',
11511 proname
=> 'percentile_cont', prokind
=> 'a', proisstrict
=> 'f',
11512 prorettype
=> '_float8', proargtypes
=> '_float8 float8',
11513 prosrc
=> 'aggregate_dummy' },
11514 { oid
=> '3981', descr
=> 'aggregate final function',
11515 proname
=> 'percentile_cont_float8_multi_final', proisstrict
=> 'f',
11516 prorettype
=> '_float8', proargtypes
=> 'internal _float8',
11517 prosrc
=> 'percentile_cont_float8_multi_final' },
11518 { oid
=> '3982', descr
=> 'multiple continuous percentiles',
11519 proname
=> 'percentile_cont', prokind
=> 'a', proisstrict
=> 'f',
11520 prorettype
=> '_interval', proargtypes
=> '_float8 interval',
11521 prosrc
=> 'aggregate_dummy' },
11522 { oid
=> '3983', descr
=> 'aggregate final function',
11523 proname
=> 'percentile_cont_interval_multi_final', proisstrict
=> 'f',
11524 prorettype
=> '_interval', proargtypes
=> 'internal _float8',
11525 prosrc
=> 'percentile_cont_interval_multi_final' },
11526 { oid
=> '3984', descr
=> 'most common value',
11527 proname
=> 'mode', prokind
=> 'a', proisstrict
=> 'f',
11528 prorettype
=> 'anyelement', proargtypes
=> 'anyelement',
11529 prosrc
=> 'aggregate_dummy' },
11530 { oid
=> '3985', descr
=> 'aggregate final function',
11531 proname
=> 'mode_final', proisstrict
=> 'f', prorettype
=> 'anyelement',
11532 proargtypes
=> 'internal anyelement', prosrc
=> 'mode_final' },
11534 # hypothetical-set aggregates (and their support functions)
11535 { oid
=> '3986', descr
=> 'rank of hypothetical row',
11536 proname
=> 'rank', provariadic
=> 'any', prokind
=> 'a', proisstrict
=> 'f',
11537 prorettype
=> 'int8', proargtypes
=> 'any', proallargtypes
=> '{any}',
11538 proargmodes
=> '{v}', prosrc
=> 'aggregate_dummy' },
11539 { oid
=> '3987', descr
=> 'aggregate final function',
11540 proname
=> 'rank_final', provariadic
=> 'any', proisstrict
=> 'f',
11541 prorettype
=> 'int8', proargtypes
=> 'internal any',
11542 proallargtypes
=> '{internal,any}', proargmodes
=> '{i,v}',
11543 prosrc
=> 'hypothetical_rank_final' },
11544 { oid
=> '3988', descr
=> 'fractional rank of hypothetical row',
11545 proname
=> 'percent_rank', provariadic
=> 'any', prokind
=> 'a',
11546 proisstrict
=> 'f', prorettype
=> 'float8', proargtypes
=> 'any',
11547 proallargtypes
=> '{any}', proargmodes
=> '{v}',
11548 prosrc
=> 'aggregate_dummy' },
11549 { oid
=> '3989', descr
=> 'aggregate final function',
11550 proname
=> 'percent_rank_final', provariadic
=> 'any', proisstrict
=> 'f',
11551 prorettype
=> 'float8', proargtypes
=> 'internal any',
11552 proallargtypes
=> '{internal,any}', proargmodes
=> '{i,v}',
11553 prosrc
=> 'hypothetical_percent_rank_final' },
11554 { oid
=> '3990', descr
=> 'cumulative distribution of hypothetical row',
11555 proname
=> 'cume_dist', provariadic
=> 'any', prokind
=> 'a',
11556 proisstrict
=> 'f', prorettype
=> 'float8', proargtypes
=> 'any',
11557 proallargtypes
=> '{any}', proargmodes
=> '{v}',
11558 prosrc
=> 'aggregate_dummy' },
11559 { oid
=> '3991', descr
=> 'aggregate final function',
11560 proname
=> 'cume_dist_final', provariadic
=> 'any', proisstrict
=> 'f',
11561 prorettype
=> 'float8', proargtypes
=> 'internal any',
11562 proallargtypes
=> '{internal,any}', proargmodes
=> '{i,v}',
11563 prosrc
=> 'hypothetical_cume_dist_final' },
11564 { oid
=> '3992', descr
=> 'rank of hypothetical row without gaps',
11565 proname
=> 'dense_rank', provariadic
=> 'any', prokind
=> 'a',
11566 proisstrict
=> 'f', prorettype
=> 'int8', proargtypes
=> 'any',
11567 proallargtypes
=> '{any}', proargmodes
=> '{v}',
11568 prosrc
=> 'aggregate_dummy' },
11569 { oid
=> '3993', descr
=> 'aggregate final function',
11570 proname
=> 'dense_rank_final', provariadic
=> 'any', proisstrict
=> 'f',
11571 prorettype
=> 'int8', proargtypes
=> 'internal any',
11572 proallargtypes
=> '{internal,any}', proargmodes
=> '{i,v}',
11573 prosrc
=> 'hypothetical_dense_rank_final' },
11575 # pg_upgrade support
11576 { oid
=> '3582', descr
=> 'for use by pg_upgrade',
11577 proname
=> 'binary_upgrade_set_next_pg_type_oid', provolatile
=> 'v',
11578 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11579 prosrc
=> 'binary_upgrade_set_next_pg_type_oid' },
11580 { oid
=> '3584', descr
=> 'for use by pg_upgrade',
11581 proname
=> 'binary_upgrade_set_next_array_pg_type_oid', provolatile
=> 'v',
11582 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11583 prosrc
=> 'binary_upgrade_set_next_array_pg_type_oid' },
11584 { oid
=> '4390', descr
=> 'for use by pg_upgrade',
11585 proname
=> 'binary_upgrade_set_next_multirange_pg_type_oid',
11586 provolatile
=> 'v', proparallel
=> 'r', prorettype
=> 'void',
11587 proargtypes
=> 'oid',
11588 prosrc
=> 'binary_upgrade_set_next_multirange_pg_type_oid' },
11589 { oid
=> '4391', descr
=> 'for use by pg_upgrade',
11590 proname
=> 'binary_upgrade_set_next_multirange_array_pg_type_oid',
11591 provolatile
=> 'v', proparallel
=> 'r', prorettype
=> 'void',
11592 proargtypes
=> 'oid',
11593 prosrc
=> 'binary_upgrade_set_next_multirange_array_pg_type_oid' },
11594 { oid
=> '3586', descr
=> 'for use by pg_upgrade',
11595 proname
=> 'binary_upgrade_set_next_heap_pg_class_oid', provolatile
=> 'v',
11596 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11597 prosrc
=> 'binary_upgrade_set_next_heap_pg_class_oid' },
11598 { oid
=> '3587', descr
=> 'for use by pg_upgrade',
11599 proname
=> 'binary_upgrade_set_next_index_pg_class_oid', provolatile
=> 'v',
11600 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11601 prosrc
=> 'binary_upgrade_set_next_index_pg_class_oid' },
11602 { oid
=> '3588', descr
=> 'for use by pg_upgrade',
11603 proname
=> 'binary_upgrade_set_next_toast_pg_class_oid', provolatile
=> 'v',
11604 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11605 prosrc
=> 'binary_upgrade_set_next_toast_pg_class_oid' },
11606 { oid
=> '3589', descr
=> 'for use by pg_upgrade',
11607 proname
=> 'binary_upgrade_set_next_pg_enum_oid', provolatile
=> 'v',
11608 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11609 prosrc
=> 'binary_upgrade_set_next_pg_enum_oid' },
11610 { oid
=> '3590', descr
=> 'for use by pg_upgrade',
11611 proname
=> 'binary_upgrade_set_next_pg_authid_oid', provolatile
=> 'v',
11612 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'oid',
11613 prosrc
=> 'binary_upgrade_set_next_pg_authid_oid' },
11614 { oid
=> '3591', descr
=> 'for use by pg_upgrade',
11615 proname
=> 'binary_upgrade_create_empty_extension', proisstrict
=> 'f',
11616 provolatile
=> 'v', proparallel
=> 'u', prorettype
=> 'void',
11617 proargtypes
=> 'text text bool text _oid _text _text',
11618 prosrc
=> 'binary_upgrade_create_empty_extension' },
11619 { oid
=> '4083', descr
=> 'for use by pg_upgrade',
11620 proname
=> 'binary_upgrade_set_record_init_privs', provolatile
=> 'v',
11621 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'bool',
11622 prosrc
=> 'binary_upgrade_set_record_init_privs' },
11623 { oid
=> '4101', descr
=> 'for use by pg_upgrade',
11624 proname
=> 'binary_upgrade_set_missing_value', provolatile
=> 'v',
11625 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'oid text text',
11626 prosrc
=> 'binary_upgrade_set_missing_value' },
11627 { oid
=> '4545', descr
=> 'for use by pg_upgrade',
11628 proname
=> 'binary_upgrade_set_next_heap_relfilenode', provolatile
=> 'v',
11629 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'oid',
11630 prosrc
=> 'binary_upgrade_set_next_heap_relfilenode' },
11631 { oid
=> '4546', descr
=> 'for use by pg_upgrade',
11632 proname
=> 'binary_upgrade_set_next_index_relfilenode', provolatile
=> 'v',
11633 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'oid',
11634 prosrc
=> 'binary_upgrade_set_next_index_relfilenode' },
11635 { oid
=> '4547', descr
=> 'for use by pg_upgrade',
11636 proname
=> 'binary_upgrade_set_next_toast_relfilenode', provolatile
=> 'v',
11637 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'oid',
11638 prosrc
=> 'binary_upgrade_set_next_toast_relfilenode' },
11639 { oid
=> '4548', descr
=> 'for use by pg_upgrade',
11640 proname
=> 'binary_upgrade_set_next_pg_tablespace_oid', provolatile
=> 'v',
11641 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'oid',
11642 prosrc
=> 'binary_upgrade_set_next_pg_tablespace_oid' },
11643 { oid
=> '6312', descr
=> 'for use by pg_upgrade',
11644 proname
=> 'binary_upgrade_logical_slot_has_caught_up', provolatile
=> 'v',
11645 proparallel
=> 'u', prorettype
=> 'bool', proargtypes
=> 'name',
11646 prosrc
=> 'binary_upgrade_logical_slot_has_caught_up' },
11648 descr
=> 'for use by pg_upgrade (relation for pg_subscription_rel)',
11649 proname
=> 'binary_upgrade_add_sub_rel_state', proisstrict
=> 'f',
11650 provolatile
=> 'v', proparallel
=> 'u', prorettype
=> 'void',
11651 proargtypes
=> 'text oid char pg_lsn',
11652 prosrc
=> 'binary_upgrade_add_sub_rel_state' },
11653 { oid
=> '6320', descr
=> 'for use by pg_upgrade (remote_lsn for origin)',
11654 proname
=> 'binary_upgrade_replorigin_advance', proisstrict
=> 'f',
11655 provolatile
=> 'v', proparallel
=> 'u', prorettype
=> 'void',
11656 proargtypes
=> 'text pg_lsn', prosrc
=> 'binary_upgrade_replorigin_advance' },
11658 # conversion functions
11660 descr
=> 'internal conversion function for KOI8R to MULE_INTERNAL',
11661 proname
=> 'koi8r_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11662 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11663 prosrc
=> 'koi8r_to_mic', probin
=> '$libdir/cyrillic_and_mic' },
11665 descr
=> 'internal conversion function for MULE_INTERNAL to KOI8R',
11666 proname
=> 'mic_to_koi8r', prolang
=> 'c', prorettype
=> 'int4',
11667 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11668 prosrc
=> 'mic_to_koi8r', probin
=> '$libdir/cyrillic_and_mic' },
11670 descr
=> 'internal conversion function for ISO-8859-5 to MULE_INTERNAL',
11671 proname
=> 'iso_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11672 proargtypes
=> 'int4 int4 cstring internal int4 bool', prosrc
=> 'iso_to_mic',
11673 probin
=> '$libdir/cyrillic_and_mic' },
11675 descr
=> 'internal conversion function for MULE_INTERNAL to ISO-8859-5',
11676 proname
=> 'mic_to_iso', prolang
=> 'c', prorettype
=> 'int4',
11677 proargtypes
=> 'int4 int4 cstring internal int4 bool', prosrc
=> 'mic_to_iso',
11678 probin
=> '$libdir/cyrillic_and_mic' },
11680 descr
=> 'internal conversion function for WIN1251 to MULE_INTERNAL',
11681 proname
=> 'win1251_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11682 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11683 prosrc
=> 'win1251_to_mic', probin
=> '$libdir/cyrillic_and_mic' },
11685 descr
=> 'internal conversion function for MULE_INTERNAL to WIN1251',
11686 proname
=> 'mic_to_win1251', prolang
=> 'c', prorettype
=> 'int4',
11687 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11688 prosrc
=> 'mic_to_win1251', probin
=> '$libdir/cyrillic_and_mic' },
11690 descr
=> 'internal conversion function for WIN866 to MULE_INTERNAL',
11691 proname
=> 'win866_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11692 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11693 prosrc
=> 'win866_to_mic', probin
=> '$libdir/cyrillic_and_mic' },
11695 descr
=> 'internal conversion function for MULE_INTERNAL to WIN866',
11696 proname
=> 'mic_to_win866', prolang
=> 'c', prorettype
=> 'int4',
11697 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11698 prosrc
=> 'mic_to_win866', probin
=> '$libdir/cyrillic_and_mic' },
11699 { oid
=> '4310', descr
=> 'internal conversion function for KOI8R to WIN1251',
11700 proname
=> 'koi8r_to_win1251', prolang
=> 'c', prorettype
=> 'int4',
11701 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11702 prosrc
=> 'koi8r_to_win1251', probin
=> '$libdir/cyrillic_and_mic' },
11703 { oid
=> '4311', descr
=> 'internal conversion function for WIN1251 to KOI8R',
11704 proname
=> 'win1251_to_koi8r', prolang
=> 'c', prorettype
=> 'int4',
11705 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11706 prosrc
=> 'win1251_to_koi8r', probin
=> '$libdir/cyrillic_and_mic' },
11707 { oid
=> '4312', descr
=> 'internal conversion function for KOI8R to WIN866',
11708 proname
=> 'koi8r_to_win866', prolang
=> 'c', prorettype
=> 'int4',
11709 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11710 prosrc
=> 'koi8r_to_win866', probin
=> '$libdir/cyrillic_and_mic' },
11711 { oid
=> '4313', descr
=> 'internal conversion function for WIN866 to KOI8R',
11712 proname
=> 'win866_to_koi8r', prolang
=> 'c', prorettype
=> 'int4',
11713 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11714 prosrc
=> 'win866_to_koi8r', probin
=> '$libdir/cyrillic_and_mic' },
11716 descr
=> 'internal conversion function for WIN866 to WIN1251',
11717 proname
=> 'win866_to_win1251', prolang
=> 'c', prorettype
=> 'int4',
11718 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11719 prosrc
=> 'win866_to_win1251', probin
=> '$libdir/cyrillic_and_mic' },
11721 descr
=> 'internal conversion function for WIN1251 to WIN866',
11722 proname
=> 'win1251_to_win866', prolang
=> 'c', prorettype
=> 'int4',
11723 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11724 prosrc
=> 'win1251_to_win866', probin
=> '$libdir/cyrillic_and_mic' },
11726 descr
=> 'internal conversion function for ISO-8859-5 to KOI8R',
11727 proname
=> 'iso_to_koi8r', prolang
=> 'c', prorettype
=> 'int4',
11728 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11729 prosrc
=> 'iso_to_koi8r', probin
=> '$libdir/cyrillic_and_mic' },
11731 descr
=> 'internal conversion function for KOI8R to ISO-8859-5',
11732 proname
=> 'koi8r_to_iso', prolang
=> 'c', prorettype
=> 'int4',
11733 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11734 prosrc
=> 'koi8r_to_iso', probin
=> '$libdir/cyrillic_and_mic' },
11736 descr
=> 'internal conversion function for ISO-8859-5 to WIN1251',
11737 proname
=> 'iso_to_win1251', prolang
=> 'c', prorettype
=> 'int4',
11738 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11739 prosrc
=> 'iso_to_win1251', probin
=> '$libdir/cyrillic_and_mic' },
11741 descr
=> 'internal conversion function for WIN1251 to ISO-8859-5',
11742 proname
=> 'win1251_to_iso', prolang
=> 'c', prorettype
=> 'int4',
11743 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11744 prosrc
=> 'win1251_to_iso', probin
=> '$libdir/cyrillic_and_mic' },
11746 descr
=> 'internal conversion function for ISO-8859-5 to WIN866',
11747 proname
=> 'iso_to_win866', prolang
=> 'c', prorettype
=> 'int4',
11748 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11749 prosrc
=> 'iso_to_win866', probin
=> '$libdir/cyrillic_and_mic' },
11751 descr
=> 'internal conversion function for WIN866 to ISO-8859-5',
11752 proname
=> 'win866_to_iso', prolang
=> 'c', prorettype
=> 'int4',
11753 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11754 prosrc
=> 'win866_to_iso', probin
=> '$libdir/cyrillic_and_mic' },
11756 descr
=> 'internal conversion function for EUC_CN to MULE_INTERNAL',
11757 proname
=> 'euc_cn_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11758 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11759 prosrc
=> 'euc_cn_to_mic', probin
=> '$libdir/euc_cn_and_mic' },
11761 descr
=> 'internal conversion function for MULE_INTERNAL to EUC_CN',
11762 proname
=> 'mic_to_euc_cn', prolang
=> 'c', prorettype
=> 'int4',
11763 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11764 prosrc
=> 'mic_to_euc_cn', probin
=> '$libdir/euc_cn_and_mic' },
11765 { oid
=> '4324', descr
=> 'internal conversion function for EUC_JP to SJIS',
11766 proname
=> 'euc_jp_to_sjis', prolang
=> 'c', prorettype
=> 'int4',
11767 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11768 prosrc
=> 'euc_jp_to_sjis', probin
=> '$libdir/euc_jp_and_sjis' },
11769 { oid
=> '4325', descr
=> 'internal conversion function for SJIS to EUC_JP',
11770 proname
=> 'sjis_to_euc_jp', prolang
=> 'c', prorettype
=> 'int4',
11771 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11772 prosrc
=> 'sjis_to_euc_jp', probin
=> '$libdir/euc_jp_and_sjis' },
11774 descr
=> 'internal conversion function for EUC_JP to MULE_INTERNAL',
11775 proname
=> 'euc_jp_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11776 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11777 prosrc
=> 'euc_jp_to_mic', probin
=> '$libdir/euc_jp_and_sjis' },
11779 descr
=> 'internal conversion function for SJIS to MULE_INTERNAL',
11780 proname
=> 'sjis_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11781 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11782 prosrc
=> 'sjis_to_mic', probin
=> '$libdir/euc_jp_and_sjis' },
11784 descr
=> 'internal conversion function for MULE_INTERNAL to EUC_JP',
11785 proname
=> 'mic_to_euc_jp', prolang
=> 'c', prorettype
=> 'int4',
11786 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11787 prosrc
=> 'mic_to_euc_jp', probin
=> '$libdir/euc_jp_and_sjis' },
11789 descr
=> 'internal conversion function for MULE_INTERNAL to SJIS',
11790 proname
=> 'mic_to_sjis', prolang
=> 'c', prorettype
=> 'int4',
11791 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11792 prosrc
=> 'mic_to_sjis', probin
=> '$libdir/euc_jp_and_sjis' },
11794 descr
=> 'internal conversion function for EUC_KR to MULE_INTERNAL',
11795 proname
=> 'euc_kr_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11796 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11797 prosrc
=> 'euc_kr_to_mic', probin
=> '$libdir/euc_kr_and_mic' },
11799 descr
=> 'internal conversion function for MULE_INTERNAL to EUC_KR',
11800 proname
=> 'mic_to_euc_kr', prolang
=> 'c', prorettype
=> 'int4',
11801 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11802 prosrc
=> 'mic_to_euc_kr', probin
=> '$libdir/euc_kr_and_mic' },
11803 { oid
=> '4332', descr
=> 'internal conversion function for EUC_TW to BIG5',
11804 proname
=> 'euc_tw_to_big5', prolang
=> 'c', prorettype
=> 'int4',
11805 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11806 prosrc
=> 'euc_tw_to_big5', probin
=> '$libdir/euc_tw_and_big5' },
11807 { oid
=> '4333', descr
=> 'internal conversion function for BIG5 to EUC_TW',
11808 proname
=> 'big5_to_euc_tw', prolang
=> 'c', prorettype
=> 'int4',
11809 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11810 prosrc
=> 'big5_to_euc_tw', probin
=> '$libdir/euc_tw_and_big5' },
11812 descr
=> 'internal conversion function for EUC_TW to MULE_INTERNAL',
11813 proname
=> 'euc_tw_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11814 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11815 prosrc
=> 'euc_tw_to_mic', probin
=> '$libdir/euc_tw_and_big5' },
11817 descr
=> 'internal conversion function for BIG5 to MULE_INTERNAL',
11818 proname
=> 'big5_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11819 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11820 prosrc
=> 'big5_to_mic', probin
=> '$libdir/euc_tw_and_big5' },
11822 descr
=> 'internal conversion function for MULE_INTERNAL to EUC_TW',
11823 proname
=> 'mic_to_euc_tw', prolang
=> 'c', prorettype
=> 'int4',
11824 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11825 prosrc
=> 'mic_to_euc_tw', probin
=> '$libdir/euc_tw_and_big5' },
11827 descr
=> 'internal conversion function for MULE_INTERNAL to BIG5',
11828 proname
=> 'mic_to_big5', prolang
=> 'c', prorettype
=> 'int4',
11829 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11830 prosrc
=> 'mic_to_big5', probin
=> '$libdir/euc_tw_and_big5' },
11832 descr
=> 'internal conversion function for LATIN2 to MULE_INTERNAL',
11833 proname
=> 'latin2_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11834 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11835 prosrc
=> 'latin2_to_mic', probin
=> '$libdir/latin2_and_win1250' },
11837 descr
=> 'internal conversion function for MULE_INTERNAL to LATIN2',
11838 proname
=> 'mic_to_latin2', prolang
=> 'c', prorettype
=> 'int4',
11839 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11840 prosrc
=> 'mic_to_latin2', probin
=> '$libdir/latin2_and_win1250' },
11842 descr
=> 'internal conversion function for WIN1250 to MULE_INTERNAL',
11843 proname
=> 'win1250_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11844 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11845 prosrc
=> 'win1250_to_mic', probin
=> '$libdir/latin2_and_win1250' },
11847 descr
=> 'internal conversion function for MULE_INTERNAL to WIN1250',
11848 proname
=> 'mic_to_win1250', prolang
=> 'c', prorettype
=> 'int4',
11849 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11850 prosrc
=> 'mic_to_win1250', probin
=> '$libdir/latin2_and_win1250' },
11852 descr
=> 'internal conversion function for LATIN2 to WIN1250',
11853 proname
=> 'latin2_to_win1250', prolang
=> 'c', prorettype
=> 'int4',
11854 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11855 prosrc
=> 'latin2_to_win1250', probin
=> '$libdir/latin2_and_win1250' },
11857 descr
=> 'internal conversion function for WIN1250 to LATIN2',
11858 proname
=> 'win1250_to_latin2', prolang
=> 'c', prorettype
=> 'int4',
11859 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11860 prosrc
=> 'win1250_to_latin2', probin
=> '$libdir/latin2_and_win1250' },
11862 descr
=> 'internal conversion function for LATIN1 to MULE_INTERNAL',
11863 proname
=> 'latin1_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11864 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11865 prosrc
=> 'latin1_to_mic', probin
=> '$libdir/latin_and_mic' },
11867 descr
=> 'internal conversion function for MULE_INTERNAL to LATIN1',
11868 proname
=> 'mic_to_latin1', prolang
=> 'c', prorettype
=> 'int4',
11869 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11870 prosrc
=> 'mic_to_latin1', probin
=> '$libdir/latin_and_mic' },
11872 descr
=> 'internal conversion function for LATIN3 to MULE_INTERNAL',
11873 proname
=> 'latin3_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11874 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11875 prosrc
=> 'latin3_to_mic', probin
=> '$libdir/latin_and_mic' },
11877 descr
=> 'internal conversion function for MULE_INTERNAL to LATIN3',
11878 proname
=> 'mic_to_latin3', prolang
=> 'c', prorettype
=> 'int4',
11879 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11880 prosrc
=> 'mic_to_latin3', probin
=> '$libdir/latin_and_mic' },
11882 descr
=> 'internal conversion function for LATIN4 to MULE_INTERNAL',
11883 proname
=> 'latin4_to_mic', prolang
=> 'c', prorettype
=> 'int4',
11884 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11885 prosrc
=> 'latin4_to_mic', probin
=> '$libdir/latin_and_mic' },
11887 descr
=> 'internal conversion function for MULE_INTERNAL to LATIN4',
11888 proname
=> 'mic_to_latin4', prolang
=> 'c', prorettype
=> 'int4',
11889 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11890 prosrc
=> 'mic_to_latin4', probin
=> '$libdir/latin_and_mic' },
11891 { oid
=> '4352', descr
=> 'internal conversion function for BIG5 to UTF8',
11892 proname
=> 'big5_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11893 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11894 prosrc
=> 'big5_to_utf8', probin
=> '$libdir/utf8_and_big5' },
11895 { oid
=> '4353', descr
=> 'internal conversion function for UTF8 to BIG5',
11896 proname
=> 'utf8_to_big5', prolang
=> 'c', prorettype
=> 'int4',
11897 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11898 prosrc
=> 'utf8_to_big5', probin
=> '$libdir/utf8_and_big5' },
11899 { oid
=> '4354', descr
=> 'internal conversion function for UTF8 to KOI8R',
11900 proname
=> 'utf8_to_koi8r', prolang
=> 'c', prorettype
=> 'int4',
11901 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11902 prosrc
=> 'utf8_to_koi8r', probin
=> '$libdir/utf8_and_cyrillic' },
11903 { oid
=> '4355', descr
=> 'internal conversion function for KOI8R to UTF8',
11904 proname
=> 'koi8r_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11905 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11906 prosrc
=> 'koi8r_to_utf8', probin
=> '$libdir/utf8_and_cyrillic' },
11907 { oid
=> '4356', descr
=> 'internal conversion function for UTF8 to KOI8U',
11908 proname
=> 'utf8_to_koi8u', prolang
=> 'c', prorettype
=> 'int4',
11909 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11910 prosrc
=> 'utf8_to_koi8u', probin
=> '$libdir/utf8_and_cyrillic' },
11911 { oid
=> '4357', descr
=> 'internal conversion function for KOI8U to UTF8',
11912 proname
=> 'koi8u_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11913 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11914 prosrc
=> 'koi8u_to_utf8', probin
=> '$libdir/utf8_and_cyrillic' },
11915 { oid
=> '4358', descr
=> 'internal conversion function for UTF8 to WIN',
11916 proname
=> 'utf8_to_win', prolang
=> 'c', prorettype
=> 'int4',
11917 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11918 prosrc
=> 'utf8_to_win', probin
=> '$libdir/utf8_and_win' },
11919 { oid
=> '4359', descr
=> 'internal conversion function for WIN to UTF8',
11920 proname
=> 'win_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11921 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11922 prosrc
=> 'win_to_utf8', probin
=> '$libdir/utf8_and_win' },
11923 { oid
=> '4360', descr
=> 'internal conversion function for EUC_CN to UTF8',
11924 proname
=> 'euc_cn_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11925 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11926 prosrc
=> 'euc_cn_to_utf8', probin
=> '$libdir/utf8_and_euc_cn' },
11927 { oid
=> '4361', descr
=> 'internal conversion function for UTF8 to EUC_CN',
11928 proname
=> 'utf8_to_euc_cn', prolang
=> 'c', prorettype
=> 'int4',
11929 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11930 prosrc
=> 'utf8_to_euc_cn', probin
=> '$libdir/utf8_and_euc_cn' },
11931 { oid
=> '4362', descr
=> 'internal conversion function for EUC_JP to UTF8',
11932 proname
=> 'euc_jp_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11933 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11934 prosrc
=> 'euc_jp_to_utf8', probin
=> '$libdir/utf8_and_euc_jp' },
11935 { oid
=> '4363', descr
=> 'internal conversion function for UTF8 to EUC_JP',
11936 proname
=> 'utf8_to_euc_jp', prolang
=> 'c', prorettype
=> 'int4',
11937 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11938 prosrc
=> 'utf8_to_euc_jp', probin
=> '$libdir/utf8_and_euc_jp' },
11939 { oid
=> '4364', descr
=> 'internal conversion function for EUC_KR to UTF8',
11940 proname
=> 'euc_kr_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11941 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11942 prosrc
=> 'euc_kr_to_utf8', probin
=> '$libdir/utf8_and_euc_kr' },
11943 { oid
=> '4365', descr
=> 'internal conversion function for UTF8 to EUC_KR',
11944 proname
=> 'utf8_to_euc_kr', prolang
=> 'c', prorettype
=> 'int4',
11945 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11946 prosrc
=> 'utf8_to_euc_kr', probin
=> '$libdir/utf8_and_euc_kr' },
11947 { oid
=> '4366', descr
=> 'internal conversion function for EUC_TW to UTF8',
11948 proname
=> 'euc_tw_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11949 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11950 prosrc
=> 'euc_tw_to_utf8', probin
=> '$libdir/utf8_and_euc_tw' },
11951 { oid
=> '4367', descr
=> 'internal conversion function for UTF8 to EUC_TW',
11952 proname
=> 'utf8_to_euc_tw', prolang
=> 'c', prorettype
=> 'int4',
11953 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11954 prosrc
=> 'utf8_to_euc_tw', probin
=> '$libdir/utf8_and_euc_tw' },
11955 { oid
=> '4368', descr
=> 'internal conversion function for GB18030 to UTF8',
11956 proname
=> 'gb18030_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11957 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11958 prosrc
=> 'gb18030_to_utf8', probin
=> '$libdir/utf8_and_gb18030' },
11959 { oid
=> '4369', descr
=> 'internal conversion function for UTF8 to GB18030',
11960 proname
=> 'utf8_to_gb18030', prolang
=> 'c', prorettype
=> 'int4',
11961 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11962 prosrc
=> 'utf8_to_gb18030', probin
=> '$libdir/utf8_and_gb18030' },
11963 { oid
=> '4370', descr
=> 'internal conversion function for GBK to UTF8',
11964 proname
=> 'gbk_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11965 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11966 prosrc
=> 'gbk_to_utf8', probin
=> '$libdir/utf8_and_gbk' },
11967 { oid
=> '4371', descr
=> 'internal conversion function for UTF8 to GBK',
11968 proname
=> 'utf8_to_gbk', prolang
=> 'c', prorettype
=> 'int4',
11969 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11970 prosrc
=> 'utf8_to_gbk', probin
=> '$libdir/utf8_and_gbk' },
11972 descr
=> 'internal conversion function for UTF8 to ISO-8859 2-16',
11973 proname
=> 'utf8_to_iso8859', prolang
=> 'c', prorettype
=> 'int4',
11974 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11975 prosrc
=> 'utf8_to_iso8859', probin
=> '$libdir/utf8_and_iso8859' },
11977 descr
=> 'internal conversion function for ISO-8859 2-16 to UTF8',
11978 proname
=> 'iso8859_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11979 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11980 prosrc
=> 'iso8859_to_utf8', probin
=> '$libdir/utf8_and_iso8859' },
11981 { oid
=> '4374', descr
=> 'internal conversion function for LATIN1 to UTF8',
11982 proname
=> 'iso8859_1_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11983 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11984 prosrc
=> 'iso8859_1_to_utf8', probin
=> '$libdir/utf8_and_iso8859_1' },
11985 { oid
=> '4375', descr
=> 'internal conversion function for UTF8 to LATIN1',
11986 proname
=> 'utf8_to_iso8859_1', prolang
=> 'c', prorettype
=> 'int4',
11987 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11988 prosrc
=> 'utf8_to_iso8859_1', probin
=> '$libdir/utf8_and_iso8859_1' },
11989 { oid
=> '4376', descr
=> 'internal conversion function for JOHAB to UTF8',
11990 proname
=> 'johab_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11991 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11992 prosrc
=> 'johab_to_utf8', probin
=> '$libdir/utf8_and_johab' },
11993 { oid
=> '4377', descr
=> 'internal conversion function for UTF8 to JOHAB',
11994 proname
=> 'utf8_to_johab', prolang
=> 'c', prorettype
=> 'int4',
11995 proargtypes
=> 'int4 int4 cstring internal int4 bool',
11996 prosrc
=> 'utf8_to_johab', probin
=> '$libdir/utf8_and_johab' },
11997 { oid
=> '4378', descr
=> 'internal conversion function for SJIS to UTF8',
11998 proname
=> 'sjis_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
11999 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12000 prosrc
=> 'sjis_to_utf8', probin
=> '$libdir/utf8_and_sjis' },
12001 { oid
=> '4379', descr
=> 'internal conversion function for UTF8 to SJIS',
12002 proname
=> 'utf8_to_sjis', prolang
=> 'c', prorettype
=> 'int4',
12003 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12004 prosrc
=> 'utf8_to_sjis', probin
=> '$libdir/utf8_and_sjis' },
12005 { oid
=> '4380', descr
=> 'internal conversion function for UHC to UTF8',
12006 proname
=> 'uhc_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
12007 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12008 prosrc
=> 'uhc_to_utf8', probin
=> '$libdir/utf8_and_uhc' },
12009 { oid
=> '4381', descr
=> 'internal conversion function for UTF8 to UHC',
12010 proname
=> 'utf8_to_uhc', prolang
=> 'c', prorettype
=> 'int4',
12011 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12012 prosrc
=> 'utf8_to_uhc', probin
=> '$libdir/utf8_and_uhc' },
12014 descr
=> 'internal conversion function for EUC_JIS_2004 to UTF8',
12015 proname
=> 'euc_jis_2004_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
12016 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12017 prosrc
=> 'euc_jis_2004_to_utf8', probin
=> '$libdir/utf8_and_euc2004' },
12019 descr
=> 'internal conversion function for UTF8 to EUC_JIS_2004',
12020 proname
=> 'utf8_to_euc_jis_2004', prolang
=> 'c', prorettype
=> 'int4',
12021 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12022 prosrc
=> 'utf8_to_euc_jis_2004', probin
=> '$libdir/utf8_and_euc2004' },
12024 descr
=> 'internal conversion function for SHIFT_JIS_2004 to UTF8',
12025 proname
=> 'shift_jis_2004_to_utf8', prolang
=> 'c', prorettype
=> 'int4',
12026 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12027 prosrc
=> 'shift_jis_2004_to_utf8', probin
=> '$libdir/utf8_and_sjis2004' },
12029 descr
=> 'internal conversion function for UTF8 to SHIFT_JIS_2004',
12030 proname
=> 'utf8_to_shift_jis_2004', prolang
=> 'c', prorettype
=> 'int4',
12031 proargtypes
=> 'int4 int4 cstring internal int4 bool',
12032 prosrc
=> 'utf8_to_shift_jis_2004', probin
=> '$libdir/utf8_and_sjis2004' },
12034 descr
=> 'internal conversion function for EUC_JIS_2004 to SHIFT_JIS_2004',
12035 proname
=> 'euc_jis_2004_to_shift_jis_2004', prolang
=> 'c',
12036 prorettype
=> 'int4', proargtypes
=> 'int4 int4 cstring internal int4 bool',
12037 prosrc
=> 'euc_jis_2004_to_shift_jis_2004',
12038 probin
=> '$libdir/euc2004_sjis2004' },
12040 descr
=> 'internal conversion function for SHIFT_JIS_2004 to EUC_JIS_2004',
12041 proname
=> 'shift_jis_2004_to_euc_jis_2004', prolang
=> 'c',
12042 prorettype
=> 'int4', proargtypes
=> 'int4 int4 cstring internal int4 bool',
12043 prosrc
=> 'shift_jis_2004_to_euc_jis_2004',
12044 probin
=> '$libdir/euc2004_sjis2004' },
12047 descr
=> 'restriction selectivity for generic matching operators',
12048 proname
=> 'matchingsel', provolatile
=> 's', prorettype
=> 'float8',
12049 proargtypes
=> 'internal oid internal int4', prosrc
=> 'matchingsel' },
12050 { oid
=> '5041', descr
=> 'join selectivity for generic matching operators',
12051 proname
=> 'matchingjoinsel', provolatile
=> 's', prorettype
=> 'float8',
12052 proargtypes
=> 'internal oid internal int2 internal',
12053 prosrc
=> 'matchingjoinsel' },
12055 # replication/origin.h
12056 { oid
=> '6003', descr
=> 'create a replication origin',
12057 proname
=> 'pg_replication_origin_create', provolatile
=> 'v',
12058 proparallel
=> 'u', prorettype
=> 'oid', proargtypes
=> 'text',
12059 prosrc
=> 'pg_replication_origin_create' },
12061 { oid
=> '6004', descr
=> 'drop replication origin identified by its name',
12062 proname
=> 'pg_replication_origin_drop', provolatile
=> 'v',
12063 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'text',
12064 prosrc
=> 'pg_replication_origin_drop' },
12067 descr
=> 'translate the replication origin\'s name to its id',
12068 proname
=> 'pg_replication_origin_oid', provolatile
=> 's',
12069 prorettype
=> 'oid', proargtypes
=> 'text',
12070 prosrc
=> 'pg_replication_origin_oid' },
12073 descr
=> 'configure session to maintain replication progress tracking for the passed in origin',
12074 proname
=> 'pg_replication_origin_session_setup', provolatile
=> 'v',
12075 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'text',
12076 prosrc
=> 'pg_replication_origin_session_setup' },
12078 { oid
=> '6007', descr
=> 'teardown configured replication progress tracking',
12079 proname
=> 'pg_replication_origin_session_reset', provolatile
=> 'v',
12080 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> '',
12081 prosrc
=> 'pg_replication_origin_session_reset' },
12084 descr
=> 'is a replication origin configured in this session',
12085 proname
=> 'pg_replication_origin_session_is_setup', provolatile
=> 'v',
12086 proparallel
=> 'r', prorettype
=> 'bool', proargtypes
=> '',
12087 prosrc
=> 'pg_replication_origin_session_is_setup' },
12090 descr
=> 'get the replication progress of the current session',
12091 proname
=> 'pg_replication_origin_session_progress', provolatile
=> 'v',
12092 proparallel
=> 'u', prorettype
=> 'pg_lsn', proargtypes
=> 'bool',
12093 prosrc
=> 'pg_replication_origin_session_progress' },
12095 { oid
=> '6010', descr
=> 'setup the transaction\'s origin lsn and timestamp',
12096 proname
=> 'pg_replication_origin_xact_setup', provolatile
=> 'v',
12097 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> 'pg_lsn timestamptz',
12098 prosrc
=> 'pg_replication_origin_xact_setup' },
12100 { oid
=> '6011', descr
=> 'reset the transaction\'s origin lsn and timestamp',
12101 proname
=> 'pg_replication_origin_xact_reset', provolatile
=> 'v',
12102 proparallel
=> 'r', prorettype
=> 'void', proargtypes
=> '',
12103 prosrc
=> 'pg_replication_origin_xact_reset' },
12105 { oid
=> '6012', descr
=> 'advance replication origin to specific location',
12106 proname
=> 'pg_replication_origin_advance', provolatile
=> 'v',
12107 proparallel
=> 'u', prorettype
=> 'void', proargtypes
=> 'text pg_lsn',
12108 prosrc
=> 'pg_replication_origin_advance' },
12111 descr
=> 'get an individual replication origin\'s replication progress',
12112 proname
=> 'pg_replication_origin_progress', provolatile
=> 'v',
12113 proparallel
=> 'u', prorettype
=> 'pg_lsn', proargtypes
=> 'text bool',
12114 prosrc
=> 'pg_replication_origin_progress' },
12116 { oid
=> '6014', descr
=> 'get progress for all replication origins',
12117 proname
=> 'pg_show_replication_origin_status', prorows
=> '100',
12118 proisstrict
=> 'f', proretset
=> 't', provolatile
=> 'v', proparallel
=> 'r',
12119 prorettype
=> 'record', proargtypes
=> '',
12120 proallargtypes
=> '{oid,text,pg_lsn,pg_lsn}', proargmodes
=> '{o,o,o,o}',
12121 proargnames
=> '{local_id, external_id, remote_lsn, local_lsn}',
12122 prosrc
=> 'pg_show_replication_origin_status' },
12126 descr
=> 'get information of the tables that are part of the specified publications',
12127 proname
=> 'pg_get_publication_tables', prorows
=> '1000',
12128 provariadic
=> 'text', proretset
=> 't', provolatile
=> 's',
12129 prorettype
=> 'record', proargtypes
=> '_text',
12130 proallargtypes
=> '{_text,oid,oid,int2vector,pg_node_tree}',
12131 proargmodes
=> '{v,o,o,o,o}',
12132 proargnames
=> '{pubname,pubid,relid,attrs,qual}',
12133 prosrc
=> 'pg_get_publication_tables' },
12135 descr
=> 'returns whether a relation can be part of a publication',
12136 proname
=> 'pg_relation_is_publishable', provolatile
=> 's',
12137 prorettype
=> 'bool', proargtypes
=> 'regclass',
12138 prosrc
=> 'pg_relation_is_publishable' },
12142 descr
=> 'row security for current context active on table by table oid',
12143 proname
=> 'row_security_active', provolatile
=> 's', prorettype
=> 'bool',
12144 proargtypes
=> 'oid', prosrc
=> 'row_security_active' },
12146 descr
=> 'row security for current context active on table by table name',
12147 proname
=> 'row_security_active', provolatile
=> 's', prorettype
=> 'bool',
12148 proargtypes
=> 'text', prosrc
=> 'row_security_active_name' },
12151 { oid
=> '3400', descr
=> 'pg_config binary as a function',
12152 proname
=> 'pg_config', prorows
=> '23', proretset
=> 't', provolatile
=> 's',
12153 proparallel
=> 'r', prorettype
=> 'record', proargtypes
=> '',
12154 proallargtypes
=> '{text,text}', proargmodes
=> '{o,o}',
12155 proargnames
=> '{name,setting}', prosrc
=> 'pg_config' },
12157 # pg_controldata related functions
12159 descr
=> 'pg_controldata general state information as a function',
12160 proname
=> 'pg_control_system', provolatile
=> 'v', prorettype
=> 'record',
12161 proargtypes
=> '', proallargtypes
=> '{int4,int4,int8,timestamptz}',
12162 proargmodes
=> '{o,o,o,o}',
12163 proargnames
=> '{pg_control_version,catalog_version_no,system_identifier,pg_control_last_modified}',
12164 prosrc
=> 'pg_control_system' },
12167 descr
=> 'pg_controldata checkpoint state information as a function',
12168 proname
=> 'pg_control_checkpoint', provolatile
=> 'v',
12169 prorettype
=> 'record', proargtypes
=> '',
12170 proallargtypes
=> '{pg_lsn,pg_lsn,text,int4,int4,bool,text,oid,xid,xid,xid,oid,xid,xid,oid,xid,xid,timestamptz}',
12171 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}',
12172 proargnames
=> '{checkpoint_lsn,redo_lsn,redo_wal_file,timeline_id,prev_timeline_id,full_page_writes,next_xid,next_oid,next_multixact_id,next_multi_offset,oldest_xid,oldest_xid_dbid,oldest_active_xid,oldest_multi_xid,oldest_multi_dbid,oldest_commit_ts_xid,newest_commit_ts_xid,checkpoint_time}',
12173 prosrc
=> 'pg_control_checkpoint' },
12176 descr
=> 'pg_controldata recovery state information as a function',
12177 proname
=> 'pg_control_recovery', provolatile
=> 'v', prorettype
=> 'record',
12178 proargtypes
=> '', proallargtypes
=> '{pg_lsn,int4,pg_lsn,pg_lsn,bool}',
12179 proargmodes
=> '{o,o,o,o,o}',
12180 proargnames
=> '{min_recovery_end_lsn,min_recovery_end_timeline,backup_start_lsn,backup_end_lsn,end_of_backup_record_required}',
12181 prosrc
=> 'pg_control_recovery' },
12184 descr
=> 'pg_controldata init state information as a function',
12185 proname
=> 'pg_control_init', provolatile
=> 'v', prorettype
=> 'record',
12187 proallargtypes
=> '{int4,int4,int4,int4,int4,int4,int4,int4,int4,bool,int4}',
12188 proargmodes
=> '{o,o,o,o,o,o,o,o,o,o,o}',
12189 proargnames
=> '{max_data_alignment,database_block_size,blocks_per_segment,wal_block_size,bytes_per_wal_segment,max_identifier_length,max_index_columns,max_toast_chunk_size,large_object_chunk_size,float8_pass_by_value,data_page_checksum_version}',
12190 prosrc
=> 'pg_control_init' },
12192 # subscripting support for built-in types
12193 { oid
=> '6179', descr
=> 'standard array subscripting support',
12194 proname
=> 'array_subscript_handler', prorettype
=> 'internal',
12195 proargtypes
=> 'internal', prosrc
=> 'array_subscript_handler' },
12196 { oid
=> '6180', descr
=> 'raw array subscripting support',
12197 proname
=> 'raw_array_subscript_handler', prorettype
=> 'internal',
12198 proargtypes
=> 'internal', prosrc
=> 'raw_array_subscript_handler' },
12199 # type subscripting support
12200 { oid
=> '6098', descr
=> 'jsonb subscripting logic',
12201 proname
=> 'jsonb_subscript_handler', prorettype
=> 'internal',
12202 proargtypes
=> 'internal', prosrc
=> 'jsonb_subscript_handler' },
12204 # collation management functions
12205 { oid
=> '3445', descr
=> 'import collations from operating system',
12206 proname
=> 'pg_import_system_collations', procost
=> '100',
12207 provolatile
=> 'v', proparallel
=> 'u', prorettype
=> 'int4',
12208 proargtypes
=> 'regnamespace', prosrc
=> 'pg_import_system_collations' },
12211 descr
=> 'get actual version of collation from operating system',
12212 proname
=> 'pg_collation_actual_version', procost
=> '100',
12213 provolatile
=> 'v', prorettype
=> 'text', proargtypes
=> 'oid',
12214 prosrc
=> 'pg_collation_actual_version' },
12216 descr
=> 'get actual version of database collation from operating system',
12217 proname
=> 'pg_database_collation_actual_version', procost
=> '100',
12218 provolatile
=> 'v', prorettype
=> 'text', proargtypes
=> 'oid',
12219 prosrc
=> 'pg_database_collation_actual_version' },
12221 # system management/monitoring related functions
12222 { oid
=> '3353', descr
=> 'list files in the log directory',
12223 proname
=> 'pg_ls_logdir', procost
=> '10', prorows
=> '20', proretset
=> 't',
12224 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
12225 proallargtypes
=> '{text,int8,timestamptz}', proargmodes
=> '{o,o,o}',
12226 proargnames
=> '{name,size,modification}', prosrc
=> 'pg_ls_logdir' },
12227 { oid
=> '3354', descr
=> 'list of files in the WAL directory',
12228 proname
=> 'pg_ls_waldir', procost
=> '10', prorows
=> '20', proretset
=> 't',
12229 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
12230 proallargtypes
=> '{text,int8,timestamptz}', proargmodes
=> '{o,o,o}',
12231 proargnames
=> '{name,size,modification}', prosrc
=> 'pg_ls_waldir' },
12232 { oid
=> '9220', descr
=> 'list of files in the pg_wal/summaries directory',
12233 proname
=> 'pg_ls_summariesdir', procost
=> '10', prorows
=> '20',
12234 proretset
=> 't', provolatile
=> 'v', prorettype
=> 'record',
12235 proargtypes
=> '', proallargtypes
=> '{text,int8,timestamptz}',
12236 proargmodes
=> '{o,o,o}', proargnames
=> '{name,size,modification}',
12237 prosrc
=> 'pg_ls_summariesdir' },
12238 { oid
=> '5031', descr
=> 'list of files in the archive_status directory',
12239 proname
=> 'pg_ls_archive_statusdir', procost
=> '10', prorows
=> '20',
12240 proretset
=> 't', provolatile
=> 'v', prorettype
=> 'record',
12241 proargtypes
=> '', proallargtypes
=> '{text,int8,timestamptz}',
12242 proargmodes
=> '{o,o,o}', proargnames
=> '{name,size,modification}',
12243 prosrc
=> 'pg_ls_archive_statusdir' },
12244 { oid
=> '5029', descr
=> 'list files in the pgsql_tmp directory',
12245 proname
=> 'pg_ls_tmpdir', procost
=> '10', prorows
=> '20', proretset
=> 't',
12246 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
12247 proallargtypes
=> '{text,int8,timestamptz}', proargmodes
=> '{o,o,o}',
12248 proargnames
=> '{name,size,modification}', prosrc
=> 'pg_ls_tmpdir_noargs' },
12249 { oid
=> '5030', descr
=> 'list files in the pgsql_tmp directory',
12250 proname
=> 'pg_ls_tmpdir', procost
=> '10', prorows
=> '20', proretset
=> 't',
12251 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> 'oid',
12252 proallargtypes
=> '{oid,text,int8,timestamptz}', proargmodes
=> '{i,o,o,o}',
12253 proargnames
=> '{tablespace,name,size,modification}',
12254 prosrc
=> 'pg_ls_tmpdir_1arg' },
12256 descr
=> 'list of files in the pg_logical/snapshots directory',
12257 proname
=> 'pg_ls_logicalsnapdir', procost
=> '10', prorows
=> '20',
12258 proretset
=> 't', provolatile
=> 'v', prorettype
=> 'record',
12259 proargtypes
=> '', proallargtypes
=> '{text,int8,timestamptz}',
12260 proargmodes
=> '{o,o,o}', proargnames
=> '{name,size,modification}',
12261 prosrc
=> 'pg_ls_logicalsnapdir' },
12263 descr
=> 'list of files in the pg_logical/mappings directory',
12264 proname
=> 'pg_ls_logicalmapdir', procost
=> '10', prorows
=> '20',
12265 proretset
=> 't', provolatile
=> 'v', prorettype
=> 'record',
12266 proargtypes
=> '', proallargtypes
=> '{text,int8,timestamptz}',
12267 proargmodes
=> '{o,o,o}', proargnames
=> '{name,size,modification}',
12268 prosrc
=> 'pg_ls_logicalmapdir' },
12270 descr
=> 'list of files in the pg_replslot/slot_name directory',
12271 proname
=> 'pg_ls_replslotdir', procost
=> '10', prorows
=> '20',
12272 proretset
=> 't', provolatile
=> 'v', prorettype
=> 'record',
12273 proargtypes
=> 'text', proallargtypes
=> '{text,text,int8,timestamptz}',
12274 proargmodes
=> '{i,o,o,o}',
12275 proargnames
=> '{slot_name,name,size,modification}',
12276 prosrc
=> 'pg_ls_replslotdir' },
12278 # hash partitioning constraint function
12279 { oid
=> '5028', descr
=> 'hash partition CHECK constraint',
12280 proname
=> 'satisfies_hash_partition', provariadic
=> 'any',
12281 proisstrict
=> 'f', prorettype
=> 'bool', proargtypes
=> 'oid int4 int4 any',
12282 proargmodes
=> '{i,i,i,v}', prosrc
=> 'satisfies_hash_partition' },
12284 # information about a partition tree
12285 { oid
=> '3423', descr
=> 'view partition tree tables',
12286 proname
=> 'pg_partition_tree', prorows
=> '1000', proretset
=> 't',
12287 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> 'regclass',
12288 proallargtypes
=> '{regclass,regclass,regclass,bool,int4}',
12289 proargmodes
=> '{i,o,o,o,o}',
12290 proargnames
=> '{rootrelid,relid,parentrelid,isleaf,level}',
12291 prosrc
=> 'pg_partition_tree' },
12292 { oid
=> '3425', descr
=> 'view ancestors of the partition',
12293 proname
=> 'pg_partition_ancestors', prorows
=> '10', proretset
=> 't',
12294 provolatile
=> 'v', prorettype
=> 'regclass', proargtypes
=> 'regclass',
12295 proallargtypes
=> '{regclass,regclass}', proargmodes
=> '{i,o}',
12296 proargnames
=> '{partitionid,relid}', prosrc
=> 'pg_partition_ancestors' },
12298 # function to get the top-most partition root parent
12299 { oid
=> '3424', descr
=> 'get top-most partition root parent',
12300 proname
=> 'pg_partition_root', prorettype
=> 'regclass',
12301 proargtypes
=> 'regclass', prosrc
=> 'pg_partition_root' },
12303 { oid
=> '4549', descr
=> 'Unicode version used by Postgres',
12304 proname
=> 'unicode_version', prorettype
=> 'text', proargtypes
=> '',
12305 prosrc
=> 'unicode_version' },
12307 { oid
=> '6099', descr
=> 'Unicode version used by ICU, if enabled',
12308 proname
=> 'icu_unicode_version', prorettype
=> 'text', proargtypes
=> '',
12309 prosrc
=> 'icu_unicode_version' },
12311 { oid
=> '6105', descr
=> 'check valid Unicode',
12312 proname
=> 'unicode_assigned', prorettype
=> 'bool', proargtypes
=> 'text',
12313 prosrc
=> 'unicode_assigned' },
12315 { oid
=> '4350', descr
=> 'Unicode normalization',
12316 proname
=> 'normalize', prorettype
=> 'text', proargtypes
=> 'text text',
12317 prosrc
=> 'unicode_normalize_func' },
12319 { oid
=> '4351', descr
=> 'check Unicode normalization',
12320 proname
=> 'is_normalized', prorettype
=> 'bool', proargtypes
=> 'text text',
12321 prosrc
=> 'unicode_is_normalized' },
12323 { oid
=> '6198', descr
=> 'unescape Unicode characters',
12324 proname
=> 'unistr', prorettype
=> 'text', proargtypes
=> 'text',
12325 prosrc
=> 'unistr' },
12327 { oid
=> '4596', descr
=> 'I/O',
12328 proname
=> 'brin_bloom_summary_in', prorettype
=> 'pg_brin_bloom_summary',
12329 proargtypes
=> 'cstring', prosrc
=> 'brin_bloom_summary_in' },
12330 { oid
=> '4597', descr
=> 'I/O',
12331 proname
=> 'brin_bloom_summary_out', prorettype
=> 'cstring',
12332 proargtypes
=> 'pg_brin_bloom_summary', prosrc
=> 'brin_bloom_summary_out' },
12333 { oid
=> '4598', descr
=> 'I/O',
12334 proname
=> 'brin_bloom_summary_recv', provolatile
=> 's',
12335 prorettype
=> 'pg_brin_bloom_summary', proargtypes
=> 'internal',
12336 prosrc
=> 'brin_bloom_summary_recv' },
12337 { oid
=> '4599', descr
=> 'I/O',
12338 proname
=> 'brin_bloom_summary_send', provolatile
=> 's',
12339 prorettype
=> 'bytea', proargtypes
=> 'pg_brin_bloom_summary',
12340 prosrc
=> 'brin_bloom_summary_send' },
12342 { oid
=> '4638', descr
=> 'I/O',
12343 proname
=> 'brin_minmax_multi_summary_in',
12344 prorettype
=> 'pg_brin_minmax_multi_summary', proargtypes
=> 'cstring',
12345 prosrc
=> 'brin_minmax_multi_summary_in' },
12346 { oid
=> '4639', descr
=> 'I/O',
12347 proname
=> 'brin_minmax_multi_summary_out', prorettype
=> 'cstring',
12348 proargtypes
=> 'pg_brin_minmax_multi_summary',
12349 prosrc
=> 'brin_minmax_multi_summary_out' },
12350 { oid
=> '4640', descr
=> 'I/O',
12351 proname
=> 'brin_minmax_multi_summary_recv', provolatile
=> 's',
12352 prorettype
=> 'pg_brin_minmax_multi_summary', proargtypes
=> 'internal',
12353 prosrc
=> 'brin_minmax_multi_summary_recv' },
12354 { oid
=> '4641', descr
=> 'I/O',
12355 proname
=> 'brin_minmax_multi_summary_send', provolatile
=> 's',
12356 prorettype
=> 'bytea', proargtypes
=> 'pg_brin_minmax_multi_summary',
12357 prosrc
=> 'brin_minmax_multi_summary_send' },
12359 { oid
=> '6291', descr
=> 'arbitrary value from among input values',
12360 proname
=> 'any_value', prokind
=> 'a', proisstrict
=> 'f',
12361 prorettype
=> 'anyelement', proargtypes
=> 'anyelement',
12362 prosrc
=> 'aggregate_dummy' },
12363 { oid
=> '6292', descr
=> 'aggregate transition function',
12364 proname
=> 'any_value_transfn', prorettype
=> 'anyelement',
12365 proargtypes
=> 'anyelement anyelement', prosrc
=> 'any_value_transfn' },
12367 { oid
=> '6321', descr
=> 'list of available WAL summary files',
12368 proname
=> 'pg_available_wal_summaries', prorows
=> '100', proretset
=> 't',
12369 provolatile
=> 'v', prorettype
=> 'record', proargtypes
=> '',
12370 proallargtypes
=> '{int8,pg_lsn,pg_lsn}', proargmodes
=> '{o,o,o}',
12371 proargnames
=> '{tli,start_lsn,end_lsn}',
12372 prosrc
=> 'pg_available_wal_summaries' },
12373 { oid
=> '6322', descr
=> 'contents of a WAL summary file',
12374 proname
=> 'pg_wal_summary_contents', prorows
=> '100', proretset
=> 't',
12375 provolatile
=> 'v', prorettype
=> 'record',
12376 proargtypes
=> 'int8 pg_lsn pg_lsn',
12377 proallargtypes
=> '{int8,pg_lsn,pg_lsn,oid,oid,oid,int2,int8,bool}',
12378 proargmodes
=> '{i,i,i,o,o,o,o,o,o}',
12379 proargnames
=> '{tli,start_lsn,end_lsn,relfilenode,reltablespace,reldatabase,relforknumber,relblocknumber,is_limit_block}',
12380 prosrc
=> 'pg_wal_summary_contents' },
12381 { oid
=> '6323', descr
=> 'WAL summarizer state',
12382 proname
=> 'pg_get_wal_summarizer_state', provolatile
=> 'v',
12383 prorettype
=> 'record', proargtypes
=> '',
12384 proallargtypes
=> '{int8,pg_lsn,pg_lsn,int4}', proargmodes
=> '{o,o,o,o}',
12385 proargnames
=> '{summarized_tli,summarized_lsn,pending_lsn,summarizer_pid}',
12386 prosrc
=> 'pg_get_wal_summarizer_state' },
12387 # Statistics Import
12389 descr
=> 'restore statistics on relation',
12390 proname
=> 'pg_restore_relation_stats', provolatile
=> 'v', proisstrict
=> 'f',
12391 provariadic
=> 'any',
12392 proparallel
=> 'u', prorettype
=> 'bool',
12393 proargtypes
=> 'any',
12394 proargnames
=> '{kwargs}',
12395 proargmodes
=> '{v}',
12396 prosrc
=> 'pg_restore_relation_stats' },
12398 descr
=> 'restore statistics on attribute',
12399 proname
=> 'pg_restore_attribute_stats', provolatile
=> 'v', proisstrict
=> 'f',
12400 provariadic
=> 'any',
12401 proparallel
=> 'u', prorettype
=> 'bool',
12402 proargtypes
=> 'any',
12403 proargnames
=> '{kwargs}',
12404 proargmodes
=> '{v}',
12405 prosrc
=> 'pg_restore_attribute_stats' },
12407 descr
=> 'set statistics on attribute',
12408 proname
=> 'pg_set_attribute_stats', provolatile
=> 'v', proisstrict
=> 'f',
12409 proparallel
=> 'u', prorettype
=> 'void',
12410 proargtypes
=> 'regclass name bool float4 int4 float4 text _float4 text float4 text _float4 _float4 text float4 text',
12411 proargnames
=> '{relation,attname,inherited,null_frac,avg_width,n_distinct,most_common_vals,most_common_freqs,histogram_bounds,correlation,most_common_elems,most_common_elem_freqs,elem_count_histogram,range_length_histogram,range_empty_frac,range_bounds_histogram}',
12412 prosrc
=> 'pg_set_attribute_stats' },
12414 descr
=> 'clear statistics on attribute',
12415 proname
=> 'pg_clear_attribute_stats', provolatile
=> 'v', proisstrict
=> 'f',
12416 proparallel
=> 'u', prorettype
=> 'void',
12417 proargtypes
=> 'regclass name bool',
12418 proargnames
=> '{relation,attname,inherited}',
12419 prosrc
=> 'pg_clear_attribute_stats' },
12421 descr
=> 'set statistics on relation',
12422 proname
=> 'pg_set_relation_stats', provolatile
=> 'v', proisstrict
=> 'f',
12423 proparallel
=> 'u', prorettype
=> 'void',
12424 proargtypes
=> 'regclass int4 float4 int4',
12425 proargnames
=> '{relation,relpages,reltuples,relallvisible}',
12426 prosrc
=> 'pg_set_relation_stats' },
12428 descr
=> 'clear statistics on relation',
12429 proname
=> 'pg_clear_relation_stats', provolatile
=> 'v', proisstrict
=> 'f',
12430 proparallel
=> 'u', prorettype
=> 'void',
12431 proargtypes
=> 'regclass',
12432 proargnames
=> '{relation}',
12433 prosrc
=> 'pg_clear_relation_stats' },
12435 # GiST stratnum implementations
12436 { oid
=> '8047', descr
=> 'GiST support',
12437 proname
=> 'gist_stratnum_common', prorettype
=> 'int2',
12438 proargtypes
=> 'int4',
12439 prosrc
=> 'gist_stratnum_common' },