ref: bccf958a86c52a27db9fab3f85f159ddc34629e8
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")
}