[parser] Further simplify ParseAssignmentExpression
This moves is_async and parenthesized_formals tracking out of the ParseAssignmentExpression header. Instead we set flags on the parser for the next arrow function: next_arrow_function_kind_ that defaults to kArrowFunction and next_arrow_formals_parenthesized_ which defaults to false. If we end up recognizing an async arrow head, we update next_arrow_function_kind_ to kAsyncArrowFunction. If we detect (...) followed by => or async(...) followed by => we set next_arrow_formals_parenthesized_ to true. When we start parsing the arrow continuation we consume the values and reset them to default for the next arrow function. Change-Id: Ia22c0068fea0f175fafc568b7339813fd10c3b5a Reviewed-on: https://chromium-review.googlesource.com/c/1345996 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#57684}
Showing
Please
register
or
sign in
to comment