ref: ad4d1397fb08b0d205e623f9a7c74fa19afb1c8c
dir: /test/matchexhaust.myr/
use std
type u = union
`Foo (bool, v, bool)
`Bar (bool, bool)
`Baz bool
`Quux
;;
type v = union
`A
`B
;;
const main = {
match `Quux
| `Foo (true, `A, true):
| `Foo (true, `A, false):
| `Foo (true, `B, true):
| `Foo (true, `B, false):
| `Foo (false, `A, true):
| `Foo (false, `A, false):
| `Foo (false, `B, true):
| `Foo (false, `B, false):
| `Bar (false, false):
| `Bar (false, true):
| `Bar (true, false):
| `Bar (true, true):
| `Baz false:
| `Baz true:
| `Quux:
;;
std.put("worked\n")
}