pg_extension.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /*-------------------------------------------------------------------------
  2. *
  3. * pg_extension.h
  4. * definition of the system "extension" relation (pg_extension)
  5. * along with the relation's initial contents.
  6. *
  7. *
  8. * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
  9. * Portions Copyright (c) 1994, Regents of the University of California
  10. *
  11. * src/include/catalog/pg_extension.h
  12. *
  13. * NOTES
  14. * the genbki.pl script reads this file and generates .bki
  15. * information from the DATA() statements.
  16. *
  17. *-------------------------------------------------------------------------
  18. */
  19. #ifndef PG_EXTENSION_H
  20. #define PG_EXTENSION_H
  21. #include "catalog/genbki.h"
  22. /* ----------------
  23. * pg_extension definition. cpp turns this into
  24. * typedef struct FormData_pg_extension
  25. * ----------------
  26. */
  27. #define ExtensionRelationId 3079
  28. CATALOG(pg_extension,3079)
  29. {
  30. NameData extname; /* extension name */
  31. Oid extowner; /* extension owner */
  32. Oid extnamespace; /* namespace of contained objects */
  33. bool extrelocatable; /* if true, allow ALTER EXTENSION SET SCHEMA */
  34. #ifdef CATALOG_VARLEN /* variable-length fields start here */
  35. /* extversion may never be null, but the others can be. */
  36. text extversion BKI_FORCE_NOT_NULL; /* extension version name */
  37. Oid extconfig[1]; /* dumpable configuration tables */
  38. text extcondition[1]; /* WHERE clauses for config tables */
  39. #endif
  40. } FormData_pg_extension;
  41. /* ----------------
  42. * Form_pg_extension corresponds to a pointer to a tuple with
  43. * the format of pg_extension relation.
  44. * ----------------
  45. */
  46. typedef FormData_pg_extension *Form_pg_extension;
  47. /* ----------------
  48. * compiler constants for pg_extension
  49. * ----------------
  50. */
  51. #define Natts_pg_extension 7
  52. #define Anum_pg_extension_extname 1
  53. #define Anum_pg_extension_extowner 2
  54. #define Anum_pg_extension_extnamespace 3
  55. #define Anum_pg_extension_extrelocatable 4
  56. #define Anum_pg_extension_extversion 5
  57. #define Anum_pg_extension_extconfig 6
  58. #define Anum_pg_extension_extcondition 7
  59. /* ----------------
  60. * pg_extension has no initial contents
  61. * ----------------
  62. */
  63. #endif /* PG_EXTENSION_H */