diff options
| Commit | 202194341e3697d77077aa50652acf1042350997 (patch) | |
|---|---|---|
| Author | 2018-10-15 09:00:16 +0300 | |
| Committer | 2018-10-15 09:00:16 +0300 | |
| Files | d530d0243407e86be9e9116e3853bf7992757ebd /JSImpl/src/Parser.cpp | |
| IPL-202194341e3697d77077aa50652acf1042350997.tar IPL-202194341e3697d77077aa50652acf1042350997.tar.gz IPL-202194341e3697d77077aa50652acf1042350997.zip | ||
| Parent | 6c7fc844cebe201408017602ff54bf442df0da25 (diff) | |
| Parent | f671c0492871418a7b6fed235196b85f79236cff (diff) | |
Merge branch 'master' into lexer-errors-handling
1 files changed, 7 insertions, 7 deletions
| -rw-r--r-- | JSImpl/src/Parser.cpp | 14 |
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)) |
