00001 /*------------------------------------------------------------------------- 00002 * 00003 * pg_extension.h 00004 * definition of the system "extension" relation (pg_extension) 00005 * along with the relation's initial contents. 00006 * 00007 * 00008 * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group 00009 * Portions Copyright (c) 1994, Regents of the University of California 00010 * 00011 * src/include/catalog/pg_extension.h 00012 * 00013 * NOTES 00014 * the genbki.pl script reads this file and generates .bki 00015 * information from the DATA() statements. 00016 * 00017 *------------------------------------------------------------------------- 00018 */ 00019 #ifndef PG_EXTENSION_H 00020 #define PG_EXTENSION_H 00021 00022 #include "catalog/genbki.h" 00023 00024 /* ---------------- 00025 * pg_extension definition. cpp turns this into 00026 * typedef struct FormData_pg_extension 00027 * ---------------- 00028 */ 00029 #define ExtensionRelationId 3079 00030 00031 CATALOG(pg_extension,3079) 00032 { 00033 NameData extname; /* extension name */ 00034 Oid extowner; /* extension owner */ 00035 Oid extnamespace; /* namespace of contained objects */ 00036 bool extrelocatable; /* if true, allow ALTER EXTENSION SET SCHEMA */ 00037 00038 #ifdef CATALOG_VARLEN /* variable-length fields start here */ 00039 /* extversion should never be null, but the others can be. */ 00040 text extversion; /* extension version name */ 00041 Oid extconfig[1]; /* dumpable configuration tables */ 00042 text extcondition[1]; /* WHERE clauses for config tables */ 00043 #endif 00044 } FormData_pg_extension; 00045 00046 /* ---------------- 00047 * Form_pg_extension corresponds to a pointer to a tuple with 00048 * the format of pg_extension relation. 00049 * ---------------- 00050 */ 00051 typedef FormData_pg_extension *Form_pg_extension; 00052 00053 /* ---------------- 00054 * compiler constants for pg_extension 00055 * ---------------- 00056 */ 00057 00058 #define Natts_pg_extension 7 00059 #define Anum_pg_extension_extname 1 00060 #define Anum_pg_extension_extowner 2 00061 #define Anum_pg_extension_extnamespace 3 00062 #define Anum_pg_extension_extrelocatable 4 00063 #define Anum_pg_extension_extversion 5 00064 #define Anum_pg_extension_extconfig 6 00065 #define Anum_pg_extension_extcondition 7 00066 00067 /* ---------------- 00068 * pg_extension has no initial contents 00069 * ---------------- 00070 */ 00071 00072 #endif /* PG_EXTENSION_H */