X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Finclude%2Fcore%2Fstore.h;h=6106b3fdbe2490629a6b1e42d02ee85184d134dc;hb=72a63cfb0e65bb575889b8dbee6648cafd6a52f2;hp=1dfa9ab51005f3b116ce18332b9f6124c95cd833;hpb=8f340af6edef3f5a7f6b5e13ff960ade8abc3f24;p=sysdb.git diff --git a/src/include/core/store.h b/src/include/core/store.h index 1dfa9ab..6106b3f 100644 --- a/src/include/core/store.h +++ b/src/include/core/store.h @@ -169,6 +169,18 @@ sdb_store_host_matcher(const char *host_name, const char *host_name_re, sdb_store_matcher_t *service_matcher, sdb_store_matcher_t *attr_matcher); +/* + * sdb_store_matcher_parse_cmp: + * Parse a simple compare expression (. ). + * + * Returns: + * - a matcher object on success + * - NULL else + */ +sdb_store_matcher_t * +sdb_store_matcher_parse_cmp(const char *obj_type, const char *attr, + const char *op, const char *value); + /* * sdb_store_dis_matcher: * Creates a matcher matching the disjunction (logical OR) of two matchers. @@ -183,6 +195,13 @@ sdb_store_dis_matcher(sdb_store_matcher_t *left, sdb_store_matcher_t *right); sdb_store_matcher_t * sdb_store_con_matcher(sdb_store_matcher_t *left, sdb_store_matcher_t *right); +/* + * sdb_store_con_matcher:: + * Creates a matcher matching the inverse (logical NOT) of a matcher. + */ +sdb_store_matcher_t * +sdb_store_inv_matcher(sdb_store_matcher_t *m); + /* * sdb_store_matcher_matches: * Check whether the specified matcher matches the specified store object. @@ -194,6 +213,14 @@ sdb_store_con_matcher(sdb_store_matcher_t *left, sdb_store_matcher_t *right); int sdb_store_matcher_matches(sdb_store_matcher_t *m, sdb_store_base_t *obj); +/* + * sdb_store_matcher_tostring: + * Format a matcher object as string. This is meant for logging or debugging + * purposes. + */ +char * +sdb_store_matcher_tostring(sdb_store_matcher_t *m, char *buf, size_t buflen); + /* * sdb_store_lookup_cb: * Lookup callback. It is called for each matching object when looking up data