PostgreSQL Source Code  git master
pg_shdescription.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * pg_shdescription.h
4  * definition of the system "shared description" relation
5  * (pg_shdescription)
6  *
7  * NOTE: an object is identified by the OID of the row that primarily
8  * defines the object, plus the OID of the table that that row appears in.
9  * For example, a database is identified by the OID of its pg_database row
10  * plus the pg_class OID of table pg_database. This allows unique
11  * identification of objects without assuming that OIDs are unique
12  * across tables.
13  *
14  *
15  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
16  * Portions Copyright (c) 1994, Regents of the University of California
17  *
18  * src/include/catalog/pg_shdescription.h
19  *
20  * NOTES
21  * the genbki.pl script reads this file and generates .bki
22  * information from the DATA() statements.
23  *
24  * XXX do NOT break up DATA() statements into multiple lines!
25  * the scripts are not as smart as you might think...
26  *
27  *-------------------------------------------------------------------------
28  */
29 #ifndef PG_SHDESCRIPTION_H
30 #define PG_SHDESCRIPTION_H
31 
32 #include "catalog/genbki.h"
33 
34 /* ----------------
35  * pg_shdescription definition. cpp turns this into
36  * typedef struct FormData_pg_shdescription
37  * ----------------
38  */
39 #define SharedDescriptionRelationId 2396
40 
42 {
43  Oid objoid; /* OID of object itself */
44  Oid classoid; /* OID of table containing object */
45 
46 #ifdef CATALOG_VARLEN /* variable-length fields start here */
47  text description BKI_FORCE_NOT_NULL; /* description of object */
48 #endif
50 
51 /* ----------------
52  * Form_pg_shdescription corresponds to a pointer to a tuple with
53  * the format of pg_shdescription relation.
54  * ----------------
55  */
57 
58 /* ----------------
59  * compiler constants for pg_shdescription
60  * ----------------
61  */
62 #define Natts_pg_shdescription 3
63 #define Anum_pg_shdescription_objoid 1
64 #define Anum_pg_shdescription_classoid 2
65 #define Anum_pg_shdescription_description 3
66 
67 /* ----------------
68  * initial contents of pg_shdescription
69  * ----------------
70  */
71 
72 /*
73  * Because the contents of this table are taken from the other *.h files,
74  * there is no initialization here. The initial contents are extracted
75  * by genbki.pl and loaded during initdb.
76  */
77 
78 #endif /* PG_SHDESCRIPTION_H */
CATALOG(pg_shdescription, 2396) BKI_SHARED_RELATION BKI_WITHOUT_OIDS
FormData_pg_shdescription
#define BKI_SHARED_RELATION
Definition: genbki.h:27
unsigned int Oid
Definition: postgres_ext.h:31
#define BKI_WITHOUT_OIDS
Definition: genbki.h:28
#define BKI_FORCE_NOT_NULL
Definition: genbki.h:32
FormData_pg_shdescription * Form_pg_shdescription
Definition: c.h:497