On Jan 8, 2018, at 11:07 PM, Nate Cook <n...@natecook.com> wrote:
>>> 
>>> The old name can live on indefinitely via a typealias (which has no ABI 
>>> consequences, so could be retired at a later date once everyone has had 
>>> plenty of time to address the deprecation warnings). Removing it as not 
>>> carrying its weight (and instead using `[(Key,Value)]`, which is basically 
>>> what it’s a wrapper for) is probably off the table for source stability 
>>> reasons.
>> 
>> I’m not familiar with this type at all, so I apologize for the dumb question 
>> but… why was this added in the first place?  If it is the wrong thing, why 
>> not just deprecate it in Swift 5 and remove it in a future release?  That 
>> avoids it being an ABI concern, because we could make it be force inlined 
>> into any client code.
> 
> According to now-gone doc comments, it's intended to be used when providing 
> the children for a custom mirror (that's the only API I know of that uses the 
> type). The order of elements there is important, but given how scarcely used 
> the type is, an array of tuples might be a reasonable (though 
> source-breaking) substitute. 
> 
>> Finally, is anyone actually using this type?
> 
> In the standard library, we have this Mirror initializer: 
> https://developer.apple.com/documentation/swift/mirror/1540408-init 
> <https://developer.apple.com/documentation/swift/mirror/1540408-init>. If 
> anyone is customizing their type's mirror, it's a good bet that they're 
> calling that init and passing a literal that would break if the argument 
> changed to an array. The translation should be mechanical, so maybe it could 
> be a migrator fix? (I don't know enough about how that works to know.)

Ah I see.  What is the plan for Mirrors?  I thought they had numerous known 
deficiencies and should be replaced with a better reflection system.  Are they 
going to make the jump to ABI stability?

-Chris

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to