>> I think this is better modeled in Swift as something like:
>>
>> let john = (firstName:"John", lastName:"Doe")
>> let alice = with(john) {
>> $0.firstName = "Alice"
>> }
>
> You can kind of do this now:
>
> struct Person {
> var firstName, lastName: String
> }
>
> func modify<T>(item: T, update: (inout T) -> Void) -> T {
> var this = item
> update(&this)
> return this
> }
>
> let carol: Person = modify(john) {
> $0.firstName = "Carol"
> }
>
> print(carol)
You *can* do this now. I'm suggesting it be added to Stdlib.
--
Brent Royal-Gordon
Architechies
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution