}
- unsigned char c = 0; // getc() returns an int
char cc = 0;
status = 0;
while (is && !status) {
is.get(cc);
- c = cc;
+ unsigned char c = cc;
if (c == commentChar) {
// Read rest of line (fast :-)
if (esc) {
- bool escaped = false;
do {
- escaped = false;
+ bool escaped = false;
is.get(cc);
c = cc;
if (c == '\r') continue;
}
-string const Lexer::getString() const
+string const Lexer::getString(bool trim) const
{
lastReadOk_ = pimpl_->status == LEX_DATA || pimpl_->status == LEX_TOKEN;
if (lastReadOk_)
- return pimpl_->getString();
+ return trim ? support::trim(pimpl_->getString(), "\t ") : pimpl_->getString();
return string();
}
-docstring const Lexer::getDocString() const
+docstring const Lexer::getDocString(bool trim) const
{
lastReadOk_ = pimpl_->status == LEX_DATA || pimpl_->status == LEX_TOKEN;
if (lastReadOk_)
- return pimpl_->getDocString();
+ return trim ? support::trim(pimpl_->getDocString(), "\t ") : pimpl_->getDocString();
return docstring();
}