77 *
88 * Copyright (c) 1994, Regents of the University of California
99 *
10- * $Id: pg_type.h,v 1.4 1996/11/13 20:51:06 scrappy Exp $
10+ * $Id: pg_type.h,v 1.5 1996/12/09 01:23:51 bryanh Exp $
1111 *
1212 * NOTES
1313 * the genbki.sh script reads this file and generates .bki
@@ -43,17 +43,17 @@ CATALOG(pg_type) BOOTSTRAP {
4343int2 typlen ;
4444/* typlen is the number of bytes we use to represent a value of
4545 this type, e.g. 4 for an int4. But for a variable length
46- attribute , typlen is -1.
46+ type , typlen is -1.
4747 */
4848int2 typprtlen ;
4949bool typbyval ;
5050/* typbyval determines whether internal Postgres routines pass a value
5151 of this type by value or by reference. Postgres uses a 4 byte
52- area for passingclass data , so if the value is not 1, 2,
52+ area for passinga field value info , so if the value is not 1, 2,
5353 or 4 bytes long, Postgres does not have the option of passing by
5454 value and ignores typbyval.
5555
56- (I don't understand why thisattribute exists. The above description
56+ (I don't understand why thiscolumn exists. The above description
5757 may be an oversimplification. Also, there appear to be bugs in which
5858 Postgres doesn't ignore typbyval when it should, but I'm
5959 afraid to change them until I see proof of damage. -BRYANH 96.08).
@@ -63,6 +63,10 @@ CATALOG(pg_type) BOOTSTRAP {
6363char typdelim ;
6464Oid typrelid ;
6565Oid typelem ;
66+ /* typelem is NULL if this is not an array type. If this is an array
67+ type, typelem is the OID of the type of the elements of the array
68+ (it identifies another row in Table pg_type).
69+ */
6670regproc typinput ;
6771regproc typoutput ;
6872regproc typreceive ;
@@ -71,7 +75,7 @@ CATALOG(pg_type) BOOTSTRAP {
7175/* typalign is the alignment required when storing a value of this
7276 type. It applies to storage on disk as well as most representations
7377 of the value inside Postgres. When multiple values are stored
74- consecutively, such as in the representation of a completetuple
78+ consecutively, such as in the representation of a completerow
7579 on disk, padding is inserted before a datum of this type so that it
7680 begins on the specified boundary. The alignment reference is the
7781 beginning of the first datum in the sequence.
@@ -88,7 +92,7 @@ CATALOG(pg_type) BOOTSTRAP {
8892}TypeTupleFormData ;
8993
9094/* ----------------
91- *Form_pg_type corresponds to a pointer to atuple with
95+ *Form_pg_type corresponds to a pointer to arow with
9296 *the format of pg_type relation.
9397 * ----------------
9498 */
@@ -153,7 +157,7 @@ DATA(insert OID = 22 ( int28 PGUID 16 50 f b t \054 0 21 int28in int28ou
153157 * go away someday. until that happens, there is a case (in the
154158 * catalog cache management code) where we need to step gingerly
155159 * over piles of int28's on the sidewalk. in order to do so, we
156- * need the OID of the int28tuple from pg_type.
160+ * need the OID of the int28row from pg_type.
157161 */
158162
159163#define INT28OID 22