struct OtherType {
	foo string
	bar string
}

type RuneAlias = rune
type RuneAliasOrOtherType = OtherType | RuneAlias

const whitespace = [rune(0x0009), 0x000a, 0x000c, 0x000d, 0x0020]

fn main() {
	mut x := RuneAliasOrOtherType(RuneAlias(rune(`!`)))
	match x {
		RuneAlias {
			if x in whitespace {
				// doing `if x as RuneAlias in whitespace` here
				// works but it should be doing that automatically
				// since I'm inside the RuneAlias match condition.
			}
		}
		else {
			// do something else
		}
	}
}
