Website Summary Files Commits Branches @commit @diff @stats
path: root / JSImpl / src / Parser.cpp
diff options
context:
space:
mode:
Commit370d2afe025f899caab7829407363a37a37093b2 (patch)
Author
 martin dobrev <martindobrev0@gmail.com>
2018-10-14 18:09:45 +0300
Committer
 martin dobrev <martindobrev0@gmail.com>
2018-10-14 18:09:45 +0300
Filesc9cf14183738b92052879009babdad16d0f7dfad /JSImpl/src/Parser.cpp
IPL-370d2afe025f899caab7829407363a37a37093b2.tar
IPL-370d2afe025f899caab7829407363a37a37093b2.tar.gz
IPL-370d2afe025f899caab7829407363a37a37093b2.zip
Parenta24ea4d6be0a92f9d2d8e937d08f6ea5575021ef (diff)
Split literls in different classes and remove all handwritten code.
1 files changed, 6 insertions, 6 deletions
-rw-r--r--JSImpl/src/Parser.cpp12
diff --git a/JSImpl/src/Parser.cpp b/JSImpl/src/Parser.cpp
index 9bf9922..09166db 100644
--- a/JSImpl/src/Parser.cpp
+++ b/JSImpl/src/Parser.cpp
@@ -248,29 +248,29 @@ ExpressionPtr Parser::SimpleExpression()
// | ArrayLiteral
if (Match(TokenType::Number))
{
- return IPLMakeSharePtr<LiteralExpression>(Prev().Number);
+ return IPLMakeSharePtr<LiteralNumber>(Prev().Number);
}
else if (Match(TokenType::String))
{
- return IPLMakeSharePtr<LiteralExpression>(Prev().Lexeme);
+ return IPLMakeSharePtr<LiteralString>(Prev().Lexeme);
}
else if (Match(TokenType::Null))
{
- return IPLMakeSharePtr<LiteralExpression>(Prev().Type);
+ return IPLMakeSharePtr<LiteralNull>();
}
else if (Match(TokenType::Undefined))
{
- return IPLMakeSharePtr<LiteralExpression>(Prev().Type);
+ return IPLMakeSharePtr<LiteralUndefined>();
}
else if (Match(TokenType::True))
{
bool t = true;
- return IPLMakeSharePtr<LiteralExpression>(t);
+ return IPLMakeSharePtr<LiteralBoolean>(t);
}
else if (Match(TokenType::False))
{
bool f = false;
- return IPLMakeSharePtr<LiteralExpression>(f);
+ return IPLMakeSharePtr<LiteralBoolean>(f);
}
else if (Match(TokenType::Identifier))
{