Note: the wildcard syntax `?.foo` would itself not require this. It'd
require a space after the `?` in ternaries if the Elvis operator proposal
`a ?? b` comes along (and a grammatical edit isn't made to clarify `??.`
gets parsed as `? ?.`), but it would not otherwise be ambiguous.

On Fri, Jun 28, 2019 at 11:25 Isiah Meadows <[email protected]> wrote:

> Agreed in that it's not ambiguous - you have to disambiguate it with a
> space for the same reason you have to use `a+ +b` instead of `a++b` in
> minified code to avoid ambiguity when specifying `a + +b`. So `a?.b:.c`
> would be invalid, but `a? .b:.c` is not.
>
> On Thu, Jun 27, 2019 at 16:48 Bob Myers <[email protected]> wrote:
>
>> Not exactly, since the optional chaining operator is `?.` with no space
>> in between.
>>
>> On Thu, Jun 27, 2019 at 1:37 PM Simon Farrugia <[email protected]>
>> wrote:
>>
>>> Also, without a leading token, a selector expr with the optional
>>> chaining operator inside a ternary operator would be ambiguous.
>>>
>>> ```
>>>
>>> const contactSelector = true ? .contacts.email : .contacts.phone;
>>>
>>> ```
>>>
>>>
>>> --
> -----
>
> Isiah Meadows
> [email protected]
> www.isiahmeadows.com
>
-- 
-----

Isiah Meadows
[email protected]
www.isiahmeadows.com
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to