Function prototypes.
This commit is contained in:
parent
38f0ffd36c
commit
2ca45d5729
|
@ -9,7 +9,45 @@
|
|||
#ifndef TRIGGER_H
|
||||
#define TRIGGER_H
|
||||
|
||||
#include "access/tupdesc.h"
|
||||
#include "access/htup.h"
|
||||
#include "utils/rel.h"
|
||||
|
||||
typedef uint32 TriggerAction;
|
||||
|
||||
#define TRIGGER_ACTION_INSERT 0x00000000
|
||||
#define TRIGGER_ACTION_DELETE 0x00000001
|
||||
#define TRIGGER_ACTION_UPDATE 0x00000010
|
||||
#define TRIGGER_ACTION_OPMASK 0x00000011
|
||||
#define TRIGGER_ACTION_ROW 4
|
||||
|
||||
#define TRIGGER_FIRED_BY_INSERT (action) \
|
||||
(((TriggerAction) action & TRIGGER_ACTION_OPMASK) == \
|
||||
TRIGGER_ACTION_INSERT)
|
||||
|
||||
#define TRIGGER_FIRED_BY_DELETE (action) \
|
||||
(((TriggerAction) action & TRIGGER_ACTION_OPMASK) == \
|
||||
TRIGGER_ACTION_DELETE)
|
||||
|
||||
#define TRIGGER_FIRED_BY_UPDATE (action) \
|
||||
(((TriggerAction) action & TRIGGER_ACTION_OPMASK) == \
|
||||
TRIGGER_ACTION_UPDATE)
|
||||
|
||||
#define TRIGGER_FIRED_FOR_ROW (action) \
|
||||
((TriggerAction) action & TRIGGER_ACTION_ROW)
|
||||
|
||||
#define TRIGGER_FIRED_FOR_STATEMENT (action) \
|
||||
(!TRIGGER_FIRED_FOR_ROW (action))
|
||||
|
||||
|
||||
extern void CreateTrigger (CreateTrigStmt *stmt);
|
||||
extern void DropTrigger (DropTrigStmt *stmt);
|
||||
|
||||
extern HeapTuple ExecBRInsertTriggers (Relation rel, HeapTuple tuple);
|
||||
extern void ExecARInsertTriggers (Relation rel, HeapTuple tuple);
|
||||
extern bool ExecBRDeleteTriggers (Relation rel, ItemPointer tupleid);
|
||||
extern void ExecARDeleteTriggers (Relation rel, ItemPointer tupleid);
|
||||
extern HeapTuple ExecBRUpdateTriggers (Relation rel, ItemPointer tupleid, HeapTuple tuple);
|
||||
extern void ExecARUpdateTriggers (Relation rel, ItemPointer tupleid, HeapTuple tuple);
|
||||
|
||||
#endif /* TRIGGER_H */
|
||||
|
|
Loading…
Reference in New Issue