X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLexer.h;h=6ecdd909891d5c3cc08c0a43e9244ba2debd971a;hb=3bf1b97a;hp=dc56a4a70af47781471837b000aa5e98e5db2742;hpb=0e2ef88b43f4129b7701752f1de95cdb52e9372e;p=features.git diff --git a/src/Lexer.h b/src/Lexer.h index dc56a4a70a..6ecdd90989 100644 --- a/src/Lexer.h +++ b/src/Lexer.h @@ -24,10 +24,8 @@ namespace lyx { namespace support { class FileName; } -class PushPopHelper; - /** A helper structure to describe a keyword for the Lexer. - Usually used bundled in C style arrays and passed to the + Usually used bundled in C style arrays and passed to the Lexer using a LexerKeywordTable object. */ struct LexerKeyword @@ -110,8 +108,8 @@ public: /// returns a lex code int lex(); - /// Read the next string, as delimited by double quotes or - /// whitespace. If esc is true, then we remember that some chars + /// Read the next string, as delimited by double quotes or + /// whitespace. If esc is true, then we remember that some chars /// might be escaped: \" at least. bool next(bool esc = false); @@ -120,7 +118,7 @@ public: /// split a word if it contains a backslash. bool nextToken(); - /// Puts the rest of the line in the buffer, where it will + /// Puts the rest of the line in the buffer, where it will /// be available via getString() or getDocString(). bool eatLine(); @@ -137,17 +135,17 @@ public: /// double getFloat() const; /// - std::string const getString() const; + std::string const getString(bool trim = false) const; /// - docstring const getDocString() const; - /** Get a long string, ended by the tag `endtag'. + docstring const getDocString(bool trim = false) const; + /** Get a long string, ended by the tag `endtoken'. This string can span several lines. The first line serves as a template for how many spaces the lines are indented. This much white space is skipped from each following line. This mechanism does not work perfectly if you use tabs. */ - std::string const getLongString(std::string const & endtag); + docstring getLongString(docstring const & endtoken); /// Pushes a token list on a stack and replaces it with a new one. template void pushTable(LexerKeyword (&table)[N])