[swift-evolution] [Review] SE-0032: Add find method to SequenceType
Jose Cheyo Jimenez
cheyo at masters3d.com
Thu Apr 28 23:43:27 CDT 2016
> * What is your evaluation of the proposal?
I think it is too limiting and I’d rather have find() be merged with current index() method.
// I believe these used to be called find() in swift 1.0
func index(of element: Self.Iterator.Element) -> Self.Index?
func index(@noescape where predicate: (Self.Iterator.Element) throws -> Bool) rethrows -> Self.Index?
I think it is really confusing to have an index() and a find() that do very similar things.
I rather have an overloaded find()
func find(indexOf element: Self.Iterator.Element) -> Self.Index?
func find(@noescape indexOf predicate: (Self.Iterator.Element) throws -> Bool) rethrows -> Self.Index?
func find(@noescape element predicate: (Self.Iterator.Element) throws -> Bool) rethrows -> Self.Iterator.Element?
// Return a tuple with the index and element
func find(@noescape predicate: (Self.Iterator.Element) throws -> Bool) rethrows -> (index:Self.Index, element:Self.Iterator.Element)?
> * Is the problem being addressed significant enough to warrant a change to Swift?
yes, I use filter for this but I believe find() and index() should be merged for it to be worth it.
> * Does this proposal fit well with the feel and direction of Swift?
yes but I believe index() should be renamed to find()
> * If you have you used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?
> * How much effort did you put into your review? A glance, a quick reading, or an in-depth study?
read the proposal and suggested an extension of scope.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the swift-evolution