Do you have any recommendations for where in the compiler this would happen, for those of us without thorough knowledge of all parts? What would the team need to see in a proposal for it to be sufficiently complete?<br><div class="gmail_quote"><div dir="ltr">On Tue, Dec 8, 2015 at 10:05 PM Chris Lattner &lt;<a href="mailto:clattner@apple.com">clattner@apple.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
&gt; On Dec 8, 2015, at 9:53 PM, Jacob Bandes-Storch via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br>
&gt;<br>
&gt; Enums are often used without associated values:<br>
&gt;<br>
&gt;     enum Attribute { case Title, Date }<br>
&gt;     enum Style { case Dark, Light }<br>
&gt;<br>
&gt; In such cases, it&#39;s very useful to be able to iterate over all possible values. But you have to do it manually:<br>
&gt;<br>
&gt;     extension Attribute {<br>
&gt;         static var allValues: [Attribute] {<br>
&gt;             return [.Title, .Date]  // imagine this x100, and not autogenerated :(<br>
&gt;         }<br>
&gt;     }<br>
&gt;<br>
&gt; It would be nice if the compiler generated this for us. It doesn&#39;t have to be an Array, but any kind of SequenceType. Maybe something like &quot;StaticCollection&quot;. Of course, this doesn&#39;t work in the general case, but I think simple enums are common enough that it might be worth doing.<br>
<br>
This is a commonly requested feature, and tons of people would support the ability to do this somehow.  Similarly, for integer-backed enums, many people want to be able to know the “max” enum rawValue so they can index into them.<br>
<br>
-Chris<br>
<br>
</blockquote></div>