Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef PG_INDEX_H
00020 #define PG_INDEX_H
00021
00022 #include "catalog/genbki.h"
00023
00024
00025
00026
00027
00028
00029 #define IndexRelationId 2610
00030
00031 CATALOG(pg_index,2610) BKI_WITHOUT_OIDS BKI_SCHEMA_MACRO
00032 {
00033 Oid indexrelid;
00034 Oid indrelid;
00035 int16 indnatts;
00036 bool indisunique;
00037 bool indisprimary;
00038 bool indisexclusion;
00039 bool indimmediate;
00040 bool indisclustered;
00041 bool indisvalid;
00042 bool indcheckxmin;
00043 bool indisready;
00044 bool indislive;
00045
00046
00047 int2vector indkey;
00048
00049 #ifdef CATALOG_VARLEN
00050 oidvector indcollation;
00051 oidvector indclass;
00052 int2vector indoption;
00053 pg_node_tree indexprs;
00054
00055
00056 pg_node_tree indpred;
00057
00058 #endif
00059 } FormData_pg_index;
00060
00061
00062
00063
00064
00065
00066 typedef FormData_pg_index *Form_pg_index;
00067
00068
00069
00070
00071
00072 #define Natts_pg_index 18
00073 #define Anum_pg_index_indexrelid 1
00074 #define Anum_pg_index_indrelid 2
00075 #define Anum_pg_index_indnatts 3
00076 #define Anum_pg_index_indisunique 4
00077 #define Anum_pg_index_indisprimary 5
00078 #define Anum_pg_index_indisexclusion 6
00079 #define Anum_pg_index_indimmediate 7
00080 #define Anum_pg_index_indisclustered 8
00081 #define Anum_pg_index_indisvalid 9
00082 #define Anum_pg_index_indcheckxmin 10
00083 #define Anum_pg_index_indisready 11
00084 #define Anum_pg_index_indislive 12
00085 #define Anum_pg_index_indkey 13
00086 #define Anum_pg_index_indcollation 14
00087 #define Anum_pg_index_indclass 15
00088 #define Anum_pg_index_indoption 16
00089 #define Anum_pg_index_indexprs 17
00090 #define Anum_pg_index_indpred 18
00091
00092
00093
00094
00095
00096
00097 #define INDOPTION_DESC 0x0001
00098 #define INDOPTION_NULLS_FIRST 0x0002
00099
00100
00101
00102
00103
00104
00105 #define IndexIsValid(indexForm) ((indexForm)->indisvalid)
00106 #define IndexIsReady(indexForm) ((indexForm)->indisready)
00107 #define IndexIsLive(indexForm) ((indexForm)->indislive)
00108
00109 #endif