LibJS: Add parsed parameters to FunctionDeclaration

This commit is contained in:
Linus Groh 2020-03-13 13:40:24 +00:00 committed by Andreas Kling
parent 83ea7bb9e7
commit 0e04e2cff0
Notes: sideshowbarker 2024-07-19 08:19:50 +09:00

View File

@ -245,9 +245,10 @@ NonnullOwnPtr<FunctionDeclaration> Parser::parse_function_declaration()
consume(TokenType::Function);
auto name = consume(TokenType::Identifier).value();
consume(TokenType::ParenOpen);
Vector<String> parameters;
while (match(TokenType::Identifier)) {
// FIXME: actually add parameters to function
consume(TokenType::Identifier);
auto parameter = consume(TokenType::Identifier).value();
parameters.append(parameter);
if (match(TokenType::ParenClose)) {
break;
}
@ -255,7 +256,7 @@ NonnullOwnPtr<FunctionDeclaration> Parser::parse_function_declaration()
}
consume(TokenType::ParenClose);
auto body = parse_block_statement();
return make<FunctionDeclaration>(name, move(body));
return make<FunctionDeclaration>(name, move(body), move(parameters));
}
NonnullOwnPtr<VariableDeclaration> Parser::parse_variable_declaration()