Skip to content

Instantly share code, notes, and snippets.

@TimothyChilvers
Created February 21, 2018 17:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save TimothyChilvers/e6ee3cef33e0a306ce526ceb167ba374 to your computer and use it in GitHub Desktop.
Save TimothyChilvers/e6ee3cef33e0a306ce526ceb167ba374 to your computer and use it in GitHub Desktop.
Swift enum switch insufficient cases still builds
enum Demo {
case value1
case value2
case value3
case value4
case value5
case value6
case value7
case value8
case value9
case value10
case value11
case value12
}
extension Demo {
static func demoSwitch(_ lhs: Demo, _ rhs: Demo) -> Bool {
switch (lhs, rhs) {
//matching
case (.value1, .value1): return true
case (.value2, .value2): return true
case (.value3, .value3): return true
case (.value4, .value4): return true
case (.value5, .value5): return true
case (.value6, .value6): return true
case (.value7, .value7): return true
case (.value8, .value8): return true
case (.value9, .value9): return true
case (.value10, .value10): return true
case (.value11, .value11): return true
case (.value12, .value12): return true
//not matching
//case (.value1, _): return false
case (.value2, _): return false
case (.value3, _): return false
case (.value4, _): return false
case (.value5, _): return false
case (.value6, _): return false
case (.value7, _): return false
case (.value8, _): return false
case (.value9, _): return false
case (.value10, _): return false
case (.value11, _): return false
case (.value12, _): return false
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment