diff options
author | Tom Lane | 2008-05-07 01:04:49 +0000 |
---|---|---|
committer | Tom Lane | 2008-05-07 01:04:49 +0000 |
commit | e713a7e16a2e284e62b8e3f3fc791b0867370773 (patch) | |
tree | efd98189ab11a2c7a2ed76f570b4cac87b383ef4 | |
parent | 6a2ab2cf669b0bbe0292b6e51792c040b6ebd962 (diff) |
Convert the list of syscache names from a series of #define's into an enum,
to avoid the pain of manually renumbering them anytime we insert another
name in alphabetical order. An excellent idea from Alex Hunsaker and
NikhilS' inherited-constraints patch --- whether or not the rest of that
gets in, this should. Dunno why we never thought of it before.
-rw-r--r-- | src/include/utils/syscache.h | 108 |
1 files changed, 55 insertions, 53 deletions
diff --git a/src/include/utils/syscache.h b/src/include/utils/syscache.h index 76248de8e2..02d51ed36e 100644 --- a/src/include/utils/syscache.h +++ b/src/include/utils/syscache.h @@ -19,63 +19,65 @@ #include "utils/catcache.h" /* - * Declarations for util/syscache.c. - * * SysCache identifiers. * - * The order of these must match the order - * they are entered into the structure cacheinfo[] in syscache.c. - * Keep them in alphabetical order. + * The order of these identifiers must match the order + * of the entries in the array cacheinfo[] in syscache.c. + * Keep them in alphabetical order (renumbering only costs a + * backend rebuild). */ -#define AGGFNOID 0 -#define AMNAME 1 -#define AMOID 2 -#define AMOPOPID 3 -#define AMOPSTRATEGY 4 -#define AMPROCNUM 5 -#define ATTNAME 6 -#define ATTNUM 7 -#define AUTHMEMMEMROLE 8 -#define AUTHMEMROLEMEM 9 -#define AUTHNAME 10 -#define AUTHOID 11 -#define CASTSOURCETARGET 12 -#define CLAAMNAMENSP 13 -#define CLAOID 14 -#define CONDEFAULT 15 -#define CONNAMENSP 16 -#define CONSTROID 17 -#define CONVOID 18 -#define DATABASEOID 19 -#define ENUMOID 20 -#define ENUMTYPOIDNAME 21 -#define INDEXRELID 22 -#define LANGNAME 23 -#define LANGOID 24 -#define NAMESPACENAME 25 -#define NAMESPACEOID 26 -#define OPERNAMENSP 27 -#define OPEROID 28 -#define OPFAMILYAMNAMENSP 29 -#define OPFAMILYOID 30 -#define PROCNAMEARGSNSP 31 -#define PROCOID 32 -#define RELNAMENSP 33 -#define RELOID 34 -#define RULERELNAME 35 -#define STATRELATT 36 -#define TSCONFIGMAP 37 -#define TSCONFIGNAMENSP 38 -#define TSCONFIGOID 39 -#define TSDICTNAMENSP 40 -#define TSDICTOID 41 -#define TSPARSERNAMENSP 42 -#define TSPARSEROID 43 -#define TSTEMPLATENAMENSP 44 -#define TSTEMPLATEOID 45 -#define TYPENAMENSP 46 -#define TYPEOID 47 +enum SysCacheIdentifier +{ + AGGFNOID = 0, + AMNAME, + AMOID, + AMOPOPID, + AMOPSTRATEGY, + AMPROCNUM, + ATTNAME, + ATTNUM, + AUTHMEMMEMROLE, + AUTHMEMROLEMEM, + AUTHNAME, + AUTHOID, + CASTSOURCETARGET, + CLAAMNAMENSP, + CLAOID, + CONDEFAULT, + CONNAMENSP, + CONSTROID, + CONVOID, + DATABASEOID, + ENUMOID, + ENUMTYPOIDNAME, + INDEXRELID, + LANGNAME, + LANGOID, + NAMESPACENAME, + NAMESPACEOID, + OPERNAMENSP, + OPEROID, + OPFAMILYAMNAMENSP, + OPFAMILYOID, + PROCNAMEARGSNSP, + PROCOID, + RELNAMENSP, + RELOID, + RULERELNAME, + STATRELATT, + TSCONFIGMAP, + TSCONFIGNAMENSP, + TSCONFIGOID, + TSDICTNAMENSP, + TSDICTOID, + TSPARSERNAMENSP, + TSPARSEROID, + TSTEMPLATENAMENSP, + TSTEMPLATEOID, + TYPENAMENSP, + TYPEOID +}; extern void InitCatalogCache(void); extern void InitCatalogCachePhase2(void); |