[swift-evolution] Collection index complexity and data structures

David Waite david at alkaline-solutions.com
Fri Jun 24 16:05:17 CDT 2016


And never mind me. Not sure how I missed that in the docs that many times.

-DW

> On Jun 24, 2016, at 1:38 PM, David Waite via swift-evolution <swift-evolution at swift.org> wrote:
> 
> I noticed that the new Collection index(_:offsetBy:) <http://swiftdoc.org/v3.0/protocol/Collection/#comment-func-index_offsetby_> does not define that negative offsets require a BidirectionalCollection. It also declares that negative offsets must complete in O( | offset | ) time. This differs from other methods such as distance(from:to:) <http://swiftdoc.org/v3.0/protocol/Collection/#comment-func-distance-from_to_>which indicates start <= end if not a BidirectionalCollection
> 
> This would preclude some data structures from strictly implementing the Collection protocol, such as singly-linked lists.
> 
> Would it be appropriate to indicate instead that BidirectionalCollection defines the negative offset behavior and negative offset performance constraint?
> 
> -DW
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160624/0e8fc04e/attachment.html>


More information about the swift-evolution mailing list