#define LEXER_H
#include "support/strfwd.h"
-
+#include <string>
namespace lyx {
{
public:
/// initialize Lexer with no special keywords.
- Lexer();
+ Lexer();
/// initialize Lexer with a bunch of keywords
template<int N> Lexer(LexerKeyword (&table)[N])
- : pimpl_(0) { init(table, N); }
+ : pimpl_(0), lastReadOk_(false) { init(table, N); }
///
~Lexer();
///
double getFloat() const;
///
- std::string const getString() const;
+ std::string const getString(bool trim = false) const;
///
- docstring const getDocString() const;
+ docstring const getDocString(bool trim = false) const;
/** Get a long string, ended by the tag `endtag'.
This string can span several lines. The first line
serves as a template for how many spaces the lines