index 22f6e07c43259671664053e3f88647f4a666c846..823cd18feea6731da32660130149df1d24588df5 100644 (file)
--- a/src/core/store-private.h
+++ b/src/core/store-private.h
enum {
MATCHER_OR,
MATCHER_AND,
+ MATCHER_NOT,
MATCHER_ATTR,
MATCHER_SERVICE,
MATCHER_HOST,
};
#define M(m) ((sdb_store_matcher_t *)(m))
-/* logical operator matcher */
+/* logical infix operator matcher */
typedef struct {
sdb_store_matcher_t super;
} op_matcher_t;
#define OP_M(m) ((op_matcher_t *)(m))
+/* logical unary operator matcher */
+typedef struct {
+ sdb_store_matcher_t super;
+
+ /* operand */
+ sdb_store_matcher_t *op;
+} uop_matcher_t;
+#define UOP_M(m) ((uop_matcher_t *)(m))
+
/* match any type of object by it's base information */
typedef struct {
sdb_store_matcher_t super;