Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 45d0409

Browse files
committed
Reinstate pg_type's typsend and typreceive columns. They don't do much
yet, but they're there. Also some editorial work on CREATE TYPE reference page.
1 parent f2c7a27 commit 45d0409

File tree

19 files changed

+794
-366
lines changed

19 files changed

+794
-366
lines changed

doc/src/sgml/catalogs.sgml

+24-13
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!--
22
Documentation of the system catalogs, directed toward PostgreSQL developers
3-
$Header: /cvsroot/pgsql/doc/src/sgml/catalogs.sgml,v 2.69 2003/04/15 13:23:35 petere Exp $
3+
$Header: /cvsroot/pgsql/doc/src/sgml/catalogs.sgml,v 2.70 2003/05/08 22:19:55 tgl Exp $
44
-->
55

66
<chapter id="catalogs">
@@ -3315,9 +3315,9 @@
33153315
<para>
33163316
The catalog <structname>pg_type</structname> stores information about data types. Base types
33173317
(scalar types) are created with <command>CREATE TYPE</command>.
3318-
A complex type is automatically created for each table in the database, to
3318+
A composite type is automatically created for each table in the database, to
33193319
represent the row structure of the table. It is also possible to create
3320-
complex types with <command>CREATE TYPE AS</command> and
3320+
composite types with <command>CREATE TYPE AS</command> and
33213321
derived types with <command>CREATE DOMAIN</command>.
33223322
</para>
33233323

@@ -3378,12 +3378,9 @@
33783378
<entry>
33793379
<structfield>typbyval</structfield> determines whether internal
33803380
routines pass a value of this type by value or by reference.
3381-
Only <type>char</type>, <type>short</type>, and
3382-
<type>int</type> equivalent items can be passed by value, so if
3383-
the type is not 1, 2, or 4 bytes long,
3384-
<productname>PostgreSQL</> does not have
3385-
the option of passing by value and so
3386-
<structfield>typbyval</structfield> had better be false.
3381+
<structfield>typbyval</structfield> had better be false if
3382+
<structfield>typlen</structfield> is not 1, 2, or 4 (or 8 on machines
3383+
where Datum is 8 bytes).
33873384
Variable-length types are always passed by reference. Note that
33883385
<structfield>typbyval</structfield> can be false even if the
33893386
length would allow pass-by-value; this is currently true for
@@ -3397,7 +3394,7 @@
33973394
<entry></entry>
33983395
<entry>
33993396
<structfield>typtype</structfield> is <literal>b</literal> for
3400-
a base type, <literal>c</literal> for a complex type (i.e.,
3397+
a base type, <literal>c</literal> for a composite type (i.e.,
34013398
a table's row type), <literal>d</literal> for a derived type (i.e.,
34023399
a domain), or <literal>p</literal> for a pseudo-type. See also
34033400
<structfield>typrelid</structfield>
@@ -3431,7 +3428,7 @@
34313428
<entry><type>oid</type></entry>
34323429
<entry><literal>pg_class.oid</literal></entry>
34333430
<entry>
3434-
If this is a complex type (see
3431+
If this is a composite type (see
34353432
<structfield>typtype</structfield>), then this column points to
34363433
the <structname>pg_class</structname> entry that defines the
34373434
corresponding table. (For a free-standing composite type, the
@@ -3468,14 +3465,28 @@
34683465
<entry><structfield>typinput</structfield></entry>
34693466
<entry><type>regproc</type></entry>
34703467
<entry><literal>pg_proc.oid</literal></entry>
3471-
<entry>Input conversion function</entry>
3468+
<entry>Input conversion function (text format)</entry>
34723469
</row>
34733470

34743471
<row>
34753472
<entry><structfield>typoutput</structfield></entry>
34763473
<entry><type>regproc</type></entry>
34773474
<entry><literal>pg_proc.oid</literal></entry>
3478-
<entry>Output conversion function</entry>
3475+
<entry>Output conversion function (text format)</entry>
3476+
</row>
3477+
3478+
<row>
3479+
<entry><structfield>typreceive</structfield></entry>
3480+
<entry><type>regproc</type></entry>
3481+
<entry><literal>pg_proc.oid</literal></entry>
3482+
<entry>Input conversion function (binary format), or 0 if none</entry>
3483+
</row>
3484+
3485+
<row>
3486+
<entry><structfield>typsend</structfield></entry>
3487+
<entry><type>regproc</type></entry>
3488+
<entry><literal>pg_proc.oid</literal></entry>
3489+
<entry>Output conversion function (binary format), or 0 if none</entry>
34793490
</row>
34803491

34813492
<row>

0 commit comments

Comments
 (0)