πWhen-Cases
When-Case syntax
when <expr> @ <Return Type Of Below exprs> {
is <expr> -> <expr>
is <expr> -> <expr>
is <expr> -> <expr>
default -> <expr>
}Working Example
package main
import "fmt" as fmt
fun main(): Unit {
let language = "Gauntlet"
let reaction = when language @ String {
is "Gauntlet" -> "smiled"
is "Java" -> "threw up"
is "C++" -> "ripped my hair out"
is "PHP" -> "died"
default -> "laughed"
}
fmt.println("When I found out I was required to program in " + language + ", I " + reaction + "!")
}package main
import fmt "fmt"
func main() {
language := "Gauntlet"
reaction := (func() string {
switch language {
case "PHP":
{
return "died"
}
case "C++":
{
return "ripped my hair out"
}
case "Java":
{
return "threw up"
}
case "Gauntlet":
{
return "smiled"
}
default:
{
return "laughed"
}
}
})()
fmt.Println("When I found out I was required to program in " + language + ", I " + reaction + "!")
// Eliminates any 'unused variable' errors
_, _ = language, reaction
}
Last updated