summaryrefslogtreecommitdiff
path: root/src/db.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/db.h')
-rw-r--r--src/db.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/db.h b/src/db.h
index d686e03..c0472a5 100644
--- a/src/db.h
+++ b/src/db.h
@@ -70,18 +70,23 @@ struct db_arg_chain_tree {
#define ARG_MASK_MAX ((uint32_t)-1)
#define db_chain_lt(x,y) \
(((x)->arg < (y)->arg) || \
- (((x)->arg == (y)->arg) && (((x)->op < (y)->op) || \
- (((x)->mask & (y)->mask) == (y)->mask))))
+ (((x)->arg == (y)->arg) && \
+ (((x)->op < (y)->op) || (((x)->mask & (y)->mask) == (y)->mask))))
#define db_chain_eq(x,y) \
(((x)->arg == (y)->arg) && \
((x)->op == (y)->op) && ((x)->datum == (y)->datum) && \
((x)->mask == (y)->mask))
#define db_chain_gt(x,y) \
(((x)->arg > (y)->arg) || \
- (((x)->arg == (y)->arg) && (((x)->op > (y)->op) || \
- (((x)->mask & (y)->mask) != (y)->mask))))
-#define db_chain_leaf(x) \
+ (((x)->arg == (y)->arg) && \
+ (((x)->op > (y)->op) || (((x)->mask & (y)->mask) != (y)->mask))))
+#define db_chain_action(x) \
(((x)->act_t_flg) || ((x)->act_f_flg))
+#define db_chain_zombie(x) \
+ ((x)->nxt_t == NULL && !((x)->act_t_flg) && \
+ (x)->nxt_f == NULL && !((x)->act_f_flg))
+#define db_chain_leaf(x) \
+ ((x)->nxt_t == NULL && (x)->nxt_f == NULL)
#define db_chain_eq_result(x,y) \
((((x)->nxt_t != NULL && (y)->nxt_t != NULL) || \
((x)->nxt_t == NULL && (y)->nxt_t == NULL)) && \