of the command). The argument tokens are written into
\a info. */
+ void parsePath(std::string const & path, ParseCommandInfo & info);
+ ///< Parse \a path
+ /**< parsePath() parses the string \a path as an arbitrary
+ command path. The result is written into \a info. */
+
std::string::size_type parseIncremental(std::string const & commands, Callback cb);
///< Incremental parse
/**< An incremental parse will parse all complete statements
to be terminated explicitly. This means, that the
last ';' is \e not optional in this case. */
+ static bool isSpecialChar(char ch); ///< Check, if \a ch is a special character
+ static bool isPunctuationChar(char ch); ///< Check, if \a ch is a punctuation character
+ static bool isSpaceChar(char ch); ///< Check, if \a ch is a space character
+ static bool isInvalidChar(char ch); ///< Check, if \a ch is an invalid character
+ static bool isWordChar(char ch); ///< Check, if \a ch is a word character
+
/** \brief Exception thrown when the parser detects an error */
struct ParserErrorException : public SyntaxErrorException
{ explicit ParserErrorException(std::string const & msg) : SyntaxErrorException(msg) {} };