From 9dec6b446c5487623ad04fdaa8160e3338f12799 Mon Sep 17 00:00:00 2001 From: David Lamparter Date: Mon, 5 Dec 2016 21:01:06 +0100 Subject: [PATCH] Revert "lib: Macroize CLI matcher tracing" This reverts commit 54c5dce6a5e46717ad52c80f2dc99fc36a372e28. --- lib/command_match.c | 71 +++++++++++++++++++++------------------------ 1 file changed, 33 insertions(+), 38 deletions(-) diff --git a/lib/command_match.c b/lib/command_match.c index 25309654f3..d4996f634d 100644 --- a/lib/command_match.c +++ b/lib/command_match.c @@ -27,15 +27,6 @@ #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; } } -- 2.39.5