[swift-evolution] Proposal: Add SequenceType.first
Kevin Ballard
kevin at sb.org
Wed Dec 30 17:57:06 CST 2015
It's sometimes useful to get the first element of a sequence. To that
end I'd like to propose
extension SequenceType {
/// Returns the first element of `self`, or `nil` if `self` is empty.
/// - Complexity: O(1)
var first: Self.Generator.Element? {
var gen = generate()
return gen.next()
}
}
I think it makes sense to add this property to the definition of
SequenceType as well, so various sequences can override it to avoid
constructing a generator.
With this added to SequenceType, we can remove it from CollectionType,
as the behavior will be the same.
-Kevin Ballard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20151230/a9d92176/attachment.html>
More information about the swift-evolution
mailing list