[swift-users] Time taken on Collection.underestimatedCount?

Daryle Walker darylew at mac.com
Wed Jan 3 02:46:40 CST 2018


It’s SR-6693 <https://bugs.swift.org/browse/SR-6693> (“Collection.underestimatedCount shouldn't call .count when the latter isn't O(1).").

— 
Daryle Walker
Mac, Internet, and Video Game Junkie
darylew AT mac DOT com 

> On Jan 2, 2018, at 11:29 PM, Ben Cohen <ben_cohen at apple.com> wrote:
> 
> Hi Daryle,
> 
> Good spot! This is definitely a bug. The documentation on Sequence should read something different (though what it ought to say is somewhat debatable…).
> 
> Could you file a bug on bugs.swift.org <http://bugs.swift.org/>?
> 
> Thanks!
> 
>> On Dec 29, 2017, at 17:54, Daryle Walker via swift-users <swift-users at swift.org <mailto:swift-users at swift.org>> wrote:
>> 
>> Sequence.underestimatedCount is supposed to work at O(1) time, according to the docs on Apple’s developer website. On the other hand, Collection.count works at O(n) time, except for RandomAccessCollection where it can work at O(1) time. I’ve been playing around with creating various Collection types, and it seem that their underestimatedCount has a default implementation that just dumps to count, even when the latter is O(n)!
>> 
>> I think that underestimatedCount should call count only for RandomAccessCollection, while Collection and BidirectionalCollection call isEmpty as needed. Is this a good idea? Should I post a bug report (somewhere)?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-users/attachments/20180103/7241f0a7/attachment.html>


More information about the swift-users mailing list