[swift-evolution] [Idea] Allowing most keywords after "."

Douglas Gregor dgregor at apple.com
Fri Feb 26 14:43:48 CST 2016


Hi all,

As part of the grand API guidelines discussion, there was a lot of support for using lowerCamelCase for enum cases, because they are values in Swift. One unfortunate wrinkle here is that it’s not at all uncommon to have a case named “Default” for an enumeration. One example pulled randomly from GitHub:

enum DispatchQOS {
  case UserInteractive
  case UserInitiated
  case Default
  case Utility
  case Background
}

If we’re lowerCamelCasting enum cases, this becomes:

enum DispatchQOS {
  case userInteractive
  case userInitiated
  case `default`
  case utility
  case background
}

Note the back-ticks, which are also needed at the call site:

	func dispatch(priority priority: 

	dispatch(priority: .`default`) { … }

We could allow one to refer to keywords without back-ticks following a “.”, similarly to the way we allow keywords without back-ticks preceding a ‘:’ for argument labels, e.g.:

	func dispatch(priority priority: 

	dispatch(priority: .`default`) { … }

One would still need to use back-ticks in the declaration of the case, but at least uses would be back-tick-free. Thoughts?

	- Doug

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160226/b70b5b9b/attachment.html>


More information about the swift-evolution mailing list