diff --git a/src/lexer.cpp b/src/lexer.cpp index ba76f7b..3bf73fd 100644 --- a/src/lexer.cpp +++ b/src/lexer.cpp @@ -256,9 +256,6 @@ bool Lexer::consumeValue() bool Lexer::consumeComment() { - size_t column = m_column; - std::string comment; - ignore(); // ; static std::unordered_set exit = { @@ -275,18 +272,9 @@ bool Lexer::consumeComment() break; } - comment += character; ignore(); } - // Trim comment - comment.erase(comment.begin(), - std::find_if(comment.begin(), comment.end(), [](char c) { return !std::isspace(c); })); - comment.erase(std::find_if(comment.rbegin(), comment.rend(), [](char c) { return !std::isspace(c); }).base(), - comment.end()); - - m_tokens.push_back({ Token::Type::Comment, m_line, column, comment }); - return true; } diff --git a/src/lexer.h b/src/lexer.h index 052fef8..c2325b4 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -34,7 +34,6 @@ struct Token { String, // "foobar" Keyword, // :keyword Value, // number, "nil", "true", "false", symbol - Comment, // ; Error, }; diff --git a/src/reader.cpp b/src/reader.cpp index c21c466..0d115aa 100644 --- a/src/reader.cpp +++ b/src/reader.cpp @@ -45,14 +45,7 @@ void Reader::read() // Check for multiple expressions if (!isEOF()) { - Token::Type type = peek().type; - switch (type) { - case Token::Type::Comment: - break; - default: - Error::the().add("more than one sexp in input"); - break; - }; + Error::the().add("more than one sexp in input"); } } @@ -108,10 +101,6 @@ ValuePtr Reader::readImpl() case Token::Type::Keyword: // :keyword return readKeyword(); break; - case Token::Type::Comment: // ; - ignore(); - return nullptr; - break; case Token::Type::Value: // true, false, nil return readValue(); break;