This code as written is not sound and should not type check
for non-final classes conforming to SequenceType (eg, NSArray).
Instead, capture the base of the call from the preprocess closure
passed in. The closure is @noescape, so it should be equivalent.
Replace the Lazy-based implementations with open-coded implementations based on the _UnsafePartiallyInitializedContiguousArrayBuffer builder from the previous commit, so that we have control over the early-exit flow when an error interrupts the operation.
Swift SVN r30794
Otherwise, the length of the sequence is in principle lost. If you know
you have a sequence of less than 100 elements, you still want to know
exactly how many elements you initialized from it.
Swift SVN r30104
It was neither testable (because it was internal) nor usable (because in
practice models would be full of ambiguities with methods provided in
extensions for CollectionType.
Swift SVN r29859
These form an important part of the basis of the new lazy sequence
system. Tests for _CollectionWrapperType are currently blocked on
<rdar://problem/21599265>
Swift SVN r29814