Triggers added to Relation
authorVadim B. Mikheev
Mon, 1 Sep 1997 08:13:22 +0000 (08:13 +0000)
committerVadim B. Mikheev
Mon, 1 Sep 1997 08:13:22 +0000 (08:13 +0000)
src/include/utils/rel.h

index 7ca56bb759160afec2809462ee78bddf20dad56d..42bcd949c38d0dbd9f9b93bf0107377934dc313a 100644 (file)
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: rel.h,v 1.7 1996/11/04 11:51:24 scrappy Exp $
+ * $Id: rel.h,v 1.8 1997/09/01 08:13:22 vadim Exp $
  *
  *-------------------------------------------------------------------------
  */
 #include 
 #include 
 
+typedef struct Trigger {
+    char       *tgname;
+    char       *tgfunc;
+    Oid            tglang;
+    int16      tgtype;
+    int16      tgnargs;
+    int16      tgattr[8];
+    char       *tgtext;
+    char       **tgargs;
+    char       *tgwhen;
+} Trigger;
+
+typedef struct TriggerDesc {
+    uint16     n_before_statement[4];
+    uint16     n_before_row[4];
+    uint16     n_after_row[4];
+    uint16     n_after_statement[4];
+    Trigger        **tg_before_statement[4];
+    Trigger        **tg_before_row[4];
+    Trigger        **tg_after_row[4];
+    Trigger        **tg_after_statement[4];
+    Trigger        *triggers;
+} TriggerDesc;
+
 typedef struct RelationData {
     File       rd_fd;      /* open file descriptor */
     int                 rd_nblocks;    /* number of blocks in rel */
@@ -36,6 +60,7 @@ typedef struct RelationData {
     RuleLock       *rd_rules;  /* rewrite rules */
     IndexStrategy       rd_istrat;    
     RegProcedure*       rd_support;
+    TriggerDesc        *trigdesc;
 } RelationData;
 
 typedef RelationData   *Relation;