aboutsummaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-03-29 19:44:23 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-03-29 19:44:23 +0000
commit0f085f6e9df81140ee69f29f31f42b2824f0afed (patch)
tree8168bd9aa2e2eaac65dccfde4f7c7286cf569b72 /doc/src
parenteb47ee486538fb0ea81917b3e35d6cff9f7a0ec7 (diff)
downloadpostgresql-0f085f6e9df81140ee69f29f31f42b2824f0afed.tar.gz
postgresql-0f085f6e9df81140ee69f29f31f42b2824f0afed.zip
Add proallargtypes and proargmodes columns to pg_proc, as per my earlier
proposal for OUT parameter support. The columns don't actually *do* anything yet, they are just left NULLs. But I thought I'd commit this part separately as a fairly pure example of the tasks needed when adding a column to pg_proc or one of the other core system tables.
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/bki.sgml3
-rw-r--r--doc/src/sgml/catalogs.sgml40
2 files changed, 39 insertions, 4 deletions
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml
index 867dd421fea..23fb02a8cfc 100644
--- a/doc/src/sgml/bki.sgml
+++ b/doc/src/sgml/bki.sgml
@@ -1,5 +1,5 @@
<!--
-$PostgreSQL: pgsql/doc/src/sgml/bki.sgml,v 1.13 2005/01/05 23:42:03 tgl Exp $
+$PostgreSQL: pgsql/doc/src/sgml/bki.sgml,v 1.14 2005/03/29 19:44:22 tgl Exp $
-->
<chapter id="bki">
@@ -97,6 +97,7 @@ $PostgreSQL: pgsql/doc/src/sgml/bki.sgml,v 1.13 2005/01/05 23:42:03 tgl Exp $
<type>oid</type>, <type>tid</type>, <type>xid</type>,
<type>cid</type>, <type>int2vector</type>, <type>oidvector</type>,
<type>_int4</type> (array), <type>_text</type> (array),
+ <type>_oid</type> (array), <type>_char</type> (array),
<type>_aclitem</type> (array). Although it is possible to create
tables containing columns of other types, this cannot be done until
after <structname>pg_type</> has been created and filled with
diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml
index 946dd53b349..11d774410d3 100644
--- a/doc/src/sgml/catalogs.sgml
+++ b/doc/src/sgml/catalogs.sgml
@@ -1,6 +1,6 @@
<!--
Documentation of the system catalogs, directed toward PostgreSQL developers
- $PostgreSQL: pgsql/doc/src/sgml/catalogs.sgml,v 2.98 2005/03/29 00:16:49 tgl Exp $
+ $PostgreSQL: pgsql/doc/src/sgml/catalogs.sgml,v 2.99 2005/03/29 19:44:22 tgl Exp $
-->
<chapter id="catalogs">
@@ -2855,7 +2855,39 @@
<entry><structfield>proargtypes</structfield></entry>
<entry><type>oidvector</type></entry>
<entry><literal><link linkend="catalog-pg-type"><structname>pg_type</structname></link>.oid</literal></entry>
- <entry>An array with the data types of the function arguments</entry>
+ <entry>
+ An array with the data types of the function arguments. This includes
+ only input arguments (including INOUT arguments), and thus represents
+ the call signature of the function.
+ </entry>
+ </row>
+
+ <row>
+ <entry><structfield>proallargtypes</structfield></entry>
+ <entry><type>oid[]</type></entry>
+ <entry><literal><link linkend="catalog-pg-type"><structname>pg_type</structname></link>.oid</literal></entry>
+ <entry>
+ An array with the data types of the function arguments. This includes
+ all arguments (including OUT and INOUT arguments); however, if all the
+ arguments are IN arguments, this field will be null.
+ Note that subscripting is 1-based, whereas for historical reasons
+ <structfield>proargtypes</> is subscripted from 0.
+ </entry>
+ </row>
+
+ <row>
+ <entry><structfield>proargmodes</structfield></entry>
+ <entry><type>"char"[]</type></entry>
+ <entry></entry>
+ <entry>
+ An array with the modes of the function arguments, encoded as
+ <literal>i</literal> for IN arguments,
+ <literal>o</literal> for OUT arguments,
+ <literal>b</literal> for INOUT arguments.
+ If all the arguments are IN arguments, this field will be null.
+ Note that subscripts correspond to positions of
+ <structfield>proallargtypes</> not <structfield>proargtypes</>.
+ </entry>
</row>
<row>
@@ -2865,7 +2897,9 @@
<entry>
An array with the names of the function arguments.
Arguments without a name are set to empty strings in the array.
- If none of the arguments have a name, this field may be null.
+ If none of the arguments have a name, this field will be null.
+ Note that subscripts correspond to positions of
+ <structfield>proallargtypes</> not <structfield>proargtypes</>.
</entry>
</row>