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

198 lines
4.5 KiB
Plaintext

program main
fn maybe_value(value: i32) -> (option i32)
some i32
var value
fn maybe_empty() -> (option i32)
none i32
fn maybe_wide_value(value: i64) -> (option i64)
some i64
var value
fn maybe_wide_empty() -> (option i64)
none i64
fn maybe_float_value(value: f64) -> (option f64)
some f64
var value
fn maybe_float_empty() -> (option f64)
none f64
fn maybe_flag_value(value: bool) -> (option bool)
some bool
var value
fn maybe_flag_empty() -> (option bool)
none bool
fn maybe_string_value(value: string) -> (option string)
some string
var value
fn maybe_string_empty() -> (option string)
none string
fn option_score(value: (option i32)) -> i32
if
is_some
var value
int 1
int 0
fn option_empty_score(value: (option i32)) -> i32
if
is_none
var value
int 1
int 0
fn option_wide_score(value: (option i64)) -> i32
if
is_some
var value
int 1
int 0
fn option_wide_empty_score(value: (option i64)) -> i32
if
is_none
var value
int 1
int 0
fn option_float_score(value: (option f64)) -> i32
if
is_some
var value
int 1
int 0
fn option_float_empty_score(value: (option f64)) -> i32
if
is_none
var value
int 1
int 0
fn option_flag_score(value: (option bool)) -> i32
if
is_some
var value
int 1
int 0
fn option_flag_empty_score(value: (option bool)) -> i32
if
is_none
var value
int 1
int 0
fn option_string_score(value: (option string)) -> i32
if
is_some
var value
int 1
int 0
fn option_string_empty_score(value: (option string)) -> i32
if
is_none
var value
int 1
int 0
fn result_ok_value(value: i32) -> (result i32 i32)
ok i32 i32
var value
fn result_err_value(code: i32) -> (result i32 i32)
err i32 i32
var code
fn result_success_score(value: (result i32 i32)) -> i32
if
is_ok
var value
int 1
int 0
fn result_failure_score(value: (result i32 i32)) -> i32
if
is_err
var value
int 1
int 0
fn option_local_flow() -> i32
local let value: (option i32)
call maybe_value
int 42
call option_score
var value
fn option_wide_local_flow() -> i32
local let value: (option i64)
call maybe_wide_value
i64 2147483648
call option_wide_score
var value
fn option_float_local_flow() -> i32
local let value: (option f64)
call maybe_float_value
float 42.5
call option_float_score
var value
fn option_flag_local_flow() -> i32
local let value: (option bool)
call maybe_flag_value
bool true
call option_flag_score
var value
fn option_string_local_flow() -> i32
local let value: (option string)
call maybe_string_value
string "slovo"
call option_string_score
var value
fn result_local_flow() -> i32
local let value: (result i32 i32)
call result_err_value
int 7
call result_failure_score
var value
fn main() -> i32
int 0
test "option local value flow"
binary =
call option_local_flow
int 1
test "option call observation"
binary =
call option_empty_score
call maybe_empty
int 1
test "option i64 local value flow"
binary =
call option_wide_local_flow
int 1
test "option i64 call observation"
binary =
call option_wide_empty_score
call maybe_wide_empty
int 1
test "option f64 local value flow"
binary =
call option_float_local_flow
int 1
test "option f64 call observation"
binary =
call option_float_empty_score
call maybe_float_empty
int 1
test "option bool local value flow"
binary =
call option_flag_local_flow
int 1
test "option bool call observation"
binary =
call option_flag_empty_score
call maybe_flag_empty
int 1
test "option string local value flow"
binary =
call option_string_local_flow
int 1
test "option string call observation"
binary =
call option_string_empty_score
call maybe_string_empty
int 1
test "result call observation"
binary =
call result_success_score
call result_ok_value
int 42
int 1
test "result local value flow"
binary =
call result_local_flow
int 1