My wild aspirations in a nutshell:
Core enums: Any enum that's created without raw or associated values, e.g.
enum MyEnum {case This, That, Whatever, Etc}, can (and should) be Array<Self>
representable. This would add intrinsic ordering and raw value construction
starting with 0, up to count - 1. End-devs could use the ordering or not use
the ordering, but it would be possible to convert to bit representation (1 <<
this.rawValue), support iteration through the enumeration, introduce ranges
for switches, etc. A massive improvement.
Raw value enums: Any enum that uses raw values, e.g. enum ForExample: String
{case Hello = "hello", There = "there"} should be representable as Set<T>
Associated type enums: all bets are off
-- E
> On Dec 21, 2015, at 12:52 PM, Jacob Bandes-Storch via swift-evolution
> <[email protected]> wrote:
>
> I brought up this topic a couple weeks ago in a thread called "List of all
> Enum values (for simple enums)":
>
> https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151207/001233.html
>
> <https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151207/001233.html>
>
> I suppose it's time to start synthesizing those ideas/discussion into a
> proposal :)
>
> Jacob
>
> On Mon, Dec 21, 2015 at 8:35 AM, Stephen Celis via swift-evolution
> <[email protected] <mailto:[email protected]>> wrote:
>> On Dec 21, 2015, at 11:27 AM, Nevin Brackett-Rozinsky
>> <[email protected] <mailto:[email protected]>>
>> wrote:
>>
>> Would .cases return the enum’s cases in source-code order? That seems
>> fragile at first glance.
>>
>> It might be worth considering to have it return an unordered collection
>> (set) instead.
>
> Care to elaborate on why you think it may be fragile?
>
> Retaining order makes sense to me given that integer-backed enumerations
> auto-increment and that enumerations cannot be extended with new cases. I'm
> not opposed to using a set, though, if that makes more sense.
>
> Stephen
>
>
> _______________________________________________
> swift-evolution mailing list
> [email protected] <mailto:[email protected]>
> https://lists.swift.org/mailman/listinfo/swift-evolution
> <https://lists.swift.org/mailman/listinfo/swift-evolution>
>
>
> _______________________________________________
> swift-evolution mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution