Skip to content

Commit fe9ad6f

Browse files
authored
Merge pull request #5 from Digit16/wkubski/interpreter
Fix Lexer
2 parents 87ed8e4 + b40ec98 commit fe9ad6f

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

interpreter/src/Lexer.cpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,11 +192,17 @@ Token Lexer::id()
192192
std::string result;
193193
std::map<std::string, Token> RESERVED_KEYWORDS = getReservedKeywords();
194194

195-
while (_currentChar != '\0' && (isalnum(_currentChar) || _currentChar == '(' || _currentChar == ')')) {
195+
while (_currentChar != '\0' && isalnum(_currentChar)) {
196196
result += _currentChar;
197197
advance();
198198
}
199199

200+
if (_currentChar == '(' && peekNextChar() == ')') {
201+
result += "()";
202+
advance();
203+
advance();
204+
}
205+
200206
if (RESERVED_KEYWORDS.count(result)) {
201207
return RESERVED_KEYWORDS.at(result);
202208
} else {

0 commit comments

Comments
 (0)