[swift-evolution] [swift-evolution-announce] [Review] SE-0076: Add overrides taking an UnsafePointer source to non-destructive copying methods on UnsafeMutablePointer
Jordan Rose
jordan_rose at apple.com
Wed May 4 11:40:42 CDT 2016
> On May 4, 2016, at 09:18, Joe Groff via swift-evolution <swift-evolution at swift.org> wrote:
>
>>
>> On May 3, 2016, at 9:39 PM, Andrew Trick via swift-evolution <swift-evolution at swift.org> wrote:
>>
>>
>>> On May 3, 2016, at 8:56 PM, Chris Lattner <clattner at apple.com> wrote:
>>>
>>> Hello Swift community,
>>>
>>> The review of "SE-0076: Add overrides taking an UnsafePointer source to non-destructive copying methods on UnsafeMutablePointer" begins now and runs through May 9. The proposal is available here:
>>>
>>> https://github.com/apple/swift-evolution/blob/master/proposals/0076-copying-to-unsafe-mutable-pointer-with-unsafe-pointer-source.md
>>>
>>> * What is your evaluation of the proposal?
>>
>> The new methods are needed, but they don’t need to be overloads. I have no idea why the argument type was originally declared Mutable.
>>
>> func assignBackwardFrom(source: UnsafePointer<Pointee>, count: Int
>> )
>>
>> func assignFrom(source: UnsafePointer<Pointee>, count: Int
>> )
>>
>> func initializeFrom(source: UnsafePointer<Pointee>, count: Int)
>>
>> FWIW: I made precisely this change a while back on an experimental branch while experimenting with UnsafePointer conversion. I don’t see a problem with it.
>>
>> Implicit argument conversion from UnsafeMutablePointer<Pointee> to UnsafePointer<Pointee> is normal and extremely obvious.
>
> Yeah, Andy's approach seems cleaner than overloading.
:-( …but it’s an implicit conversion. Which we’re trying to expunge from the language. (Sort of.)
Jordan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160504/c5d58108/attachment.html>
More information about the swift-evolution
mailing list