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