From 7b67e7775298da22e94f924202aef09fd133a530 Mon Sep 17 00:00:00 2001 From: Paul Beckingham Date: Mon, 27 Oct 2014 18:53:09 -0400 Subject: [PATCH] CLI - Implemented ::isPattern, and used it. --- src/CLI.cpp | 33 ++++++++++++++++++--------------- src/CLI.h | 1 + 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/src/CLI.cpp b/src/CLI.cpp index eebaf90b0..c58cc1433 100644 --- a/src/CLI.cpp +++ b/src/CLI.cpp @@ -480,18 +480,14 @@ const std::string CLI::dump () const // Either the arg is appended to _original_args intact, or the lexemes are. void CLI::addArg (const std::string& arg) { - // Do not lex RC overrides. - if (isRCOverride (arg)) - _original_args.push_back (arg); - - if (isConfigOverride (arg)) - _original_args.push_back (arg); - - // Do not lex patterns or single substitutions. - else if (arg.length () > 2 && - arg[0] == '/' && - arg[arg.length () - 1] == '/') + // Do not lex RC overrides, UUIDs, patterns. + if (isRCOverride (arg) || + isConfigOverride (arg) || + isUUID (arg) || + isPattern (arg)) + { _original_args.push_back (arg); + } // Do not lex substitutions. else if (arg.length () > 2 && @@ -500,10 +496,6 @@ void CLI::addArg (const std::string& arg) arg[arg.length () - 1] == 'g') _original_args.push_back (arg); - // Do not lex UUIDs. - else if (isUUID (arg)) - _original_args.push_back (arg); - // Do not lex, unless lexing reveals OPs. else { @@ -1730,3 +1722,14 @@ bool CLI::isUUID (const std::string& raw) const } //////////////////////////////////////////////////////////////////////////////// +bool CLI::isPattern (const std::string& raw) const +{ + if (raw.length () > 2 && + raw[0] == '/' && + raw[raw.length () - 1] == '/') + return true; + + return false; +} + +//////////////////////////////////////////////////////////////////////////////// diff --git a/src/CLI.h b/src/CLI.h index 951aef40c..b2c3c4f9c 100644 --- a/src/CLI.h +++ b/src/CLI.h @@ -101,6 +101,7 @@ private: bool isRCOverride (const std::string&) const; bool isConfigOverride (const std::string&) const; bool isUUID (const std::string&) const; + bool isPattern (const std::string&) const; public: std::multimap _entities;