Add string literals

This commit is contained in:
2020-05-17 20:30:57 +02:00
parent fc2870ca74
commit e1008b43a6
11 changed files with 152 additions and 48 deletions

View File

@@ -103,6 +103,11 @@ namespace Token
return Token(TokenType::Memory, value, isValid, lineNumber, lineColumn);
}
Token Token::CreateStringLiteralToken(std::string const & value, int const lineNumber, int const lineColumn)
{
return Token(TokenType::String, value.substr(1, value.size() - 2), true, lineNumber, lineColumn);
}
void Token::DebugPrint() const
{
std::putc(' ', stdout);
@@ -188,6 +193,10 @@ namespace Token
}
break;
case TokenType::String:
std::printf("STRING=\"%s\"", std::get<std::string>(data).c_str());
break;
case TokenType::Unknown:
default:
std::printf("UNKNOWN_TOKEN");