FLAG_END = 1 << 3, // next \\end ends the parsing process
FLAG_BRACK_LAST = 1 << 4, // next closing bracket ends the parsing
FLAG_TEXTMODE = 1 << 5, // we are in a box
- FLAG_ITEM = 1 << 6, // read a (possibly braced token)
+ FLAG_ITEM = 1 << 6, // read a (possibly braced) token
FLAG_LEAVE = 1 << 7, // leave the loop at the end
FLAG_SIMPLE = 1 << 8, // next $ leaves the loop
FLAG_EQUATION = 1 << 9, // next \] leaves the loop
// add to the list of characters to read before actually reading
// the stream
- void putback(docstring s);
+ void putback(const docstring &s);
/// Like std::istream::get()
iparserdocstream & get(char_type &c);
/// change the encoding of the input stream according to \p encoding
/// (latex name) and package \p package
- bool setEncoding(std::string const & encoding, int const & package);
+ bool setEncoding(std::string const & encoding, int package);
/// change the encoding of the input stream to \p encoding (iconv name)
bool setEncoding(std::string const & encoding);
/// get the current iconv encoding of the input stream
///
std::string verbatimOption();
///
- void error(std::string const & msg);
+ void error(std::string const & msg) const;
/// The previous token.
Token const prev_token() const;
/// The current token.
/// Is any further input pending()? This is not like
/// std::istream::good(), which returns true if all available input
/// was read, and the next attempt to read would return EOF.
- bool good();
+ bool good() const;
/// resets the parser to initial state
void reset();