Use a switch-case expression instead of an if statement in lexer.cpp.

This commit is contained in:
Username404-59 2021-03-06 13:38:26 +01:00
parent d3d951d843
commit 8772be9d5c
Signed by: Username404-59
GPG Key ID: 7AB361FBB257A5D1
1 changed files with 8 additions and 3 deletions

View File

@ -63,9 +63,14 @@ vector<tok>& lex(const string& in)
}
} else {
tok::type currentType = getIdentifierCharType(current);
if ((currentType == tok::STRING) || ((currentType == tok::UNEXPECTED) && ((generated.first == tok::IDENTIFIER) || (generated.first == tok::NUMBER)))) {
longLex = false;
} else generated.second.append(string(1, current));
switch (currentType) {
case tok::UNEXPECTED: if ((generated.first == currentType) || (generated.first == tok::STRING)) break;
case tok::STRING: {
longLex = false;
break;
}
default: generated.second.append(string(1, current)); break;
}
}
}
/* Test