/*-------------------------------------------------------------------------
*
* pg_rewrite.h
- * definition of the system "rewrite-rule" relation (pg_rewrite)
- * along with the relation's initial contents.
+ * definition of the "rewrite rule" system catalog (pg_rewrite)
*
* As of Postgres 7.3, the primary key for this table is <ev_class, rulename>
* --- ie, rule names are only unique among the rules of a given table.
*
*
- * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/catalog/pg_rewrite.h,v 1.33 2009/01/27 12:40:15 petere Exp $
+ * src/include/catalog/pg_rewrite.h
*
* NOTES
- * the genbki.sh script reads this file and generates .bki
- * information from the DATA() statements.
+ * The Catalog.pm module reads this file and derives schema
+ * information.
*
*-------------------------------------------------------------------------
*/
#define PG_REWRITE_H
#include "catalog/genbki.h"
+#include "catalog/pg_rewrite_d.h"
/* ----------------
- * pg_rewrite definition. cpp turns this into
+ * pg_rewrite definition. cpp turns this into
* typedef struct FormData_pg_rewrite
* ----------------
*/
-#define RewriteRelationId 2618
-
-CATALOG(pg_rewrite,2618)
+CATALOG(pg_rewrite,2618,RewriteRelationId)
{
NameData rulename;
Oid ev_class;
- int2 ev_attr;
char ev_type;
char ev_enabled;
bool is_instead;
- /* NB: remaining fields must be accessed via heap_getattr */
- text ev_qual;
- text ev_action;
+#ifdef CATALOG_VARLEN /* variable-length fields start here */
+ pg_node_tree ev_qual BKI_FORCE_NOT_NULL;
+ pg_node_tree ev_action BKI_FORCE_NOT_NULL;
+#endif
} FormData_pg_rewrite;
/* ----------------
*/
typedef FormData_pg_rewrite *Form_pg_rewrite;
-/* ----------------
- * compiler constants for pg_rewrite
- * ----------------
- */
-#define Natts_pg_rewrite 8
-#define Anum_pg_rewrite_rulename 1
-#define Anum_pg_rewrite_ev_class 2
-#define Anum_pg_rewrite_ev_attr 3
-#define Anum_pg_rewrite_ev_type 4
-#define Anum_pg_rewrite_ev_enabled 5
-#define Anum_pg_rewrite_is_instead 6
-#define Anum_pg_rewrite_ev_qual 7
-#define Anum_pg_rewrite_ev_action 8
-
-#endif /* PG_REWRITE_H */
+#endif /* PG_REWRITE_H */