It’s a problem with Apple documentation. swiftdoc.org does list the associated types, but is no longer maintained :(.
-- Howard. > On 16 Dec 2017, at 1:17 pm, Nevin Brackett-Rozinsky via swift-users > <swift-users@swift.org> wrote: > > In Xcode if I write, > > extension Collection { > var secondIndex: Index { return index(after: startIndex) } > } > > and then option-click on “Index”, it shows “associatedtype Index : > Comparable” followed by a description. Is this documented somewhere? > > When I look at the documentation for Collection on developer.apple.com there > is no mention of an Index associated type. I also don’t see it in The Swift > Programming Language. > > If someone didn’t already know Collection.Index exists, how would they be > expected to learn of it? And if they didn’t know it must be Comparable how > would they learn that? > > Also, are there any semantic requirements on Collection.Index, for example is > it required that “idx < index(after: idx)” must evaluate to true for any > valid index “idx”? > > • • • > > On a somewhat related note, the “indices” property of Collection has a > discussion section visible by option-clicking in Xcode or by looking at the > documentation for it on developer.apple.com. > > And that discussion recommends against iterating over “indices” when mutating > a collection, because “indices” could hold a strong reference to the > collection and thus create an unexpected copy. Instead one should manually > advance from startIndex to endIndex in a while loop. > > Now, this is at least documented, but perhaps it should be made more > prominent? It seems to me that if “for i in c.indices” represents a > performance pitfall then it should be regarded as an attractive nuisance. > > Nevin > _______________________________________________ > swift-users mailing list > swift-users@swift.org > https://lists.swift.org/mailman/listinfo/swift-users
_______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users