[Webkit-unassigned] [Bug 146934] [ES6] Arrow function syntax. Arrow function should support the destructuring parameters.
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Jan 13 11:46:40 PST 2016
https://bugs.webkit.org/show_bug.cgi?id=146934
--- Comment #5 from Saam Barati <sbarati at apple.com> ---
(In reply to comment #4)
> Comment on attachment 268657 [details]
> Patch
>
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=268657&action=review
>
> >> Source/JavaScriptCore/parser/Parser.h:1080
> >> +
> >
> > This code isn't correct.
> > It won't parse:
> > ```
> > (a, b, {c}, [d], {e, f}) => ...;
> > ```
> >
> > I suggest an alternate approach here:
> > have this code check if we have the single parameter name with no parens case:
> > ```
> > let x = a=>a;
> > ```
> > and otherwise, we already know how to parse "(p1, p2, ...)" style parameter lists
> > in another function in the parser. We should use that same code here. Either we use
> > it directly as is (probably not possible), or we should abstract that code in such a way
> > that this code can use it. That way, we don't have to places in the parser where we parse parameters.
> >
> > The reason we have this problem in the first place is that we have two places where we parse
> > parameters, lets not make that mistake again.
>
> I've tried to use function that parse parameters - parseFormalParameters,
> however parseFormalParameters adds parsed parameters to current scope, so I
> had to make face scope to avoid errors.
> Could you please check if it acceptable?
I think this approach is okay. It's unfortunate we have to create
a scope here, but this is probably the most reliable way to future-proof
this code.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160113/d86cdca9/attachment-0001.html>
More information about the webkit-unassigned
mailing list