]> git.puffer.fish Git - mirror/frr.git/commitdiff
Revert "lib: Macroize CLI matcher tracing"
authorDavid Lamparter <equinox@opensourcerouting.org>
Mon, 5 Dec 2016 20:01:06 +0000 (21:01 +0100)
committerDavid Lamparter <equinox@opensourcerouting.org>
Mon, 5 Dec 2016 20:01:06 +0000 (21:01 +0100)
This reverts commit 54c5dce6a5e46717ad52c80f2dc99fc36a372e28.

lib/command_match.c

index 25309654f3c47e34b825b895b606a0a54ce3307e..d4996f634d0cf2f1e2f2a219fecd3b80e0f01268 100644 (file)
 #include "command_match.h"
 #include "memory.h"
 
-#ifdef TRACE_MATCHER
-#define TM 1
-#else
-#define TM 0
-#endif
-
-#define trace_matcher(...) \
-   do { if (TM) fprintf (stderr, __VA_ARGS__); } while (0);
-
 DEFINE_MTYPE_STATIC(LIB, CMD_TOKENS, "Command Tokens")
 
 /* matcher helper prototypes */
@@ -124,12 +115,12 @@ command_match (struct graph *cmdgraph,
       assert (*el);
     }
 
-  if (!*el) {
-    trace_matcher ("No match");
-  }
-  else {
-    trace_matcher ("Matched command\n->string %s\n->desc %s\n", (*el)->string, (*el)->doc);
-  }
+#ifdef TRACE_MATCHER
+  if (!*el)
+    fprintf (stdout, "No match\n");
+  else
+    fprintf (stdout, "Matched command\n->string %s\n->desc %s\n", (*el)->string, (*el)->doc);
+#endif
 
   // free the leader token we alloc'd
   XFREE (MTYPE_TMP, vector_slot (vvline, 0));
@@ -202,26 +193,28 @@ command_match_r (struct graph_node *start, vector vline, unsigned int n)
   // get the current operating input token
   char *input_token = vector_slot (vline, n);
 
-  trace_matcher ("\"%-20s\" matches \"%-30s\" ? ", input_token, token->text);
+#ifdef TRACE_MATCHER
+  fprintf (stdout, "\"%-20s\" matches \"%-30s\" ? ", input_token, token->text);
   enum match_type mt = match_token (token, input_token);
-  trace_matcher ("min: %d - ", minmatch);
+  fprintf (stdout, "min: %d - ", minmatch);
   switch (mt)
   {
     case trivial_match:
-      trace_matcher ("trivial_match ");
+      fprintf (stdout, "trivial_match ");
       break;
     case no_match:
-      trace_matcher ("no_match ");
+      fprintf (stdout, "no_match ");
       break;
     case partly_match:
-      trace_matcher ("partly_match ");
+      fprintf (stdout, "partly_match ");
       break;
     case exact_match:
-      trace_matcher ("exact_match ");
+      fprintf (stdout, "exact_match ");
       break;
   }
-  if (mt >= minmatch) { trace_matcher (" MATCH") };
-  trace_matcher ("\n");
+  if (mt >= minmatch) fprintf (stdout, " MATCH");
+  fprintf (stdout, "\n");
+#endif
 
   // if we don't match this node, die
   if (match_token (token, input_token) < minmatch)
@@ -351,35 +344,37 @@ command_complete (struct graph *graph,
             continue;
 
           enum match_type minmatch = min_match_level (token->type);
-          trace_matcher ("\"%s\" matches \"%s\" (%d) ? ", input_token, token->text, token->type);
+#ifdef TRACE_MATCHER
+          fprintf (stdout, "\"%s\" matches \"%s\" (%d) ? ", input_token, token->text, token->type);
+#endif
 
           switch (match_token (token, input_token))
             {
               case trivial_match:
-                trace_matcher ("trivial_match\n");
-                assert(idx == vector_active (vline) - 1);
-                listnode_add (next, gn);
-                break;
+#ifdef TRACE_MATCHER
+                fprintf (stdout, "trivial_match\n");
+#endif
               case partly_match:
-                trace_matcher ("partly_match\n");
-                // last token on line is partial and
-                // not a space
+#ifdef TRACE_MATCHER
+                fprintf (stdout, "partly_match\n");
+#endif
                 if (idx == vector_active (vline) - 1)
                   {
                     listnode_add (next, gn);
                     break;
                   }
-                if (minmatch <= partly_match)
-                  add_nexthops (next, gn);
-
-                break;
+                if (minmatch > partly_match)
+                  break;
               case exact_match:
-                trace_matcher ("exact_match\n");
+#ifdef TRACE_MATCHER
+                fprintf (stdout, "exact_match\n");
+#endif
                 add_nexthops (next, gn);
-                listnode_add (next, gn);
                 break;
               default:
-                trace_matcher ("no_match\n");
+#ifdef TRACE_MATCHER
+                fprintf (stdout, "no_match\n");
+#endif
                 break;
             }
         }