[swift-evolution] [Review] SE 0192 - Non-Exhaustive Enums

Ben Rimmington me at benrimmington.com
Sun Dec 31 10:59:34 CST 2017

> On 21 Dec 2017, at 03:32, John McCall wrote:
>> On Dec 20, 2017, at 10:16 PM, Brent Royal-Gordon wrote:
>>> On Dec 19, 2017, at 2:58 PM, Ted Kremenek wrote:
>>> 	• What is your evaluation of the proposal?
>> I am pleased with the broad strokes of this design. I have quibbles with three areas:
>> 1. The `@exhaustive` attribute may be confusing because the term doesn't suggest versioning. My best alternative suggestion is `@frozen`, which matches existing programming terminology: something that has been frozen will not be changed in the future.
> I rather like @frozen.  We could use that across language features, so that we don't end up with a keyword per kind of declaration.

Could this also be used on functions to make them inlinable?
i.e. The body of the function has been frozen.

public func a()

@available(*, frozen)
public func b()

@available(swift, introduced: 4.1, frozen: 5.0)
public func c()



-- Ben

More information about the swift-evolution mailing list