case ある値を複数のパターンでテストし、最初にマッチしたパターンに対応するコードを実行する パターンにはガード節も含めることができる
> c "control/case.ex"
First line: case File.open("./control/case.ex") do
[]
> c "control/case_file_not_exist.ex"
Failed to open file: enoent
[]
入れ子のパターンマッチを使った例
> c "control/case1.ex"
Dave lives in TX
[Users]
> c "control/case1_no_matches.ex"
No matches
[Users]
ガード節を使った例
> c "control/case2.ex"
You are cleared to enter the Foo Bar, Dave
[]
> c "control/case2_no_admission.ex"
Sorry, no admission
[]