diff options
Diffstat (limited to '')
-rw-r--r-- | tests/misc/External.Funs.fst | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/misc/External.Funs.fst b/tests/misc/External.Funs.fst new file mode 100644 index 00000000..8030b838 --- /dev/null +++ b/tests/misc/External.Funs.fst @@ -0,0 +1,50 @@ +(** THIS FILE WAS AUTOMATICALLY GENERATED BY AENEAS *) +(** [external]: function definitions *) +module External.Funs +open Primitives +include External.Types +include External.Opaque + +#set-options "--z3rlimit 50 --fuel 0 --ifuel 1" + +(** [external::swap] *) +let swap_fwd (t : Type0) (x : t) (y : t) (st : state) : result (state & unit) = + begin match core_mem_swap_fwd t x y st with + | Fail -> Fail + | Return (st0, _) -> Return (st0, ()) + end + +(** [external::swap] *) +let swap_back + (t : Type0) (x : t) (y : t) (st : state) : result (state & (t & t)) = + begin match core_mem_swap_back0 t x y st with + | Fail -> Fail + | Return (st0, x0) -> + begin match core_mem_swap_back1 t x y st0 with + | Fail -> Fail + | Return (st1, x1) -> Return (st1, (x0, x1)) + end + end + +(** [external::test_new_non_zero_u32] *) +let test_new_non_zero_u32_fwd + (x : u32) (st : state) : result (state & core_num_nonzero_non_zero_u32_t) = + begin match core_num_nonzero_non_zero_u32_14_new_fwd x st with + | Fail -> Fail + | Return (st0, opt) -> + begin match + core_option_option_unwrap_fwd core_num_nonzero_non_zero_u32_t opt st0 + with + | Fail -> Fail + | Return (st1, cnnnzu) -> Return (st1, cnnnzu) + end + end + +(** [external::test_vec] *) +let test_vec_fwd (st : state) : result (state & unit) = + let v = vec_new u32 in + begin match vec_push_back u32 v 0 with + | Fail -> Fail + | Return _ -> Return (st, ()) + end + |