diff options
Diffstat (limited to 'tests/fstar')
-rw-r--r-- | tests/fstar/arrays/Arrays.Funs.fst | 2 | ||||
-rw-r--r-- | tests/fstar/betree/BetreeMain.Clauses.Template.fst | 2 | ||||
-rw-r--r-- | tests/fstar/betree/BetreeMain.Clauses.fst | 2 | ||||
-rw-r--r-- | tests/fstar/betree/BetreeMain.Funs.fst | 16 | ||||
-rw-r--r-- | tests/fstar/betree_back_stateful/BetreeMain.Clauses.Template.fst | 2 | ||||
-rw-r--r-- | tests/fstar/betree_back_stateful/BetreeMain.Clauses.fst | 2 | ||||
-rw-r--r-- | tests/fstar/betree_back_stateful/BetreeMain.Funs.fst | 16 | ||||
-rw-r--r-- | tests/fstar/demo/Demo.fst | 12 | ||||
-rw-r--r-- | tests/fstar/misc/Constants.fst | 58 | ||||
-rw-r--r-- | tests/fstar/misc/NoNestedBorrows.fst | 4 | ||||
-rw-r--r-- | tests/fstar/traits/Traits.fst | 258 |
11 files changed, 185 insertions, 189 deletions
diff --git a/tests/fstar/arrays/Arrays.Funs.fst b/tests/fstar/arrays/Arrays.Funs.fst index ac57b8fc..cf0f4f8b 100644 --- a/tests/fstar/arrays/Arrays.Funs.fst +++ b/tests/fstar/arrays/Arrays.Funs.fst @@ -398,7 +398,7 @@ let f3 : result u32 = (** [arrays::SZ] Source: 'src/arrays.rs', lines 286:0-286:19 *) let sz_body : result usize = Return 32 -let sz_c : usize = eval_global sz_body +let sz : usize = eval_global sz_body (** [arrays::f5]: Source: 'src/arrays.rs', lines 289:0-289:31 *) diff --git a/tests/fstar/betree/BetreeMain.Clauses.Template.fst b/tests/fstar/betree/BetreeMain.Clauses.Template.fst index 537705c5..de56ba46 100644 --- a/tests/fstar/betree/BetreeMain.Clauses.Template.fst +++ b/tests/fstar/betree/BetreeMain.Clauses.Template.fst @@ -22,7 +22,7 @@ let betree_List_split_at_decreases (t : Type0) (self : betree_List_t t) (** [betree_main::betree::{betree_main::betree::List<(u64, T)>#2}::partition_at_pivot]: decreases clause Source: 'src/betree.rs', lines 339:4-339:73 *) unfold -let betree_ListTupleU64T_partition_at_pivot_decreases (t : Type0) +let betree_ListPairU64T_partition_at_pivot_decreases (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : nat = admit () diff --git a/tests/fstar/betree/BetreeMain.Clauses.fst b/tests/fstar/betree/BetreeMain.Clauses.fst index 21f953d1..ed5c5069 100644 --- a/tests/fstar/betree/BetreeMain.Clauses.fst +++ b/tests/fstar/betree/BetreeMain.Clauses.fst @@ -114,7 +114,7 @@ let betree_List_split_at_decreases (t : Type0) (self : betree_List_t t) (** [betree_main::betree::List::{2}::partition_at_pivot]: decreases clause *) unfold -let betree_ListTupleU64T_partition_at_pivot_decreases (t : Type0) +let betree_ListPairU64T_partition_at_pivot_decreases (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : betree_List_t (u64 & t) = self diff --git a/tests/fstar/betree/BetreeMain.Funs.fst b/tests/fstar/betree/BetreeMain.Funs.fst index 196f120c..ec042fb3 100644 --- a/tests/fstar/betree/BetreeMain.Funs.fst +++ b/tests/fstar/betree/BetreeMain.Funs.fst @@ -134,7 +134,7 @@ let betree_List_hd (t : Type0) (self : betree_List_t t) : result t = (** [betree_main::betree::{betree_main::betree::List<(u64, T)>#2}::head_has_key]: Source: 'src/betree.rs', lines 327:4-327:44 *) -let betree_ListTupleU64T_head_has_key +let betree_ListPairU64T_head_has_key (t : Type0) (self : betree_List_t (u64 & t)) (key : u64) : result bool = begin match self with | Betree_List_Cons hd _ -> let (i, _) = hd in Return (i = key) @@ -143,10 +143,10 @@ let betree_ListTupleU64T_head_has_key (** [betree_main::betree::{betree_main::betree::List<(u64, T)>#2}::partition_at_pivot]: Source: 'src/betree.rs', lines 339:4-339:73 *) -let rec betree_ListTupleU64T_partition_at_pivot +let rec betree_ListPairU64T_partition_at_pivot (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : Tot (result ((betree_List_t (u64 & t)) & (betree_List_t (u64 & t)))) - (decreases (betree_ListTupleU64T_partition_at_pivot_decreases t self pivot)) + (decreases (betree_ListPairU64T_partition_at_pivot_decreases t self pivot)) = begin match self with | Betree_List_Cons hd tl -> @@ -154,7 +154,7 @@ let rec betree_ListTupleU64T_partition_at_pivot if i >= pivot then Return (Betree_List_Nil, Betree_List_Cons (i, x) tl) else - let* p = betree_ListTupleU64T_partition_at_pivot t tl pivot in + let* p = betree_ListPairU64T_partition_at_pivot t tl pivot in let (ls0, ls1) = p in Return (Betree_List_Cons (i, x) ls0, ls1) | Betree_List_Nil -> Return (Betree_List_Nil, Betree_List_Nil) @@ -228,7 +228,7 @@ let rec betree_Node_apply_upserts Tot (result (state & (u64 & (betree_List_t (u64 & betree_Message_t))))) (decreases (betree_Node_apply_upserts_decreases msgs prev key st)) = - let* b = betree_ListTupleU64T_head_has_key betree_Message_t msgs key in + let* b = betree_ListPairU64T_head_has_key betree_Message_t msgs key in if b then let* (msg, l) = betree_List_pop_front (u64 & betree_Message_t) msgs in @@ -369,7 +369,7 @@ let betree_Node_apply_to_internal = let* (msgs1, lookup_first_message_for_key_back) = betree_Node_lookup_first_message_for_key key msgs in - let* b = betree_ListTupleU64T_head_has_key betree_Message_t msgs1 key in + let* b = betree_ListPairU64T_head_has_key betree_Message_t msgs1 key in if b then begin match new_msg with @@ -467,7 +467,7 @@ let betree_Node_apply_to_leaf = let* (bindings1, lookup_mut_in_bindings_back) = betree_Node_lookup_mut_in_bindings key bindings in - let* b = betree_ListTupleU64T_head_has_key u64 bindings1 key in + let* b = betree_ListPairU64T_head_has_key u64 bindings1 key in if b then let* (hd, l) = betree_List_pop_front (u64 & u64) bindings1 in @@ -522,7 +522,7 @@ let rec betree_Internal_flush betree_Internal_flush_decreases self params node_id_cnt content st)) = let* p = - betree_ListTupleU64T_partition_at_pivot betree_Message_t content self.pivot + betree_ListPairU64T_partition_at_pivot betree_Message_t content self.pivot in let (msgs_left, msgs_right) = p in let* len_left = betree_List_len (u64 & betree_Message_t) msgs_left in diff --git a/tests/fstar/betree_back_stateful/BetreeMain.Clauses.Template.fst b/tests/fstar/betree_back_stateful/BetreeMain.Clauses.Template.fst index 537705c5..de56ba46 100644 --- a/tests/fstar/betree_back_stateful/BetreeMain.Clauses.Template.fst +++ b/tests/fstar/betree_back_stateful/BetreeMain.Clauses.Template.fst @@ -22,7 +22,7 @@ let betree_List_split_at_decreases (t : Type0) (self : betree_List_t t) (** [betree_main::betree::{betree_main::betree::List<(u64, T)>#2}::partition_at_pivot]: decreases clause Source: 'src/betree.rs', lines 339:4-339:73 *) unfold -let betree_ListTupleU64T_partition_at_pivot_decreases (t : Type0) +let betree_ListPairU64T_partition_at_pivot_decreases (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : nat = admit () diff --git a/tests/fstar/betree_back_stateful/BetreeMain.Clauses.fst b/tests/fstar/betree_back_stateful/BetreeMain.Clauses.fst index 21f953d1..ed5c5069 100644 --- a/tests/fstar/betree_back_stateful/BetreeMain.Clauses.fst +++ b/tests/fstar/betree_back_stateful/BetreeMain.Clauses.fst @@ -114,7 +114,7 @@ let betree_List_split_at_decreases (t : Type0) (self : betree_List_t t) (** [betree_main::betree::List::{2}::partition_at_pivot]: decreases clause *) unfold -let betree_ListTupleU64T_partition_at_pivot_decreases (t : Type0) +let betree_ListPairU64T_partition_at_pivot_decreases (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : betree_List_t (u64 & t) = self diff --git a/tests/fstar/betree_back_stateful/BetreeMain.Funs.fst b/tests/fstar/betree_back_stateful/BetreeMain.Funs.fst index 196f120c..ec042fb3 100644 --- a/tests/fstar/betree_back_stateful/BetreeMain.Funs.fst +++ b/tests/fstar/betree_back_stateful/BetreeMain.Funs.fst @@ -134,7 +134,7 @@ let betree_List_hd (t : Type0) (self : betree_List_t t) : result t = (** [betree_main::betree::{betree_main::betree::List<(u64, T)>#2}::head_has_key]: Source: 'src/betree.rs', lines 327:4-327:44 *) -let betree_ListTupleU64T_head_has_key +let betree_ListPairU64T_head_has_key (t : Type0) (self : betree_List_t (u64 & t)) (key : u64) : result bool = begin match self with | Betree_List_Cons hd _ -> let (i, _) = hd in Return (i = key) @@ -143,10 +143,10 @@ let betree_ListTupleU64T_head_has_key (** [betree_main::betree::{betree_main::betree::List<(u64, T)>#2}::partition_at_pivot]: Source: 'src/betree.rs', lines 339:4-339:73 *) -let rec betree_ListTupleU64T_partition_at_pivot +let rec betree_ListPairU64T_partition_at_pivot (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : Tot (result ((betree_List_t (u64 & t)) & (betree_List_t (u64 & t)))) - (decreases (betree_ListTupleU64T_partition_at_pivot_decreases t self pivot)) + (decreases (betree_ListPairU64T_partition_at_pivot_decreases t self pivot)) = begin match self with | Betree_List_Cons hd tl -> @@ -154,7 +154,7 @@ let rec betree_ListTupleU64T_partition_at_pivot if i >= pivot then Return (Betree_List_Nil, Betree_List_Cons (i, x) tl) else - let* p = betree_ListTupleU64T_partition_at_pivot t tl pivot in + let* p = betree_ListPairU64T_partition_at_pivot t tl pivot in let (ls0, ls1) = p in Return (Betree_List_Cons (i, x) ls0, ls1) | Betree_List_Nil -> Return (Betree_List_Nil, Betree_List_Nil) @@ -228,7 +228,7 @@ let rec betree_Node_apply_upserts Tot (result (state & (u64 & (betree_List_t (u64 & betree_Message_t))))) (decreases (betree_Node_apply_upserts_decreases msgs prev key st)) = - let* b = betree_ListTupleU64T_head_has_key betree_Message_t msgs key in + let* b = betree_ListPairU64T_head_has_key betree_Message_t msgs key in if b then let* (msg, l) = betree_List_pop_front (u64 & betree_Message_t) msgs in @@ -369,7 +369,7 @@ let betree_Node_apply_to_internal = let* (msgs1, lookup_first_message_for_key_back) = betree_Node_lookup_first_message_for_key key msgs in - let* b = betree_ListTupleU64T_head_has_key betree_Message_t msgs1 key in + let* b = betree_ListPairU64T_head_has_key betree_Message_t msgs1 key in if b then begin match new_msg with @@ -467,7 +467,7 @@ let betree_Node_apply_to_leaf = let* (bindings1, lookup_mut_in_bindings_back) = betree_Node_lookup_mut_in_bindings key bindings in - let* b = betree_ListTupleU64T_head_has_key u64 bindings1 key in + let* b = betree_ListPairU64T_head_has_key u64 bindings1 key in if b then let* (hd, l) = betree_List_pop_front (u64 & u64) bindings1 in @@ -522,7 +522,7 @@ let rec betree_Internal_flush betree_Internal_flush_decreases self params node_id_cnt content st)) = let* p = - betree_ListTupleU64T_partition_at_pivot betree_Message_t content self.pivot + betree_ListPairU64T_partition_at_pivot betree_Message_t content self.pivot in let (msgs_left, msgs_right) = p in let* len_left = betree_List_len (u64 & betree_Message_t) msgs_left in diff --git a/tests/fstar/demo/Demo.fst b/tests/fstar/demo/Demo.fst index f9082979..d13d2ba3 100644 --- a/tests/fstar/demo/Demo.fst +++ b/tests/fstar/demo/Demo.fst @@ -121,18 +121,18 @@ let rec i32_id (n : nat) (i : i32) : result i32 = Source: 'src/demo.rs', lines 83:0-83:17 *) noeq type counter_t (self : Type0) = { incr : self -> result (usize & self); } -(** [demo::{usize}::incr]: +(** [demo::{(demo::Counter for usize)}::incr]: Source: 'src/demo.rs', lines 88:4-88:31 *) -let usize_incr (self : usize) : result (usize & usize) = +let counterUsize_incr (self : usize) : result (usize & usize) = let* self1 = usize_add self 1 in Return (self, self1) -(** Trait implementation: [demo::{usize}] +(** Trait implementation: [demo::{(demo::Counter for usize)}] Source: 'src/demo.rs', lines 87:0-87:22 *) -let demo_CounterUsizeInst : counter_t usize = { incr = usize_incr; } +let counterUsize : counter_t usize = { incr = counterUsize_incr; } (** [demo::use_counter]: Source: 'src/demo.rs', lines 95:0-95:59 *) let use_counter - (t : Type0) (counterTInst : counter_t t) (cnt : t) : result (usize & t) = - counterTInst.incr cnt + (t : Type0) (counterInst : counter_t t) (cnt : t) : result (usize & t) = + counterInst.incr cnt diff --git a/tests/fstar/misc/Constants.fst b/tests/fstar/misc/Constants.fst index 7bf42b46..66429c80 100644 --- a/tests/fstar/misc/Constants.fst +++ b/tests/fstar/misc/Constants.fst @@ -8,17 +8,17 @@ open Primitives (** [constants::X0] Source: 'src/constants.rs', lines 5:0-5:17 *) let x0_body : result u32 = Return 0 -let x0_c : u32 = eval_global x0_body +let x0 : u32 = eval_global x0_body (** [constants::X1] Source: 'src/constants.rs', lines 7:0-7:17 *) let x1_body : result u32 = Return core_u32_max -let x1_c : u32 = eval_global x1_body +let x1 : u32 = eval_global x1_body (** [constants::X2] Source: 'src/constants.rs', lines 10:0-10:17 *) let x2_body : result u32 = Return 3 -let x2_c : u32 = eval_global x2_body +let x2 : u32 = eval_global x2_body (** [constants::incr]: Source: 'src/constants.rs', lines 17:0-17:32 *) @@ -28,12 +28,12 @@ let incr (n : u32) : result u32 = (** [constants::X3] Source: 'src/constants.rs', lines 15:0-15:17 *) let x3_body : result u32 = incr 32 -let x3_c : u32 = eval_global x3_body +let x3 : u32 = eval_global x3_body (** [constants::mk_pair0]: Source: 'src/constants.rs', lines 23:0-23:51 *) -let mk_pair0 (x : u32) (y : u32) : result (u32 & u32) = - Return (x, y) +let mk_pair0 (x : u32) (y1 : u32) : result (u32 & u32) = + Return (x, y1) (** [constants::Pair] Source: 'src/constants.rs', lines 36:0-36:23 *) @@ -41,28 +41,28 @@ type pair_t (t1 t2 : Type0) = { x : t1; y : t2; } (** [constants::mk_pair1]: Source: 'src/constants.rs', lines 27:0-27:55 *) -let mk_pair1 (x : u32) (y : u32) : result (pair_t u32 u32) = - Return { x = x; y = y } +let mk_pair1 (x : u32) (y1 : u32) : result (pair_t u32 u32) = + Return { x = x; y = y1 } (** [constants::P0] Source: 'src/constants.rs', lines 31:0-31:24 *) let p0_body : result (u32 & u32) = mk_pair0 0 1 -let p0_c : (u32 & u32) = eval_global p0_body +let p0 : (u32 & u32) = eval_global p0_body (** [constants::P1] Source: 'src/constants.rs', lines 32:0-32:28 *) let p1_body : result (pair_t u32 u32) = mk_pair1 0 1 -let p1_c : pair_t u32 u32 = eval_global p1_body +let p1 : pair_t u32 u32 = eval_global p1_body (** [constants::P2] Source: 'src/constants.rs', lines 33:0-33:24 *) let p2_body : result (u32 & u32) = Return (0, 1) -let p2_c : (u32 & u32) = eval_global p2_body +let p2 : (u32 & u32) = eval_global p2_body (** [constants::P3] Source: 'src/constants.rs', lines 34:0-34:28 *) let p3_body : result (pair_t u32 u32) = Return { x = 0; y = 1 } -let p3_c : pair_t u32 u32 = eval_global p3_body +let p3 : pair_t u32 u32 = eval_global p3_body (** [constants::Wrap] Source: 'src/constants.rs', lines 49:0-49:18 *) @@ -76,27 +76,27 @@ let wrap_new (t : Type0) (value : t) : result (wrap_t t) = (** [constants::Y] Source: 'src/constants.rs', lines 41:0-41:22 *) let y_body : result (wrap_t i32) = wrap_new i32 2 -let y_c : wrap_t i32 = eval_global y_body +let y : wrap_t i32 = eval_global y_body (** [constants::unwrap_y]: Source: 'src/constants.rs', lines 43:0-43:30 *) let unwrap_y : result i32 = - Return y_c.value + Return y.value (** [constants::YVAL] Source: 'src/constants.rs', lines 47:0-47:19 *) let yval_body : result i32 = unwrap_y -let yval_c : i32 = eval_global yval_body +let yval : i32 = eval_global yval_body (** [constants::get_z1::Z1] Source: 'src/constants.rs', lines 62:4-62:17 *) let get_z1_z1_body : result i32 = Return 3 -let get_z1_z1_c : i32 = eval_global get_z1_z1_body +let get_z1_z1 : i32 = eval_global get_z1_z1_body (** [constants::get_z1]: Source: 'src/constants.rs', lines 61:0-61:28 *) let get_z1 : result i32 = - Return get_z1_z1_c + Return get_z1_z1 (** [constants::add]: Source: 'src/constants.rs', lines 66:0-66:39 *) @@ -106,40 +106,40 @@ let add (a : i32) (b : i32) : result i32 = (** [constants::Q1] Source: 'src/constants.rs', lines 74:0-74:17 *) let q1_body : result i32 = Return 5 -let q1_c : i32 = eval_global q1_body +let q1 : i32 = eval_global q1_body (** [constants::Q2] Source: 'src/constants.rs', lines 75:0-75:17 *) -let q2_body : result i32 = Return q1_c -let q2_c : i32 = eval_global q2_body +let q2_body : result i32 = Return q1 +let q2 : i32 = eval_global q2_body (** [constants::Q3] Source: 'src/constants.rs', lines 76:0-76:17 *) -let q3_body : result i32 = add q2_c 3 -let q3_c : i32 = eval_global q3_body +let q3_body : result i32 = add q2 3 +let q3 : i32 = eval_global q3_body (** [constants::get_z2]: Source: 'src/constants.rs', lines 70:0-70:28 *) let get_z2 : result i32 = - let* i = get_z1 in let* i1 = add i q3_c in add q1_c i1 + let* i = get_z1 in let* i1 = add i q3 in add q1 i1 (** [constants::S1] Source: 'src/constants.rs', lines 80:0-80:18 *) let s1_body : result u32 = Return 6 -let s1_c : u32 = eval_global s1_body +let s1 : u32 = eval_global s1_body (** [constants::S2] Source: 'src/constants.rs', lines 81:0-81:18 *) -let s2_body : result u32 = incr s1_c -let s2_c : u32 = eval_global s2_body +let s2_body : result u32 = incr s1 +let s2 : u32 = eval_global s2_body (** [constants::S3] Source: 'src/constants.rs', lines 82:0-82:29 *) -let s3_body : result (pair_t u32 u32) = Return p3_c -let s3_c : pair_t u32 u32 = eval_global s3_body +let s3_body : result (pair_t u32 u32) = Return p3 +let s3 : pair_t u32 u32 = eval_global s3_body (** [constants::S4] Source: 'src/constants.rs', lines 83:0-83:29 *) let s4_body : result (pair_t u32 u32) = mk_pair1 7 8 -let s4_c : pair_t u32 u32 = eval_global s4_body +let s4 : pair_t u32 u32 = eval_global s4_body diff --git a/tests/fstar/misc/NoNestedBorrows.fst b/tests/fstar/misc/NoNestedBorrows.fst index ffcc32f3..c71f8dbb 100644 --- a/tests/fstar/misc/NoNestedBorrows.fst +++ b/tests/fstar/misc/NoNestedBorrows.fst @@ -131,12 +131,12 @@ let mix_arith_i32 (x : i32) (y : i32) (z : i32) : result i32 = (** [no_nested_borrows::CONST0] Source: 'src/no_nested_borrows.rs', lines 125:0-125:23 *) let const0_body : result usize = usize_add 1 1 -let const0_c : usize = eval_global const0_body +let const0 : usize = eval_global const0_body (** [no_nested_borrows::CONST1] Source: 'src/no_nested_borrows.rs', lines 126:0-126:23 *) let const1_body : result usize = usize_mul 2 2 -let const1_c : usize = eval_global const1_body +let const1 : usize = eval_global const1_body (** [no_nested_borrows::cast_u32_to_i32]: Source: 'src/no_nested_borrows.rs', lines 128:0-128:37 *) diff --git a/tests/fstar/traits/Traits.fst b/tests/fstar/traits/Traits.fst index 0760de2e..466fb482 100644 --- a/tests/fstar/traits/Traits.fst +++ b/tests/fstar/traits/Traits.fst @@ -9,14 +9,14 @@ open Primitives Source: 'src/traits.rs', lines 1:0-1:19 *) noeq type boolTrait_t (self : Type0) = { get_bool : self -> result bool; } -(** [traits::{bool}::get_bool]: +(** [traits::{(traits::BoolTrait for bool)}::get_bool]: Source: 'src/traits.rs', lines 12:4-12:30 *) -let bool_get_bool (self : bool) : result bool = +let boolTraitBool_get_bool (self : bool) : result bool = Return self -(** Trait implementation: [traits::{bool}] +(** Trait implementation: [traits::{(traits::BoolTrait for bool)}] Source: 'src/traits.rs', lines 11:0-11:23 *) -let traits_BoolTraitBoolInst : boolTrait_t bool = { get_bool = bool_get_bool; } +let boolTraitBool : boolTrait_t bool = { get_bool = boolTraitBool_get_bool; } (** [traits::BoolTrait::ret_true]: Source: 'src/traits.rs', lines 6:4-6:30 *) @@ -29,151 +29,146 @@ let boolTrait_ret_true (** [traits::test_bool_trait_bool]: Source: 'src/traits.rs', lines 17:0-17:44 *) let test_bool_trait_bool (x : bool) : result bool = - let* b = bool_get_bool x in - if b then boolTrait_ret_true traits_BoolTraitBoolInst x else Return false + let* b = boolTraitBool_get_bool x in + if b then boolTrait_ret_true boolTraitBool x else Return false -(** [traits::{core::option::Option<T>#1}::get_bool]: +(** [traits::{(traits::BoolTrait for core::option::Option<T>)#1}::get_bool]: Source: 'src/traits.rs', lines 23:4-23:30 *) -let option_get_bool (t : Type0) (self : option t) : result bool = +let boolTraitOption_get_bool (t : Type0) (self : option t) : result bool = begin match self with | None -> Return false | Some _ -> Return true end -(** Trait implementation: [traits::{core::option::Option<T>#1}] +(** Trait implementation: [traits::{(traits::BoolTrait for core::option::Option<T>)#1}] Source: 'src/traits.rs', lines 22:0-22:31 *) -let traits_BoolTraitcoreoptionOptionTInst (t : Type0) : boolTrait_t (option t) - = { - get_bool = option_get_bool t; +let boolTraitOption (t : Type0) : boolTrait_t (option t) = { + get_bool = boolTraitOption_get_bool t; } (** [traits::test_bool_trait_option]: Source: 'src/traits.rs', lines 31:0-31:54 *) let test_bool_trait_option (t : Type0) (x : option t) : result bool = - let* b = option_get_bool t x in - if b - then boolTrait_ret_true (traits_BoolTraitcoreoptionOptionTInst t) x - else Return false + let* b = boolTraitOption_get_bool t x in + if b then boolTrait_ret_true (boolTraitOption t) x else Return false (** [traits::test_bool_trait]: Source: 'src/traits.rs', lines 35:0-35:50 *) let test_bool_trait - (t : Type0) (boolTraitTInst : boolTrait_t t) (x : t) : result bool = - boolTraitTInst.get_bool x + (t : Type0) (boolTraitInst : boolTrait_t t) (x : t) : result bool = + boolTraitInst.get_bool x (** Trait declaration: [traits::ToU64] Source: 'src/traits.rs', lines 39:0-39:15 *) noeq type toU64_t (self : Type0) = { to_u64 : self -> result u64; } -(** [traits::{u64#2}::to_u64]: +(** [traits::{(traits::ToU64 for u64)#2}::to_u64]: Source: 'src/traits.rs', lines 44:4-44:26 *) -let u64_to_u64 (self : u64) : result u64 = +let toU64U64_to_u64 (self : u64) : result u64 = Return self -(** Trait implementation: [traits::{u64#2}] +(** Trait implementation: [traits::{(traits::ToU64 for u64)#2}] Source: 'src/traits.rs', lines 43:0-43:18 *) -let traits_ToU64U64Inst : toU64_t u64 = { to_u64 = u64_to_u64; } +let toU64U64 : toU64_t u64 = { to_u64 = toU64U64_to_u64; } -(** [traits::{(A, A)#3}::to_u64]: +(** [traits::{(traits::ToU64 for (A, A))#3}::to_u64]: Source: 'src/traits.rs', lines 50:4-50:26 *) -let pair_to_u64 - (a : Type0) (toU64AInst : toU64_t a) (self : (a & a)) : result u64 = +let toU64Pair_to_u64 + (a : Type0) (toU64Inst : toU64_t a) (self : (a & a)) : result u64 = let (x, x1) = self in - let* i = toU64AInst.to_u64 x in - let* i1 = toU64AInst.to_u64 x1 in + let* i = toU64Inst.to_u64 x in + let* i1 = toU64Inst.to_u64 x1 in u64_add i i1 -(** Trait implementation: [traits::{(A, A)#3}] +(** Trait implementation: [traits::{(traits::ToU64 for (A, A))#3}] Source: 'src/traits.rs', lines 49:0-49:31 *) -let traits_ToU64TupleAAInst (a : Type0) (toU64AInst : toU64_t a) : toU64_t (a & - a) = { - to_u64 = pair_to_u64 a toU64AInst; +let toU64Pair (a : Type0) (toU64Inst : toU64_t a) : toU64_t (a & a) = { + to_u64 = toU64Pair_to_u64 a toU64Inst; } (** [traits::f]: Source: 'src/traits.rs', lines 55:0-55:36 *) -let f (t : Type0) (toU64TInst : toU64_t t) (x : (t & t)) : result u64 = - pair_to_u64 t toU64TInst x +let f (t : Type0) (toU64Inst : toU64_t t) (x : (t & t)) : result u64 = + toU64Pair_to_u64 t toU64Inst x (** [traits::g]: Source: 'src/traits.rs', lines 59:0-61:18 *) let g - (t : Type0) (toU64TupleTTInst : toU64_t (t & t)) (x : (t & t)) : result u64 = - toU64TupleTTInst.to_u64 x + (t : Type0) (toU64PairInst : toU64_t (t & t)) (x : (t & t)) : result u64 = + toU64PairInst.to_u64 x (** [traits::h0]: Source: 'src/traits.rs', lines 66:0-66:24 *) let h0 (x : u64) : result u64 = - u64_to_u64 x + toU64U64_to_u64 x (** [traits::Wrapper] Source: 'src/traits.rs', lines 70:0-70:21 *) type wrapper_t (t : Type0) = { x : t; } -(** [traits::{traits::Wrapper<T>#4}::to_u64]: +(** [traits::{(traits::ToU64 for traits::Wrapper<T>)#4}::to_u64]: Source: 'src/traits.rs', lines 75:4-75:26 *) -let wrapper_to_u64 - (t : Type0) (toU64TInst : toU64_t t) (self : wrapper_t t) : result u64 = - toU64TInst.to_u64 self.x +let toU64traitsWrapper_to_u64 + (t : Type0) (toU64Inst : toU64_t t) (self : wrapper_t t) : result u64 = + toU64Inst.to_u64 self.x -(** Trait implementation: [traits::{traits::Wrapper<T>#4}] +(** Trait implementation: [traits::{(traits::ToU64 for traits::Wrapper<T>)#4}] Source: 'src/traits.rs', lines 74:0-74:35 *) -let traits_ToU64traitsWrapperTInst (t : Type0) (toU64TInst : toU64_t t) : - toU64_t (wrapper_t t) = { - to_u64 = wrapper_to_u64 t toU64TInst; +let toU64traitsWrapper (t : Type0) (toU64Inst : toU64_t t) : toU64_t (wrapper_t + t) = { + to_u64 = toU64traitsWrapper_to_u64 t toU64Inst; } (** [traits::h1]: Source: 'src/traits.rs', lines 80:0-80:33 *) let h1 (x : wrapper_t u64) : result u64 = - wrapper_to_u64 u64 traits_ToU64U64Inst x + toU64traitsWrapper_to_u64 u64 toU64U64 x (** [traits::h2]: Source: 'src/traits.rs', lines 84:0-84:41 *) -let h2 (t : Type0) (toU64TInst : toU64_t t) (x : wrapper_t t) : result u64 = - wrapper_to_u64 t toU64TInst x +let h2 (t : Type0) (toU64Inst : toU64_t t) (x : wrapper_t t) : result u64 = + toU64traitsWrapper_to_u64 t toU64Inst x (** Trait declaration: [traits::ToType] Source: 'src/traits.rs', lines 88:0-88:19 *) noeq type toType_t (self t : Type0) = { to_type : self -> result t; } -(** [traits::{u64#5}::to_type]: +(** [traits::{(traits::ToType<bool> for u64)#5}::to_type]: Source: 'src/traits.rs', lines 93:4-93:28 *) -let u64_to_type (self : u64) : result bool = +let toTypeU64Bool_to_type (self : u64) : result bool = Return (self > 0) -(** Trait implementation: [traits::{u64#5}] +(** Trait implementation: [traits::{(traits::ToType<bool> for u64)#5}] Source: 'src/traits.rs', lines 92:0-92:25 *) -let traits_ToTypeU64BoolInst : toType_t u64 bool = { to_type = u64_to_type; } +let toTypeU64Bool : toType_t u64 bool = { to_type = toTypeU64Bool_to_type; } (** Trait declaration: [traits::OfType] Source: 'src/traits.rs', lines 98:0-98:16 *) noeq type ofType_t (self : Type0) = { - of_type : (t : Type0) -> (toTypeTSelfInst : toType_t t self) -> t -> result - self; + of_type : (t : Type0) -> (toTypeInst : toType_t t self) -> t -> result self; } (** [traits::h3]: Source: 'src/traits.rs', lines 104:0-104:50 *) let h3 - (t1 t2 : Type0) (ofTypeT1Inst : ofType_t t1) (toTypeT2T1Inst : toType_t t2 - t1) (y : t2) : + (t1 t2 : Type0) (ofTypeInst : ofType_t t1) (toTypeInst : toType_t t2 t1) + (y : t2) : result t1 = - ofTypeT1Inst.of_type t2 toTypeT2T1Inst y + ofTypeInst.of_type t2 toTypeInst y (** Trait declaration: [traits::OfTypeBis] Source: 'src/traits.rs', lines 109:0-109:36 *) noeq type ofTypeBis_t (self t : Type0) = { - toTypeTSelfInst : toType_t t self; + toTypeInst : toType_t t self; of_type : t -> result self; } (** [traits::h4]: Source: 'src/traits.rs', lines 118:0-118:57 *) let h4 - (t1 t2 : Type0) (ofTypeBisT1T2Inst : ofTypeBis_t t1 t2) (toTypeT2T1Inst : - toType_t t2 t1) (y : t2) : + (t1 t2 : Type0) (ofTypeBisInst : ofTypeBis_t t1 t2) (toTypeInst : toType_t t2 + t1) (y : t2) : result t1 = - ofTypeBisT1T2Inst.of_type y + ofTypeBisInst.of_type y (** [traits::TestType] Source: 'src/traits.rs', lines 122:0-122:22 *) @@ -189,51 +184,54 @@ noeq type testType_test_TestTrait_t (self : Type0) = { test : self -> result bool; } -(** [traits::{traits::TestType<T>#6}::test::{traits::{traits::TestType<T>#6}::test::TestType1}::test]: +(** [traits::{traits::TestType<T>#6}::test::{(traits::{traits::TestType<T>#6}::test::TestTrait for traits::{traits::TestType<T>#6}::test::TestType1)}::test]: Source: 'src/traits.rs', lines 139:12-139:34 *) -let testType_test_TestType1_test +let testType_test_TestTraittraitsTestTypetestTestType1_test (self : testType_test_TestType1_t) : result bool = Return (self > 1) -(** Trait implementation: [traits::{traits::TestType<T>#6}::test::{traits::{traits::TestType<T>#6}::test::TestType1}] +(** Trait implementation: [traits::{traits::TestType<T>#6}::test::{(traits::{traits::TestType<T>#6}::test::TestTrait for traits::{traits::TestType<T>#6}::test::TestType1)}] Source: 'src/traits.rs', lines 138:8-138:36 *) -let traits_TestType_test_TestTraittraitstraitsTestTypeTtestTestType1Inst : +let testType_test_TestTraittraitsTestTypetestTestType1 : testType_test_TestTrait_t testType_test_TestType1_t = { - test = testType_test_TestType1_test; + test = testType_test_TestTraittraitsTestTypetestTestType1_test; } (** [traits::{traits::TestType<T>#6}::test]: Source: 'src/traits.rs', lines 126:4-126:36 *) let testType_test - (t : Type0) (toU64TInst : toU64_t t) (self : testType_t t) (x : t) : + (t : Type0) (toU64Inst : toU64_t t) (self : testType_t t) (x : t) : result bool = - let* x1 = toU64TInst.to_u64 x in - if x1 > 0 then testType_test_TestType1_test 0 else Return false + let* x1 = toU64Inst.to_u64 x in + if x1 > 0 + then testType_test_TestTraittraitsTestTypetestTestType1_test 0 + else Return false (** [traits::BoolWrapper] Source: 'src/traits.rs', lines 150:0-150:22 *) type boolWrapper_t = bool -(** [traits::{traits::BoolWrapper#7}::to_type]: +(** [traits::{(traits::ToType<T> for traits::BoolWrapper)#7}::to_type]: Source: 'src/traits.rs', lines 156:4-156:25 *) -let boolWrapper_to_type +let toTypetraitsBoolWrapperT_to_type (t : Type0) (toTypeBoolTInst : toType_t bool t) (self : boolWrapper_t) : result t = toTypeBoolTInst.to_type self -(** Trait implementation: [traits::{traits::BoolWrapper#7}] +(** Trait implementation: [traits::{(traits::ToType<T> for traits::BoolWrapper)#7}] Source: 'src/traits.rs', lines 152:0-152:33 *) -let traits_ToTypetraitsBoolWrapperTInst (t : Type0) (toTypeBoolTInst : toType_t - bool t) : toType_t boolWrapper_t t = { - to_type = boolWrapper_to_type t toTypeBoolTInst; +let toTypetraitsBoolWrapperT (t : Type0) (toTypeBoolTInst : toType_t bool t) : + toType_t boolWrapper_t t = { + to_type = toTypetraitsBoolWrapperT_to_type t toTypeBoolTInst; } (** [traits::WithConstTy::LEN2] Source: 'src/traits.rs', lines 164:4-164:21 *) -let with_const_ty_len2_body : result usize = Return 32 -let with_const_ty_len2_c : usize = eval_global with_const_ty_len2_body +let with_const_ty_len2_default_body : result usize = Return 32 +let with_const_ty_len2_default : usize = + eval_global with_const_ty_len2_default_body (** Trait declaration: [traits::WithConstTy] Source: 'src/traits.rs', lines 161:0-161:39 *) @@ -246,40 +244,41 @@ noeq type withConstTy_t (self : Type0) (len : usize) = { f : tW -> array u8 len -> result tW; } -(** [traits::{bool#8}::LEN1] +(** [traits::{(traits::WithConstTy<32: usize> for bool)#8}::LEN1] Source: 'src/traits.rs', lines 175:4-175:21 *) -let bool_len1_body : result usize = Return 12 -let bool_len1_c : usize = eval_global bool_len1_body +let with_const_ty_bool32_len1_body : result usize = Return 12 +let with_const_ty_bool32_len1 : usize = + eval_global with_const_ty_bool32_len1_body -(** [traits::{bool#8}::f]: +(** [traits::{(traits::WithConstTy<32: usize> for bool)#8}::f]: Source: 'src/traits.rs', lines 180:4-180:39 *) -let bool_f (i : u64) (a : array u8 32) : result u64 = +let withConstTyBool32_f (i : u64) (a : array u8 32) : result u64 = Return i -(** Trait implementation: [traits::{bool#8}] +(** Trait implementation: [traits::{(traits::WithConstTy<32: usize> for bool)#8}] Source: 'src/traits.rs', lines 174:0-174:29 *) -let traits_WithConstTyBool32Inst : withConstTy_t bool 32 = { - cLEN1 = bool_len1_c; - cLEN2 = with_const_ty_len2_c; +let withConstTyBool32 : withConstTy_t bool 32 = { + cLEN1 = with_const_ty_bool32_len1; + cLEN2 = with_const_ty_len2_default; tV = u8; tW = u64; - tW_clause_0 = traits_ToU64U64Inst; - f = bool_f; + tW_clause_0 = toU64U64; + f = withConstTyBool32_f; } (** [traits::use_with_const_ty1]: Source: 'src/traits.rs', lines 183:0-183:75 *) let use_with_const_ty1 - (h : Type0) (len : usize) (withConstTyHLENInst : withConstTy_t h len) : + (h : Type0) (len : usize) (withConstTyInst : withConstTy_t h len) : result usize = - Return withConstTyHLENInst.cLEN1 + Return withConstTyInst.cLEN1 (** [traits::use_with_const_ty2]: Source: 'src/traits.rs', lines 187:0-187:73 *) let use_with_const_ty2 - (h : Type0) (len : usize) (withConstTyHLENInst : withConstTy_t h len) - (w : withConstTyHLENInst.tW) : + (h : Type0) (len : usize) (withConstTyInst : withConstTy_t h len) + (w : withConstTyInst.tW) : result unit = Return () @@ -287,11 +286,11 @@ let use_with_const_ty2 (** [traits::use_with_const_ty3]: Source: 'src/traits.rs', lines 189:0-189:80 *) let use_with_const_ty3 - (h : Type0) (len : usize) (withConstTyHLENInst : withConstTy_t h len) - (x : withConstTyHLENInst.tW) : + (h : Type0) (len : usize) (withConstTyInst : withConstTy_t h len) + (x : withConstTyInst.tW) : result u64 = - withConstTyHLENInst.tW_clause_0.to_u64 x + withConstTyInst.tW_clause_0.to_u64 x (** [traits::test_where1]: Source: 'src/traits.rs', lines 193:0-193:40 *) @@ -321,28 +320,28 @@ type parentTrait1_t (self : Type0) = unit (** Trait declaration: [traits::ChildTrait] Source: 'src/traits.rs', lines 206:0-206:49 *) noeq type childTrait_t (self : Type0) = { - parentTrait0SelfInst : parentTrait0_t self; - parentTrait1SelfInst : parentTrait1_t self; + parentTrait0Inst : parentTrait0_t self; + parentTrait1Inst : parentTrait1_t self; } (** [traits::test_child_trait1]: Source: 'src/traits.rs', lines 209:0-209:56 *) let test_child_trait1 - (t : Type0) (childTraitTInst : childTrait_t t) (x : t) : result string = - childTraitTInst.parentTrait0SelfInst.get_name x + (t : Type0) (childTraitInst : childTrait_t t) (x : t) : result string = + childTraitInst.parentTrait0Inst.get_name x (** [traits::test_child_trait2]: Source: 'src/traits.rs', lines 213:0-213:54 *) let test_child_trait2 - (t : Type0) (childTraitTInst : childTrait_t t) (x : t) : - result childTraitTInst.parentTrait0SelfInst.tW + (t : Type0) (childTraitInst : childTrait_t t) (x : t) : + result childTraitInst.parentTrait0Inst.tW = - childTraitTInst.parentTrait0SelfInst.get_w x + childTraitInst.parentTrait0Inst.get_w x (** [traits::order1]: Source: 'src/traits.rs', lines 219:0-219:59 *) let order1 - (t u : Type0) (parentTrait0TInst : parentTrait0_t t) (parentTrait0UInst : + (t u : Type0) (parentTrait0Inst : parentTrait0_t t) (parentTrait0Inst1 : parentTrait0_t u) : result unit = @@ -351,17 +350,17 @@ let order1 (** Trait declaration: [traits::ChildTrait1] Source: 'src/traits.rs', lines 222:0-222:35 *) noeq type childTrait1_t (self : Type0) = { - parentTrait1SelfInst : parentTrait1_t self; + parentTrait1Inst : parentTrait1_t self; } -(** Trait implementation: [traits::{usize#9}] +(** Trait implementation: [traits::{(traits::ParentTrait1 for usize)#9}] Source: 'src/traits.rs', lines 224:0-224:27 *) -let traits_ParentTrait1UsizeInst : parentTrait1_t usize = () +let parentTrait1Usize : parentTrait1_t usize = () -(** Trait implementation: [traits::{usize#10}] +(** Trait implementation: [traits::{(traits::ChildTrait1 for usize)#10}] Source: 'src/traits.rs', lines 225:0-225:26 *) -let traits_ChildTrait1UsizeInst : childTrait1_t usize = { - parentTrait1SelfInst = traits_ParentTrait1UsizeInst; +let childTrait1Usize : childTrait1_t usize = { + parentTrait1Inst = parentTrait1Usize; } (** Trait declaration: [traits::Iterator] @@ -385,7 +384,7 @@ type fromResidual_t (self t : Type0) = unit Source: 'src/traits.rs', lines 246:0-246:48 *) noeq type try_t (self : Type0) = { tResidual : Type0; - fromResidualSelftraitsTrySelfResidualInst : fromResidual_t self tResidual; + fromResidualSelftraitsTryResidualInst : fromResidual_t self tResidual; } (** Trait declaration: [traits::WithTarget] @@ -402,32 +401,31 @@ noeq type parentTrait2_t (self : Type0) = { (** Trait declaration: [traits::ChildTrait2] Source: 'src/traits.rs', lines 260:0-260:35 *) noeq type childTrait2_t (self : Type0) = { - parentTrait2SelfInst : parentTrait2_t self; - convert : parentTrait2SelfInst.tU -> result - parentTrait2SelfInst.tU_clause_0.tTarget; + parentTrait2Inst : parentTrait2_t self; + convert : parentTrait2Inst.tU -> result parentTrait2Inst.tU_clause_0.tTarget; } -(** Trait implementation: [traits::{u32#11}] +(** Trait implementation: [traits::{(traits::WithTarget for u32)#11}] Source: 'src/traits.rs', lines 264:0-264:23 *) -let traits_WithTargetU32Inst : withTarget_t u32 = { tTarget = u32; } +let withTargetU32 : withTarget_t u32 = { tTarget = u32; } -(** Trait implementation: [traits::{u32#12}] +(** Trait implementation: [traits::{(traits::ParentTrait2 for u32)#12}] Source: 'src/traits.rs', lines 268:0-268:25 *) -let traits_ParentTrait2U32Inst : parentTrait2_t u32 = { +let parentTrait2U32 : parentTrait2_t u32 = { tU = u32; - tU_clause_0 = traits_WithTargetU32Inst; + tU_clause_0 = withTargetU32; } -(** [traits::{u32#13}::convert]: +(** [traits::{(traits::ChildTrait2 for u32)#13}::convert]: Source: 'src/traits.rs', lines 273:4-273:29 *) -let u32_convert (x : u32) : result u32 = +let childTrait2U32_convert (x : u32) : result u32 = Return x -(** Trait implementation: [traits::{u32#13}] +(** Trait implementation: [traits::{(traits::ChildTrait2 for u32)#13}] Source: 'src/traits.rs', lines 272:0-272:24 *) -let traits_ChildTrait2U32Inst : childTrait2_t u32 = { - parentTrait2SelfInst = traits_ParentTrait2U32Inst; - convert = u32_convert; +let childTrait2U32 : childTrait2_t u32 = { + parentTrait2Inst = parentTrait2U32; + convert = childTrait2U32_convert; } (** Trait declaration: [traits::CFnOnce] @@ -440,15 +438,15 @@ noeq type cFnOnce_t (self args : Type0) = { (** Trait declaration: [traits::CFnMut] Source: 'src/traits.rs', lines 292:0-292:37 *) noeq type cFnMut_t (self args : Type0) = { - cFnOnceSelfArgsInst : cFnOnce_t self args; - call_mut : self -> args -> result (cFnOnceSelfArgsInst.tOutput & self); + cFnOnceInst : cFnOnce_t self args; + call_mut : self -> args -> result (cFnOnceInst.tOutput & self); } (** Trait declaration: [traits::CFn] Source: 'src/traits.rs', lines 296:0-296:33 *) noeq type cFn_t (self args : Type0) = { - cFnMutSelfArgsInst : cFnMut_t self args; - call : self -> args -> result cFnMutSelfArgsInst.cFnOnceSelfArgsInst.tOutput; + cFnMutInst : cFnMut_t self args; + call : self -> args -> result cFnMutInst.cFnOnceInst.tOutput; } (** Trait declaration: [traits::GetTrait] @@ -459,8 +457,6 @@ noeq type getTrait_t (self : Type0) = { tW : Type0; get_w : self -> result tW; (** [traits::test_get_trait]: Source: 'src/traits.rs', lines 305:0-305:49 *) let test_get_trait - (t : Type0) (getTraitTInst : getTrait_t t) (x : t) : - result getTraitTInst.tW - = - getTraitTInst.get_w x + (t : Type0) (getTraitInst : getTrait_t t) (x : t) : result getTraitInst.tW = + getTraitInst.get_w x |