Website Summary Files Commits Branches @commit @diff @stats
path: root / JSImpl / src / Parser.cpp
diff options
context:
space:
mode:
1 files changed, 7 insertions, 7 deletions
-rw-r--r--JSImpl/src/Parser.cpp14
diff --git a/JSImpl/src/Parser.cpp b/JSImpl/src/Parser.cpp
index 7fb690f..a2a46e2 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))
{
@@ -930,7 +930,7 @@ ExpressionPtr Parser::Parse()
ExpressionPtr Parser::FunctionDefinition()
{
- auto FormalParameters = [=](IPLVector<IPLString> identifiers) -> bool {
+ auto FormalParameters = [=](IPLVector<IPLString>& identifiers) -> bool {
if (Match(TokenType::LeftParen))
{
while (Match(TokenType::Identifier))