- More strict definition of what is a tag.
This commit is contained in:
Paul Beckingham 2014-11-04 22:34:18 -05:00
parent 2b3f7a2fb6
commit 4ec1f17557

View file

@ -28,6 +28,7 @@
#include <sstream> #include <sstream>
#include <algorithm> #include <algorithm>
#include <iostream> // TODO Remove. #include <iostream> // TODO Remove.
#include <ctype.h>
#include <Context.h> #include <Context.h>
#include <Nibbler.h> #include <Nibbler.h>
#include <Lexer.h> #include <Lexer.h>
@ -2065,10 +2066,15 @@ bool CLI::isCommand (const std::string& raw) const
} }
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Valid tag
// - Length > 1
// - Starts with +/-
// - Tag does not start with a digit
bool CLI::isTag (const std::string& raw) const bool CLI::isTag (const std::string& raw) const
{ {
if (raw.size () >= 2 && if (raw.size () >= 2 &&
(raw[0] == '+' || raw[0] == '-') && (raw[0] == '+' || raw[0] == '-') &&
! isdigit(raw[1]) &&
raw.find (' ') == std::string::npos) raw.find (' ') == std::string::npos)
return true; return true;