[swift-evolution] [Review #2] SE-0161: Smart KeyPaths: Better Key-Value Coding for Swift
David Hart
david at hartbit.com
Thu Apr 6 08:07:05 CDT 2017
> On 6 Apr 2017, at 15:03, Ed Wellbrook via swift-evolution <swift-evolution at swift.org> wrote:
>
> Apologies if I’ve simply just missed something, but are the trailing right parentheses in the proposed solution intentional? Reading through the code, having loosely followed this discussion, I’m really confused.
>
> Examples:
>
> ```
> // create a key path and use it
> let firstFriendsNameKeyPath = \Person.friends[0].name)
> ^ this
>
> // optional properties work too
> let bestFriendsNameKeyPath = \Person.bestFriend?.name)
> ^ this
> ```
>
> If it’s intentional, I’m very much against it.
>
It’s a typo. It shouldn’t be there.
> Cheers,
> Ed
>
>> On 6 Apr 2017, at 13:14, Ricardo Parada via swift-evolution <swift-evolution at swift.org> wrote:
>>
>>
>>> On Apr 5, 2017, at 11:13 PM, Xiaodi Wu <xiaodi.wu at gmail.com> wrote:
>>>
>>> It is also worth mentioning that, with the sigil, the `keyPath` label may not be so necessary:
>>>
>>> print(luke[\.friends[0].name])
>>> // or, if the suggestion above is accepted
>>> print(luke[\.friends[0].name\])
>>
>>
>> I think the label makes it more obvious, specially when using it with a key path variable:
>>
>> let someKeyPath = ...
>>
>> person[
>> keyPath: someKeyPath]
>>
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
More information about the swift-evolution
mailing list