slovo/tests/option-result-match.checked.lower
2026-05-22 08:38:43 +02:00

260 lines
7.6 KiB
Plaintext

program main
fn maybe_value(value: i32) -> (option i32)
some : (option i32)
var value : i32
fn maybe_empty() -> (option i32)
none : (option i32)
fn maybe_wide_value(value: i64) -> (option i64)
some : (option i64)
var value : i64
fn maybe_wide_empty() -> (option i64)
none : (option i64)
fn maybe_float_value(value: f64) -> (option f64)
some : (option f64)
var value : f64
fn maybe_float_empty() -> (option f64)
none : (option f64)
fn maybe_flag_value(value: bool) -> (option bool)
some : (option bool)
var value : bool
fn maybe_flag_empty() -> (option bool)
none : (option bool)
fn maybe_string_value(value: string) -> (option string)
some : (option string)
var value : string
fn maybe_string_empty() -> (option string)
none : (option string)
fn result_ok_value(value: i32) -> (result i32 i32)
ok : (result i32 i32)
var value : i32
fn result_err_value(code: i32) -> (result i32 i32)
err : (result i32 i32)
var code : i32
fn option_value_or(value: (option i32), fallback: i32) -> i32
match : i32
subject
var value : (option i32)
arm some payload
var payload : i32
arm none
var fallback : i32
fn option_bump_or_zero(value: (option i32)) -> i32
match : i32
subject
var value : (option i32)
arm some payload
local let bumped : unit
binary + : i32
var payload : i32
int 1 : i32
var bumped : i32
arm none
int 0 : i32
fn option_wide_value_or(value: (option i64), fallback: i64) -> i64
match : i64
subject
var value : (option i64)
arm some payload
var payload : i64
arm none
var fallback : i64
fn option_wide_bump_or_zero(value: (option i64)) -> i64
match : i64
subject
var value : (option i64)
arm some payload
local let bumped : unit
binary + : i64
var payload : i64
i64 1 : i64
var bumped : i64
arm none
i64 0 : i64
fn option_float_value_or(value: (option f64), fallback: f64) -> f64
match : f64
subject
var value : (option f64)
arm some payload
var payload : f64
arm none
var fallback : f64
fn option_float_bump_or_zero(value: (option f64)) -> f64
match : f64
subject
var value : (option f64)
arm some payload
local let bumped : unit
binary + : f64
var payload : f64
float 1 : f64
var bumped : f64
arm none
float 0 : f64
fn option_flag_value_or(value: (option bool), fallback: bool) -> bool
match : bool
subject
var value : (option bool)
arm some payload
var payload : bool
arm none
var fallback : bool
fn option_flag_selected_or(value: (option bool), fallback: bool) -> bool
match : bool
subject
var value : (option bool)
arm some payload
if : bool
var payload : bool
bool true : bool
bool false : bool
var payload : bool
arm none
var fallback : bool
fn option_string_value_or(value: (option string), fallback: string) -> string
match : string
subject
var value : (option string)
arm some payload
var payload : string
arm none
var fallback : string
fn option_string_selected_or(value: (option string), fallback: string) -> string
match : string
subject
var value : (option string)
arm some payload
local let chosen : unit
var payload : string
var chosen : string
arm none
var fallback : string
fn result_value_or_code(value: (result i32 i32)) -> i32
match : i32
subject
var value : (result i32 i32)
arm ok payload
var payload : i32
arm err code
var code : i32
fn result_score(value: (result i32 i32)) -> i32
match : i32
subject
var value : (result i32 i32)
arm ok payload
binary + : i32
var payload : i32
int 10 : i32
arm err code
var code : i32
fn main() -> i32
int 0 : i32
test "option match some payload"
binary = : bool
call option_value_or : i32
call maybe_value : (option i32)
int 42 : i32
int 0 : i32
int 42 : i32
test "option match none fallback"
binary = : bool
call option_value_or : i32
call maybe_empty : (option i32)
int 7 : i32
int 7 : i32
test "option match multi expression arm"
binary = : bool
call option_bump_or_zero : i32
call maybe_value : (option i32)
int 8 : i32
int 9 : i32
test "option i64 match some payload"
binary = : bool
call option_wide_value_or : i64
call maybe_wide_value : (option i64)
i64 2147483648 : i64
i64 0 : i64
i64 2147483648 : i64
test "option i64 match none fallback"
binary = : bool
call option_wide_value_or : i64
call maybe_wide_empty : (option i64)
i64 7 : i64
i64 7 : i64
test "option i64 match multi expression arm"
binary = : bool
call option_wide_bump_or_zero : i64
call maybe_wide_value : (option i64)
i64 8 : i64
i64 9 : i64
test "option f64 match some payload"
binary = : bool
call option_float_value_or : f64
call maybe_float_value : (option f64)
float 42.5 : f64
float 0 : f64
float 42.5 : f64
test "option f64 match none fallback"
binary = : bool
call option_float_value_or : f64
call maybe_float_empty : (option f64)
float 7 : f64
float 7 : f64
test "option f64 match multi expression arm"
binary = : bool
call option_float_bump_or_zero : f64
call maybe_float_value : (option f64)
float 8.5 : f64
float 9.5 : f64
test "option bool match some payload"
call option_flag_value_or : bool
call maybe_flag_value : (option bool)
bool true : bool
bool false : bool
test "option bool match none fallback"
call option_flag_value_or : bool
call maybe_flag_empty : (option bool)
bool true : bool
test "option bool match multi expression arm"
call option_flag_selected_or : bool
call maybe_flag_value : (option bool)
bool true : bool
bool false : bool
test "option string match some payload"
binary = : bool
call option_string_value_or : string
call maybe_string_value : (option string)
string "slovo" : string
string "fallback" : string
string "slovo" : string
test "option string match none fallback"
binary = : bool
call option_string_value_or : string
call maybe_string_empty : (option string)
string "fallback" : string
string "fallback" : string
test "option string match multi expression arm"
binary = : bool
call option_string_selected_or : string
call maybe_string_value : (option string)
string "oak" : string
string "fallback" : string
string "oak" : string
test "result match ok payload"
binary = : bool
call result_value_or_code : i32
call result_ok_value : (result i32 i32)
int 30 : i32
int 30 : i32
test "result match err payload"
binary = : bool
call result_value_or_code : i32
call result_err_value : (result i32 i32)
int 5 : i32
int 5 : i32
test "result match computed arm"
binary = : bool
call result_score : i32
call result_ok_value : (result i32 i32)
int 2 : i32
int 12 : i32