]> granicus.if.org Git - postgresql/commitdiff
Update documentation about pseudo-types.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 28 Dec 2015 16:04:42 +0000 (11:04 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 28 Dec 2015 16:04:42 +0000 (11:04 -0500)
Tone down an overly strong statement about which pseudo-types PLs are
likely to allow.  Add "event_trigger" to the list, as well as
"pg_ddl_command" in 9.5/HEAD.  Back-patch to 9.3 where event_trigger
was added.

doc/src/sgml/datatype.sgml

index b5191f453695fa29723a24108c1fff7a0dd5bd2a..d1db0d26a21c1a8b124efa3c784690bff829882e 100644 (file)
@@ -4616,6 +4616,14 @@ SELECT * FROM pg_attribute
     <primary>trigger</primary>
    </indexterm>
 
+   <indexterm zone="datatype-pseudo">
+    <primary>event_trigger</primary>
+   </indexterm>
+
+   <indexterm zone="datatype-pseudo">
+    <primary>pg_ddl_command</primary>
+   </indexterm>
+
    <indexterm zone="datatype-pseudo">
     <primary>language_handler</primary>
    </indexterm>
@@ -4729,7 +4737,7 @@ SELECT * FROM pg_attribute
 
        <row>
         <entry><type>record</></entry>
-        <entry>Identifies a function returning an unspecified row type.</entry>
+        <entry>Identifies a function taking or returning an unspecified row type.</entry>
        </row>
 
        <row>
@@ -4737,6 +4745,16 @@ SELECT * FROM pg_attribute
         <entry>A trigger function is declared to return <type>trigger.</></entry>
        </row>
 
+       <row>
+        <entry><type>event_trigger</></entry>
+        <entry>An event trigger function is declared to return <type>event_trigger.</></entry>
+       </row>
+
+       <row>
+        <entry><type>pg_ddl_command</></entry>
+        <entry>Identifies a represention of DDL commands that is available to event triggers.</entry>
+       </row>
+
        <row>
         <entry><type>void</></entry>
         <entry>Indicates that a function returns no value.</entry>
@@ -4759,10 +4777,11 @@ SELECT * FROM pg_attribute
 
    <para>
     Functions coded in procedural languages can use pseudo-types only as
-    allowed by their implementation languages.  At present the procedural
-    languages all forbid use of a pseudo-type as argument type, and allow
+    allowed by their implementation languages.  At present most procedural
+    languages forbid use of a pseudo-type as an argument type, and allow
     only <type>void</> and <type>record</> as a result type (plus
-    <type>trigger</> when the function is used as a trigger).  Some also
+    <type>trigger</> or <type>event_trigger</> when the function is used
+    as a trigger or event trigger).  Some also
     support polymorphic functions using the types <type>anyelement</>,
     <type>anyarray</>, <type>anynonarray</>, <type>anyenum</>, and
     <type>anyrange</>.