[swift-evolution] [Review] SE 0192 - Non-Exhaustive Enums
brent at architechies.com
Wed Dec 20 19:53:11 CST 2017
> On Dec 20, 2017, at 12:54 PM, Charlie Monroe via swift-evolution <swift-evolution at swift.org> wrote:
> the choice to make them non-exhaustive by default is not in line with everything else in Swift - everything else is generally closed by default - public (-> final in other modules), no access modified (-> internal), ...
It is precisely in line with the `public`/`open` split. They both come from the principle that the default behavior should bind library authors as little as possible. The default for public classes is non-subclassable because going from non-subclassable to subclassable doesn't break anything, but the opposite direction does; the default for enums should be non-exhaustive because going from non-exhaustive to exhaustive doesn't break anything, but the opposite direction does.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the swift-evolution