[swift-evolution] [Swift 3?] Add ContiguousArray -> Array non-copying initialiser
Dmitri Gribenko
gribozavr at gmail.com
Thu Jul 28 03:32:59 CDT 2016
On Wed, Jul 27, 2016 at 11:08 PM, Karl via swift-evolution
<swift-evolution at swift.org> wrote:
> It seems like a reasonably large hole with a simple fix. Going from
> ContiguousArray to Array is a kind-of upcasting conversion and should be
> allowed -- it seems like that's almost the whole point of the type.
Hi Karl,
Converting a ContiguousArray to Array using Array's initializer is
O(1). Are you seeing something different?
Array.init:
https://github.com/apple/swift/blob/f8f6d61d195185f54aeba425dd0db8be4c5d163f/stdlib/public/core/Arrays.swift.gyb#L1037
ContiguousArray._copyToContiguousArray():
https://github.com/apple/swift/blob/f8f6d61d195185f54aeba425dd0db8be4c5d163f/stdlib/public/core/Arrays.swift.gyb#L1430
Dmitri
--
main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
(j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/
More information about the swift-evolution
mailing list