Skip to content

Instantly share code, notes, and snippets.

@safareli
Created May 31, 2021 14:05
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 safareli/193e0f8e64b5269849a66f26062c675a to your computer and use it in GitHub Desktop.
Save safareli/193e0f8e64b5269849a66f26062c675a to your computer and use it in GitHub Desktop.
enum Bool {True="t", False="f"}
function f(b:Bool) {
switch(b) {
case Bool.True: return 'true'
case Bool.False: return 'false'
// ERROR AS EXPECTED ✅
case "11": return 'oops'
// ERROR AS EXPECTED ✅
case 11: return 'oops'
}
}
// ERROR AS EXPECTED ✅
f("asda")
// ERROR AS EXPECTED ✅
f(11)
enum Bool2 {True, False}
// Same result with
// enum Bool2 {True=1, False=2}
function f2(b:Bool2) {
switch(b) {
case Bool2.True: return 'true'
case Bool2.False: return 'false'
// ERROR AS EXPECTED ✅
case "11": return 'oops'
// NO ERROR UNEXPECTED ❗️
case 11: return 'oops'
}
}
// ERROR AS EXPECTED ✅
f2("asda")
// NO ERROR UNEXPECTED ❗️
f2(11)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment