SplitScript reference / Language / match
match
keyword
match value { pattern => expression }
Exhaustively matches a value.
match supports enum payloads, optional None/Some(value) patterns, iterator End/Item(value) patterns, fallible Err(error)/Ok(value) patterns, string, character, integer, boolean, and file-version literals, guards, and a wildcard. String patterns compare contents, not WebAssembly GC identities. Enum and wrapper matches must cover every state; open-ended literal domains require _; guarded arms do not establish coverage.
Examples
Handle every enum variant
let label = match mode {
Mode.Menu => "Menu",
Mode.Playing => "Playing"
}
Dispatch on exact string contents
return match name {
"game.exe" => "full game",
"game-demo.exe" => "demo",
_ => "unsupported",
}