On 04.07.2016 21:21, Brent Royal-Gordon via swift-evolution wrote:
On Jul 4, 2016, at 10:43 AM, Leonardo Pessoa <m...@lmpessoa.com> wrote:
My issue with this being opt-in is third-party libraries.
That's why we have retroactive modeling. :^)
import SomeEnumKit
extension SomeEnum: ValuesEnumerable {}
You can extend another module's public enum to add conformance to a protocol,
and there's no reason it can't generate the code in your module instead of
theirs.
Yes, but I can't understand, why not give this ability to each enum? It
seems like this feature is a very basic thing that enum must(IMO) to have.
What kind of overhead this will generate? Static function or property that
returns array as I understand should not generate any impact on memory
required to store each separate *instance* of enum. I don't believe that
adding a number of bytes to enum *type* to implement .allValues(or whatever
named) will have any difference for total application/framework.
_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution