Library zoo_std.ivar_1__code
From zoo Require Import
prelude.
From zoo.language Require Import
typeclasses
notations.
From zoo_std Require Import
ivar_1__types.
From zoo Require Import
options.
Definition ivar_1٠create : val :=
fun: ≠ ⇒
ref §None.
Definition ivar_1٠make : val :=
fun: "v" ⇒
ref ‘Some( "v" ).
Definition ivar_1٠try_get : val :=
fun: "t" ⇒
!"t".
Definition ivar_1٠is_unset : val :=
fun: "t" ⇒
ivar_1٠try_get "t" == §None.
Definition ivar_1٠is_set : val :=
fun: "t" ⇒
¬ ivar_1٠is_unset "t".
Definition ivar_1٠get : val :=
fun: "t" ⇒
match: ivar_1٠try_get "t" with
| None ⇒
Fail
| Some "v" ⇒
"v"
end.
Definition ivar_1٠set : val :=
fun: "t" "v" ⇒
"t" <- ‘Some( "v" ).
prelude.
From zoo.language Require Import
typeclasses
notations.
From zoo_std Require Import
ivar_1__types.
From zoo Require Import
options.
Definition ivar_1٠create : val :=
fun: ≠ ⇒
ref §None.
Definition ivar_1٠make : val :=
fun: "v" ⇒
ref ‘Some( "v" ).
Definition ivar_1٠try_get : val :=
fun: "t" ⇒
!"t".
Definition ivar_1٠is_unset : val :=
fun: "t" ⇒
ivar_1٠try_get "t" == §None.
Definition ivar_1٠is_set : val :=
fun: "t" ⇒
¬ ivar_1٠is_unset "t".
Definition ivar_1٠get : val :=
fun: "t" ⇒
match: ivar_1٠try_get "t" with
| None ⇒
Fail
| Some "v" ⇒
"v"
end.
Definition ivar_1٠set : val :=
fun: "t" "v" ⇒
"t" <- ‘Some( "v" ).