[swift-evolution] [Pitch] Remove destructive consumption from Sequence
Russ Bishop
xenadu at gmail.com
Mon Jun 27 18:20:33 CDT 2016
> On Jun 27, 2016, at 9:39 AM, Dave Abrahams via swift-evolution <swift-evolution at swift.org> wrote:
>
> Perhaps the language should accept types conforming to either of two
> unrelated protocols (your Sequence and Iterator, as you've described
> them, with no refinement relationship) for for-in.
>
The more I think about it the more I think this is a good model. Iterator is already single-use. Sequence then describes a type that can vend multiple iterators and is inherently multi-pass. I would argue the protocol is making this guarantee already, since makeIterator() naturally lends itself to multiple invocations.
In my example, LazyRowSequence becomes LazyRowIterator.
Russ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160627/13947e10/attachment.html>
More information about the swift-evolution
mailing list