[swift-evolution] [Idea] Replace enumerate() with something more explicit
brent at architechies.com
Sun Apr 17 00:55:27 CDT 2016
> With the above definition I would suggest a name change to entries, since a Dictionary's keys are not necessarily numbers, hence enumerate is misleading.
> Nothing for Set since it isn't subscriptable.
I think you're slightly confused. All Collections have an Index. Dictionary's Index is not its Key; it is an opaque type which references an entry in its internal table. Set also has an Index; again, it is an opaque type which references an entry in its internal table. Your `enumerate()` (or my `indexed()`) would return these opaque `Index`es on all of these types.
If you want Array to return `(Int, Element)`, Dictionary to return `(Key, Value)`, and Set to not have the operation at all, you're describing something ad-hoc and entirely disconnected from the Collection type.
More information about the swift-evolution