Header And Logo

PostgreSQL
| The world's most advanced open source database.

pg_shdescription.h

Go to the documentation of this file.
00001 /*-------------------------------------------------------------------------
00002  *
00003  * pg_shdescription.h
00004  *    definition of the system "shared description" relation
00005  *    (pg_shdescription)
00006  *
00007  * NOTE: an object is identified by the OID of the row that primarily
00008  * defines the object, plus the OID of the table that that row appears in.
00009  * For example, a database is identified by the OID of its pg_database row
00010  * plus the pg_class OID of table pg_database.  This allows unique
00011  * identification of objects without assuming that OIDs are unique
00012  * across tables.
00013  *
00014  *
00015  * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group
00016  * Portions Copyright (c) 1994, Regents of the University of California
00017  *
00018  * src/include/catalog/pg_shdescription.h
00019  *
00020  * NOTES
00021  *      the genbki.pl script reads this file and generates .bki
00022  *      information from the DATA() statements.
00023  *
00024  *      XXX do NOT break up DATA() statements into multiple lines!
00025  *          the scripts are not as smart as you might think...
00026  *
00027  *-------------------------------------------------------------------------
00028  */
00029 #ifndef PG_SHDESCRIPTION_H
00030 #define PG_SHDESCRIPTION_H
00031 
00032 #include "catalog/genbki.h"
00033 
00034 /* ----------------
00035  *      pg_shdescription definition.    cpp turns this into
00036  *      typedef struct FormData_pg_shdescription
00037  * ----------------
00038  */
00039 #define SharedDescriptionRelationId  2396
00040 
00041 CATALOG(pg_shdescription,2396) BKI_SHARED_RELATION BKI_WITHOUT_OIDS
00042 {
00043     Oid         objoid;         /* OID of object itself */
00044     Oid         classoid;       /* OID of table containing object */
00045 
00046 #ifdef CATALOG_VARLEN           /* variable-length fields start here */
00047     text        description;    /* description of object */
00048 #endif
00049 } FormData_pg_shdescription;
00050 
00051 /* ----------------
00052  *      Form_pg_shdescription corresponds to a pointer to a tuple with
00053  *      the format of pg_shdescription relation.
00054  * ----------------
00055  */
00056 typedef FormData_pg_shdescription *Form_pg_shdescription;
00057 
00058 /* ----------------
00059  *      compiler constants for pg_shdescription
00060  * ----------------
00061  */
00062 #define Natts_pg_shdescription          3
00063 #define Anum_pg_shdescription_objoid        1
00064 #define Anum_pg_shdescription_classoid  2
00065 #define Anum_pg_shdescription_description 3
00066 
00067 /* ----------------
00068  *      initial contents of pg_shdescription
00069  * ----------------
00070  */
00071 
00072 /*
00073  *  Because the contents of this table are taken from the other *.h files,
00074  *  there is no initialization here.  The initial contents are extracted
00075  *  by genbki.pl and loaded during initdb.
00076  */
00077 
00078 #endif   /* PG_SHDESCRIPTION_H */