src/graph.[ch]: Implement "graph_matches_ident".
authorFlorian Forster <ff@octo.it>
Mon, 12 Jul 2010 09:28:04 +0000 (11:28 +0200)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Mon, 12 Jul 2010 09:28:04 +0000 (11:28 +0200)
src/graph.c
src/graph.h

index 845bbb7..75c83b1 100644 (file)
@@ -307,6 +307,17 @@ _Bool graph_ident_matches (graph_config_t *cfg, const graph_ident_t *ident) /* {
   return (ident_matches (cfg->select, ident));
 } /* }}} _Bool graph_ident_matches */
 
+_Bool graph_matches_ident (graph_config_t *cfg, /* {{{ */
+    const graph_ident_t *selector)
+{
+#if C4_DEBUG
+  if ((cfg == NULL) || (selector == NULL))
+    return (0);
+#endif
+
+  return (ident_matches (selector, cfg->select));
+} /* }}} _Bool graph_matches_ident */
+
 _Bool graph_matches_field (graph_config_t *cfg, /* {{{ */
     graph_ident_field_t field, const char *field_value)
 {
index 7a433f1..69a3fbe 100644 (file)
@@ -52,8 +52,15 @@ graph_def_t *graph_get_defs (graph_config_t *cfg);
 
 int graph_add_def (graph_config_t *cfg, graph_def_t *def);
 
+/* Returns true if the given "ident" matches the (more general) selector of
+ * the graph "cfg". */
 _Bool graph_ident_matches (graph_config_t *cfg, const graph_ident_t *ident);
 
+/* Returns true if the selector of the graph "cfg" matches the more general
+ * ident "selector". */
+_Bool graph_matches_ident (graph_config_t *cfg,
+    const graph_ident_t *selector);
+
 /* Compares the given string with the appropriate field of the selector. If the
  * selector field is "/all/" or "/any/", returns true without checking the
  * instances. See "graph_inst_search_field" for finding all matching instances.