2019-05-13 00:56:22 +04:00
|
|
|
function match_bool (const i : int) : int is
|
|
|
|
var result : int := 23 ;
|
|
|
|
begin
|
|
|
|
case i = 2 of
|
|
|
|
| True -> result := 42
|
|
|
|
| False -> result := 0
|
|
|
|
end
|
|
|
|
end with result
|
|
|
|
|
|
|
|
function match_option (const o : option(int)) : int is
|
|
|
|
var result : int := 23 ;
|
|
|
|
begin
|
|
|
|
case o of
|
|
|
|
| None -> skip
|
2019-06-13 18:57:40 +04:00
|
|
|
| Some (s) -> result := s
|
2019-05-13 00:56:22 +04:00
|
|
|
end
|
|
|
|
end with result
|
|
|
|
|
|
|
|
function match_expr_bool (const i : int) : int is
|
|
|
|
begin skip end with
|
|
|
|
case i = 2 of
|
|
|
|
| True -> 42
|
|
|
|
| False -> 0
|
|
|
|
end
|
|
|
|
|
|
|
|
function match_expr_option (const o : option(int)) : int is
|
|
|
|
begin skip end with
|
|
|
|
case o of
|
|
|
|
| None -> 42
|
2019-06-13 18:57:40 +04:00
|
|
|
| Some (s) -> s
|
2019-05-13 00:56:22 +04:00
|
|
|
end
|