Basic collection-element copying?

Unless there is a version that I simply missed, why don't we have:

extension MutableCollection {
   // Overwrite the contents of this collection with the elements from
   // the given sequence,
   // returning where each sequence left off.
   mutable public func copy<T>(from source: T) -> (end: Index, suffix: T.Iterator)
   where T: Sequence, T.Element == Element {
      //...
   }
}

I know we can make such an extension above, but it seems such basic functionality that it's surprising that we didn't provide it. Is it simply another "oops, we forgot"?

2 Likes