From 0a6067adda2d23858e1180d7947ad180c13a4ca8 Mon Sep 17 00:00:00 2001 From: Nadrieril Date: Wed, 21 Aug 2024 11:41:51 +0200 Subject: [PATCH] Update charon --- charon-pin | 2 +- flake.lock | 6 +- tests/coq/arrays/Arrays.v | 116 ++++++------ tests/coq/betree/Betree_Funs.v | 78 ++++---- .../coq/betree/Betree_FunsExternal_Template.v | 8 +- tests/coq/betree/Betree_Types.v | 18 +- tests/coq/demo/Demo.v | 30 ++-- tests/coq/hashmap/Hashmap_Funs.v | 44 ++--- .../hashmap/Hashmap_FunsExternal_Template.v | 4 +- tests/coq/hashmap/Hashmap_Types.v | 4 +- tests/coq/misc/Bitwise.v | 10 +- tests/coq/misc/Constants.v | 62 +++---- tests/coq/misc/External_Funs.v | 4 +- tests/coq/misc/InfiniteLoop.v | 4 +- .../misc/Issue194RecursiveStructProjector.v | 6 +- tests/coq/misc/Loops.v | 52 +++--- tests/coq/misc/NoNestedBorrows.v | 142 +++++++-------- tests/coq/misc/Paper.v | 18 +- tests/coq/misc/PoloniusList.v | 4 +- tests/coq/rename_attribute/RenameAttribute.v | 22 +-- tests/coq/traits/Traits.v | 166 +++++++++--------- tests/fstar/arrays/Arrays.Funs.fst | 114 ++++++------ tests/fstar/arrays/Arrays.Types.fst | 2 +- .../fstar/betree/Betree.Clauses.Template.fst | 8 +- tests/fstar/betree/Betree.Funs.fst | 78 ++++---- tests/fstar/betree/Betree.FunsExternal.fsti | 8 +- tests/fstar/betree/Betree.Types.fst | 18 +- tests/fstar/demo/Demo.fst | 30 ++-- tests/fstar/hashmap/Hashmap.Funs.fst | 44 ++--- tests/fstar/hashmap/Hashmap.FunsExternal.fsti | 4 +- tests/fstar/hashmap/Hashmap.Types.fst | 4 +- tests/fstar/misc/Bitwise.fst | 10 +- tests/fstar/misc/Constants.fst | 62 +++---- tests/fstar/misc/External.Funs.fst | 4 +- tests/fstar/misc/InfiniteLoop.fst | 4 +- .../misc/Issue194RecursiveStructProjector.fst | 6 +- tests/fstar/misc/Loops.Funs.fst | 50 +++--- tests/fstar/misc/Loops.Types.fst | 2 +- tests/fstar/misc/Matches.fst | 2 +- tests/fstar/misc/NoNestedBorrows.fst | 142 +++++++-------- tests/fstar/misc/Paper.fst | 18 +- tests/fstar/misc/PoloniusList.fst | 4 +- .../RenameAttribute.Clauses.Template.fst | 2 +- .../rename_attribute/RenameAttribute.Funs.fst | 16 +- .../RenameAttribute.Types.fst | 6 +- tests/fstar/traits/Traits.fst | 166 +++++++++--------- tests/lean/Arrays.lean | 116 ++++++------ tests/lean/Avl/Funs.lean | 26 +-- tests/lean/Avl/Types.lean | 8 +- tests/lean/Betree/Funs.lean | 78 ++++---- tests/lean/Betree/FunsExternal_Template.lean | 8 +- tests/lean/Betree/Types.lean | 18 +- tests/lean/Bitwise.lean | 10 +- tests/lean/Constants.lean | 62 +++---- tests/lean/Demo/Demo.lean | 30 ++-- tests/lean/External/Funs.lean | 4 +- tests/lean/Hashmap/Funs.lean | 44 ++--- tests/lean/Hashmap/FunsExternal_Template.lean | 4 +- tests/lean/Hashmap/Types.lean | 4 +- tests/lean/InfiniteLoop.lean | 4 +- .../Issue194RecursiveStructProjector.lean | 6 +- tests/lean/Loops.lean | 52 +++--- tests/lean/Matches.lean | 2 +- tests/lean/MiniTree.lean | 6 +- tests/lean/NoNestedBorrows.lean | 142 +++++++-------- tests/lean/Paper.lean | 18 +- tests/lean/PoloniusList.lean | 4 +- tests/lean/RenameAttribute.lean | 22 +-- tests/lean/Traits.lean | 166 +++++++++--------- tests/lean/Tutorial/Tutorial.lean | 50 +++--- .../borrow-check-negative.borrow-check.out | 2 +- ...ops-borrow-check-negative.borrow-check.out | 2 +- 72 files changed, 1246 insertions(+), 1246 deletions(-) diff --git a/charon-pin b/charon-pin index 9b45db5fb..cb9a58633 100644 --- a/charon-pin +++ b/charon-pin @@ -1,2 +1,2 @@ # This is the commit from https://github.com/AeneasVerif/charon that should be used with this version of aeneas. -34014046de827679e27967de482a33c02e0a865a +3a56d3a39ad19db2377fa2dc712b73ebe291beb6 diff --git a/flake.lock b/flake.lock index 7df424ed6..0d2a495fa 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1724231050, - "narHash": "sha256-RGKXT/OrFTnOU2fwO2yHvr5+ylGlKcRksyFw2viYIgw=", + "lastModified": 1724232574, + "narHash": "sha256-49LCpNjCW6qHUeKSTAcUh12H4UUoHGmoEKdWz5Ci2zU=", "owner": "aeneasverif", "repo": "charon", - "rev": "34014046de827679e27967de482a33c02e0a865a", + "rev": "3a56d3a39ad19db2377fa2dc712b73ebe291beb6", "type": "github" }, "original": { diff --git a/tests/coq/arrays/Arrays.v b/tests/coq/arrays/Arrays.v index cd6a4b878..01802e229 100644 --- a/tests/coq/arrays/Arrays.v +++ b/tests/coq/arrays/Arrays.v @@ -9,23 +9,23 @@ Local Open Scope Primitives_scope. Module Arrays. (** [arrays::AB] - Source: 'tests/src/arrays.rs', lines 6:0-6:11 *) + Source: 'tests/src/arrays.rs', lines 6:0-9:1 *) Inductive AB_t := | AB_A : AB_t | AB_B : AB_t. (** [arrays::incr]: - Source: 'tests/src/arrays.rs', lines 11:0-11:24 *) + Source: 'tests/src/arrays.rs', lines 11:0-13:1 *) Definition incr (x : u32) : result u32 := u32_add x 1%u32. (** [arrays::array_to_shared_slice_]: - Source: 'tests/src/arrays.rs', lines 19:0-19:53 *) + Source: 'tests/src/arrays.rs', lines 19:0-21:1 *) Definition array_to_shared_slice_ (T : Type) (s : array T 32%usize) : result (slice T) := array_to_slice T 32%usize s . (** [arrays::array_to_mut_slice_]: - Source: 'tests/src/arrays.rs', lines 24:0-24:58 *) + Source: 'tests/src/arrays.rs', lines 24:0-26:1 *) Definition array_to_mut_slice_ (T : Type) (s : array T 32%usize) : result ((slice T) * (slice T -> result (array T 32%usize))) @@ -34,44 +34,44 @@ Definition array_to_mut_slice_ . (** [arrays::array_len]: - Source: 'tests/src/arrays.rs', lines 28:0-28:40 *) + Source: 'tests/src/arrays.rs', lines 28:0-30:1 *) Definition array_len (T : Type) (s : array T 32%usize) : result usize := s1 <- array_to_slice T 32%usize s; Ok (slice_len T s1) . (** [arrays::shared_array_len]: - Source: 'tests/src/arrays.rs', lines 32:0-32:48 *) + Source: 'tests/src/arrays.rs', lines 32:0-34:1 *) Definition shared_array_len (T : Type) (s : array T 32%usize) : result usize := s1 <- array_to_slice T 32%usize s; Ok (slice_len T s1) . (** [arrays::shared_slice_len]: - Source: 'tests/src/arrays.rs', lines 36:0-36:44 *) + Source: 'tests/src/arrays.rs', lines 36:0-38:1 *) Definition shared_slice_len (T : Type) (s : slice T) : result usize := Ok (slice_len T s) . (** [arrays::index_array_shared]: - Source: 'tests/src/arrays.rs', lines 40:0-40:57 *) + Source: 'tests/src/arrays.rs', lines 40:0-42:1 *) Definition index_array_shared (T : Type) (s : array T 32%usize) (i : usize) : result T := array_index_usize T 32%usize s i . (** [arrays::index_array_u32]: - Source: 'tests/src/arrays.rs', lines 47:0-47:53 *) + Source: 'tests/src/arrays.rs', lines 47:0-49:1 *) Definition index_array_u32 (s : array u32 32%usize) (i : usize) : result u32 := array_index_usize u32 32%usize s i . (** [arrays::index_array_copy]: - Source: 'tests/src/arrays.rs', lines 51:0-51:45 *) + Source: 'tests/src/arrays.rs', lines 51:0-53:1 *) Definition index_array_copy (x : array u32 32%usize) : result u32 := array_index_usize u32 32%usize x 0%usize . (** [arrays::index_mut_array]: - Source: 'tests/src/arrays.rs', lines 55:0-55:62 *) + Source: 'tests/src/arrays.rs', lines 55:0-57:1 *) Definition index_mut_array (T : Type) (s : array T 32%usize) (i : usize) : result (T * (T -> result (array T 32%usize))) @@ -80,13 +80,13 @@ Definition index_mut_array . (** [arrays::index_slice]: - Source: 'tests/src/arrays.rs', lines 59:0-59:46 *) + Source: 'tests/src/arrays.rs', lines 59:0-61:1 *) Definition index_slice (T : Type) (s : slice T) (i : usize) : result T := slice_index_usize T s i . (** [arrays::index_mut_slice]: - Source: 'tests/src/arrays.rs', lines 63:0-63:58 *) + Source: 'tests/src/arrays.rs', lines 63:0-65:1 *) Definition index_mut_slice (T : Type) (s : slice T) (i : usize) : result (T * (T -> result (slice T))) @@ -95,7 +95,7 @@ Definition index_mut_slice . (** [arrays::slice_subslice_shared_]: - Source: 'tests/src/arrays.rs', lines 67:0-67:70 *) + Source: 'tests/src/arrays.rs', lines 67:0-69:1 *) Definition slice_subslice_shared_ (x : slice u32) (y : usize) (z : usize) : result (slice u32) := core_slice_index_Slice_index u32 (core_ops_range_Range usize) @@ -104,7 +104,7 @@ Definition slice_subslice_shared_ . (** [arrays::slice_subslice_mut_]: - Source: 'tests/src/arrays.rs', lines 71:0-71:75 *) + Source: 'tests/src/arrays.rs', lines 71:0-73:1 *) Definition slice_subslice_mut_ (x : slice u32) (y : usize) (z : usize) : result ((slice u32) * (slice u32 -> result (slice u32))) @@ -118,14 +118,14 @@ Definition slice_subslice_mut_ . (** [arrays::array_to_slice_shared_]: - Source: 'tests/src/arrays.rs', lines 75:0-75:54 *) + Source: 'tests/src/arrays.rs', lines 75:0-77:1 *) Definition array_to_slice_shared_ (x : array u32 32%usize) : result (slice u32) := array_to_slice u32 32%usize x . (** [arrays::array_to_slice_mut_]: - Source: 'tests/src/arrays.rs', lines 79:0-79:59 *) + Source: 'tests/src/arrays.rs', lines 79:0-81:1 *) Definition array_to_slice_mut_ (x : array u32 32%usize) : result ((slice u32) * (slice u32 -> result (array u32 32%usize))) @@ -134,7 +134,7 @@ Definition array_to_slice_mut_ . (** [arrays::array_subslice_shared_]: - Source: 'tests/src/arrays.rs', lines 83:0-83:74 *) + Source: 'tests/src/arrays.rs', lines 83:0-85:1 *) Definition array_subslice_shared_ (x : array u32 32%usize) (y : usize) (z : usize) : result (slice u32) := core_array_Array_index u32 (core_ops_range_Range usize) 32%usize @@ -144,7 +144,7 @@ Definition array_subslice_shared_ . (** [arrays::array_subslice_mut_]: - Source: 'tests/src/arrays.rs', lines 87:0-87:79 *) + Source: 'tests/src/arrays.rs', lines 87:0-89:1 *) Definition array_subslice_mut_ (x : array u32 32%usize) (y : usize) (z : usize) : result ((slice u32) * (slice u32 -> result (array u32 32%usize))) @@ -159,19 +159,19 @@ Definition array_subslice_mut_ . (** [arrays::index_slice_0]: - Source: 'tests/src/arrays.rs', lines 91:0-91:38 *) + Source: 'tests/src/arrays.rs', lines 91:0-93:1 *) Definition index_slice_0 (T : Type) (s : slice T) : result T := slice_index_usize T s 0%usize . (** [arrays::index_array_0]: - Source: 'tests/src/arrays.rs', lines 95:0-95:42 *) + Source: 'tests/src/arrays.rs', lines 95:0-97:1 *) Definition index_array_0 (T : Type) (s : array T 32%usize) : result T := array_index_usize T 32%usize s 0%usize . (** [arrays::index_index_array]: - Source: 'tests/src/arrays.rs', lines 106:0-106:71 *) + Source: 'tests/src/arrays.rs', lines 106:0-108:1 *) Definition index_index_array (s : array (array u32 32%usize) 32%usize) (i : usize) (j : usize) : result u32 @@ -181,7 +181,7 @@ Definition index_index_array . (** [arrays::update_update_array]: - Source: 'tests/src/arrays.rs', lines 117:0-117:70 *) + Source: 'tests/src/arrays.rs', lines 117:0-119:1 *) Definition update_update_array (s : array (array u32 32%usize) 32%usize) (i : usize) (j : usize) : result unit @@ -196,46 +196,46 @@ Definition update_update_array . (** [arrays::array_local_deep_copy]: - Source: 'tests/src/arrays.rs', lines 121:0-121:43 *) + Source: 'tests/src/arrays.rs', lines 121:0-123:1 *) Definition array_local_deep_copy (x : array u32 32%usize) : result unit := Ok tt . (** [arrays::take_array]: - Source: 'tests/src/arrays.rs', lines 125:0-125:30 *) + Source: 'tests/src/arrays.rs', lines 125:0-125:33 *) Definition take_array (a : array u32 2%usize) : result unit := Ok tt. (** [arrays::take_array_borrow]: - Source: 'tests/src/arrays.rs', lines 126:0-126:38 *) + Source: 'tests/src/arrays.rs', lines 126:0-126:41 *) Definition take_array_borrow (a : array u32 2%usize) : result unit := Ok tt. (** [arrays::take_slice]: - Source: 'tests/src/arrays.rs', lines 127:0-127:28 *) + Source: 'tests/src/arrays.rs', lines 127:0-127:31 *) Definition take_slice (s : slice u32) : result unit := Ok tt. (** [arrays::take_mut_slice]: - Source: 'tests/src/arrays.rs', lines 128:0-128:36 *) + Source: 'tests/src/arrays.rs', lines 128:0-128:39 *) Definition take_mut_slice (s : slice u32) : result (slice u32) := Ok s. (** [arrays::const_array]: - Source: 'tests/src/arrays.rs', lines 130:0-130:32 *) + Source: 'tests/src/arrays.rs', lines 130:0-132:1 *) Definition const_array : result (array u32 2%usize) := Ok (mk_array u32 2%usize [ 0%u32; 0%u32 ]) . (** [arrays::const_slice]: - Source: 'tests/src/arrays.rs', lines 134:0-134:20 *) + Source: 'tests/src/arrays.rs', lines 134:0-136:1 *) Definition const_slice : result unit := _ <- array_to_slice u32 2%usize (mk_array u32 2%usize [ 0%u32; 0%u32 ]); Ok tt . (** [arrays::take_all]: - Source: 'tests/src/arrays.rs', lines 144:0-144:17 *) + Source: 'tests/src/arrays.rs', lines 144:0-156:1 *) Definition take_all : result unit := _ <- take_array (mk_array u32 2%usize [ 0%u32; 0%u32 ]); _ <- take_array (mk_array u32 2%usize [ 0%u32; 0%u32 ]); @@ -250,32 +250,32 @@ Definition take_all : result unit := . (** [arrays::index_array]: - Source: 'tests/src/arrays.rs', lines 158:0-158:38 *) + Source: 'tests/src/arrays.rs', lines 158:0-160:1 *) Definition index_array (x : array u32 2%usize) : result u32 := array_index_usize u32 2%usize x 0%usize . (** [arrays::index_array_borrow]: - Source: 'tests/src/arrays.rs', lines 161:0-161:46 *) + Source: 'tests/src/arrays.rs', lines 161:0-163:1 *) Definition index_array_borrow (x : array u32 2%usize) : result u32 := array_index_usize u32 2%usize x 0%usize . (** [arrays::index_slice_u32_0]: - Source: 'tests/src/arrays.rs', lines 165:0-165:42 *) + Source: 'tests/src/arrays.rs', lines 165:0-167:1 *) Definition index_slice_u32_0 (x : slice u32) : result u32 := slice_index_usize u32 x 0%usize . (** [arrays::index_mut_slice_u32_0]: - Source: 'tests/src/arrays.rs', lines 169:0-169:50 *) + Source: 'tests/src/arrays.rs', lines 169:0-171:1 *) Definition index_mut_slice_u32_0 (x : slice u32) : result (u32 * (slice u32)) := i <- slice_index_usize u32 x 0%usize; Ok (i, x) . (** [arrays::index_all]: - Source: 'tests/src/arrays.rs', lines 173:0-173:25 *) + Source: 'tests/src/arrays.rs', lines 173:0-185:1 *) Definition index_all : result u32 := i <- index_array (mk_array u32 2%usize [ 0%u32; 0%u32 ]); i1 <- index_array (mk_array u32 2%usize [ 0%u32; 0%u32 ]); @@ -295,7 +295,7 @@ Definition index_all : result u32 := . (** [arrays::update_array]: - Source: 'tests/src/arrays.rs', lines 187:0-187:36 *) + Source: 'tests/src/arrays.rs', lines 187:0-189:1 *) Definition update_array (x : array u32 2%usize) : result unit := p <- array_index_mut_usize u32 2%usize x 0%usize; let (_, index_mut_back) := p in @@ -304,7 +304,7 @@ Definition update_array (x : array u32 2%usize) : result unit := . (** [arrays::update_array_mut_borrow]: - Source: 'tests/src/arrays.rs', lines 190:0-190:48 *) + Source: 'tests/src/arrays.rs', lines 190:0-192:1 *) Definition update_array_mut_borrow (x : array u32 2%usize) : result (array u32 2%usize) := p <- array_index_mut_usize u32 2%usize x 0%usize; @@ -313,7 +313,7 @@ Definition update_array_mut_borrow . (** [arrays::update_mut_slice]: - Source: 'tests/src/arrays.rs', lines 193:0-193:38 *) + Source: 'tests/src/arrays.rs', lines 193:0-195:1 *) Definition update_mut_slice (x : slice u32) : result (slice u32) := p <- slice_index_mut_usize u32 x 0%usize; let (_, index_mut_back) := p in @@ -321,7 +321,7 @@ Definition update_mut_slice (x : slice u32) : result (slice u32) := . (** [arrays::update_all]: - Source: 'tests/src/arrays.rs', lines 197:0-197:19 *) + Source: 'tests/src/arrays.rs', lines 197:0-203:1 *) Definition update_all : result unit := _ <- update_array (mk_array u32 2%usize [ 0%u32; 0%u32 ]); _ <- update_array (mk_array u32 2%usize [ 0%u32; 0%u32 ]); @@ -334,7 +334,7 @@ Definition update_all : result unit := . (** [arrays::range_all]: - Source: 'tests/src/arrays.rs', lines 208:0-208:18 *) + Source: 'tests/src/arrays.rs', lines 208:0-212:1 *) Definition range_all : result unit := p <- core_array_Array_index_mut u32 (core_ops_range_Range usize) 4%usize @@ -352,25 +352,25 @@ Definition range_all : result unit := . (** [arrays::deref_array_borrow]: - Source: 'tests/src/arrays.rs', lines 217:0-217:46 *) + Source: 'tests/src/arrays.rs', lines 217:0-220:1 *) Definition deref_array_borrow (x : array u32 2%usize) : result u32 := array_index_usize u32 2%usize x 0%usize . (** [arrays::deref_array_mut_borrow]: - Source: 'tests/src/arrays.rs', lines 222:0-222:54 *) + Source: 'tests/src/arrays.rs', lines 222:0-225:1 *) Definition deref_array_mut_borrow (x : array u32 2%usize) : result (u32 * (array u32 2%usize)) := i <- array_index_usize u32 2%usize x 0%usize; Ok (i, x) . (** [arrays::take_array_t]: - Source: 'tests/src/arrays.rs', lines 230:0-230:31 *) + Source: 'tests/src/arrays.rs', lines 230:0-230:34 *) Definition take_array_t (a : array AB_t 2%usize) : result unit := Ok tt. (** [arrays::non_copyable_array]: - Source: 'tests/src/arrays.rs', lines 232:0-232:27 *) + Source: 'tests/src/arrays.rs', lines 232:0-240:1 *) Definition non_copyable_array : result unit := take_array_t (mk_array AB_t 2%usize [ AB_A; AB_B ]) . @@ -394,7 +394,7 @@ Fixpoint sum_loop . (** [arrays::sum]: - Source: 'tests/src/arrays.rs', lines 245:0-245:28 *) + Source: 'tests/src/arrays.rs', lines 245:0-253:1 *) Definition sum (n : nat) (s : slice u32) : result u32 := sum_loop n s 0%u32 0%usize . @@ -422,7 +422,7 @@ Fixpoint sum2_loop . (** [arrays::sum2]: - Source: 'tests/src/arrays.rs', lines 255:0-255:41 *) + Source: 'tests/src/arrays.rs', lines 255:0-264:1 *) Definition sum2 (n : nat) (s : slice u32) (s2 : slice u32) : result u32 := let i := slice_len u32 s in let i1 := slice_len u32 s2 in @@ -430,7 +430,7 @@ Definition sum2 (n : nat) (s : slice u32) (s2 : slice u32) : result u32 := . (** [arrays::f0]: - Source: 'tests/src/arrays.rs', lines 266:0-266:11 *) + Source: 'tests/src/arrays.rs', lines 266:0-269:1 *) Definition f0 : result unit := p <- array_to_slice_mut u32 2%usize (mk_array u32 2%usize [ 1%u32; 2%u32 ]); let (s, to_slice_mut_back) := p in @@ -442,7 +442,7 @@ Definition f0 : result unit := . (** [arrays::f1]: - Source: 'tests/src/arrays.rs', lines 271:0-271:11 *) + Source: 'tests/src/arrays.rs', lines 271:0-274:1 *) Definition f1 : result unit := p <- array_index_mut_usize u32 2%usize (mk_array u32 2%usize [ 1%u32; 2%u32 ]) @@ -453,12 +453,12 @@ Definition f1 : result unit := . (** [arrays::f2]: - Source: 'tests/src/arrays.rs', lines 276:0-276:17 *) + Source: 'tests/src/arrays.rs', lines 276:0-276:20 *) Definition f2 (i : u32) : result unit := Ok tt. (** [arrays::f4]: - Source: 'tests/src/arrays.rs', lines 285:0-285:54 *) + Source: 'tests/src/arrays.rs', lines 285:0-287:1 *) Definition f4 (x : array u32 32%usize) (y : usize) (z : usize) : result (slice u32) := core_array_Array_index u32 (core_ops_range_Range usize) 32%usize @@ -468,7 +468,7 @@ Definition f4 . (** [arrays::f3]: - Source: 'tests/src/arrays.rs', lines 278:0-278:18 *) + Source: 'tests/src/arrays.rs', lines 278:0-283:1 *) Definition f3 (n : nat) : result u32 := i <- array_index_usize u32 2%usize (mk_array u32 2%usize [ 1%u32; 2%u32 ]) @@ -481,18 +481,18 @@ Definition f3 (n : nat) : result u32 := . (** [arrays::SZ] - Source: 'tests/src/arrays.rs', lines 289:0-289:19 *) + Source: 'tests/src/arrays.rs', lines 289:0-289:25 *) Definition sz_body : result usize := Ok 32%usize. Definition sz : usize := sz_body%global. (** [arrays::f5]: - Source: 'tests/src/arrays.rs', lines 292:0-292:31 *) + Source: 'tests/src/arrays.rs', lines 292:0-294:1 *) Definition f5 (x : array u32 32%usize) : result u32 := array_index_usize u32 32%usize x 0%usize . (** [arrays::ite]: - Source: 'tests/src/arrays.rs', lines 297:0-297:12 *) + Source: 'tests/src/arrays.rs', lines 297:0-304:1 *) Definition ite : result unit := p <- array_to_slice_mut u32 2%usize (mk_array u32 2%usize [ 0%u32; 0%u32 ]); let (s, to_slice_mut_back) := p in @@ -526,7 +526,7 @@ Fixpoint zero_slice_loop . (** [arrays::zero_slice]: - Source: 'tests/src/arrays.rs', lines 306:0-306:31 *) + Source: 'tests/src/arrays.rs', lines 306:0-313:1 *) Definition zero_slice (n : nat) (a : slice u8) : result (slice u8) := let len := slice_len u8 a in zero_slice_loop n a 0%usize len . @@ -545,7 +545,7 @@ Fixpoint iter_mut_slice_loop . (** [arrays::iter_mut_slice]: - Source: 'tests/src/arrays.rs', lines 315:0-315:35 *) + Source: 'tests/src/arrays.rs', lines 315:0-321:1 *) Definition iter_mut_slice (n : nat) (a : slice u8) : result (slice u8) := let len := slice_len u8 a in _ <- iter_mut_slice_loop n len 0%usize; Ok a . @@ -569,7 +569,7 @@ Fixpoint sum_mut_slice_loop . (** [arrays::sum_mut_slice]: - Source: 'tests/src/arrays.rs', lines 323:0-323:42 *) + Source: 'tests/src/arrays.rs', lines 323:0-331:1 *) Definition sum_mut_slice (n : nat) (a : slice u32) : result (u32 * (slice u32)) := i <- sum_mut_slice_loop n a 0%usize 0%u32; Ok (i, a) diff --git a/tests/coq/betree/Betree_Funs.v b/tests/coq/betree/Betree_Funs.v index 211f92e54..f015f127b 100644 --- a/tests/coq/betree/Betree_Funs.v +++ b/tests/coq/betree/Betree_Funs.v @@ -13,7 +13,7 @@ Include Betree_FunsExternal. Module Betree_Funs. (** [betree::betree::load_internal_node]: - Source: 'src/betree.rs', lines 36:0-36:52 *) + Source: 'src/betree.rs', lines 36:0-38:1 *) Definition betree_load_internal_node (id : u64) (st : state) : result (state * (betree_List_t (u64 * betree_Message_t))) @@ -22,7 +22,7 @@ Definition betree_load_internal_node . (** [betree::betree::store_internal_node]: - Source: 'src/betree.rs', lines 41:0-41:60 *) + Source: 'src/betree.rs', lines 41:0-43:1 *) Definition betree_store_internal_node (id : u64) (content : betree_List_t (u64 * betree_Message_t)) (st : state) : result (state * unit) @@ -31,14 +31,14 @@ Definition betree_store_internal_node . (** [betree::betree::load_leaf_node]: - Source: 'src/betree.rs', lines 46:0-46:44 *) + Source: 'src/betree.rs', lines 46:0-48:1 *) Definition betree_load_leaf_node (id : u64) (st : state) : result (state * (betree_List_t (u64 * u64))) := betree_utils_load_leaf_node id st . (** [betree::betree::store_leaf_node]: - Source: 'src/betree.rs', lines 51:0-51:52 *) + Source: 'src/betree.rs', lines 51:0-53:1 *) Definition betree_store_leaf_node (id : u64) (content : betree_List_t (u64 * u64)) (st : state) : result (state * unit) @@ -47,19 +47,19 @@ Definition betree_store_leaf_node . (** [betree::betree::fresh_node_id]: - Source: 'src/betree.rs', lines 55:0-55:48 *) + Source: 'src/betree.rs', lines 55:0-59:1 *) Definition betree_fresh_node_id (counter : u64) : result (u64 * u64) := counter1 <- u64_add counter 1%u64; Ok (counter, counter1) . (** [betree::betree::{betree::betree::NodeIdCounter}::new]: - Source: 'src/betree.rs', lines 206:4-206:20 *) + Source: 'src/betree.rs', lines 206:4-208:5 *) Definition betree_NodeIdCounter_new : result betree_NodeIdCounter_t := Ok {| betree_NodeIdCounter_next_node_id := 0%u64 |} . (** [betree::betree::{betree::betree::NodeIdCounter}::fresh_id]: - Source: 'src/betree.rs', lines 210:4-210:36 *) + Source: 'src/betree.rs', lines 210:4-214:5 *) Definition betree_NodeIdCounter_fresh_id (self : betree_NodeIdCounter_t) : result (u64 * betree_NodeIdCounter_t) := i <- u64_add self.(betree_NodeIdCounter_next_node_id) 1%u64; @@ -68,7 +68,7 @@ Definition betree_NodeIdCounter_fresh_id . (** [betree::betree::upsert_update]: - Source: 'src/betree.rs', lines 234:0-234:70 *) + Source: 'src/betree.rs', lines 234:0-273:1 *) Definition betree_upsert_update (prev : option u64) (st : betree_UpsertFunState_t) : result u64 := match prev with @@ -104,7 +104,7 @@ Fixpoint betree_List_len_loop . (** [betree::betree::{betree::betree::List}#1::len]: - Source: 'src/betree.rs', lines 276:4-276:24 *) + Source: 'src/betree.rs', lines 276:4-284:5 *) Definition betree_List_len (T : Type) (n : nat) (self : betree_List_t T) : result u64 := betree_List_len_loop T n self 0%u64 @@ -128,7 +128,7 @@ Fixpoint betree_List_reverse_loop . (** [betree::betree::{betree::betree::List}#1::reverse]: - Source: 'src/betree.rs', lines 304:4-304:32 *) + Source: 'src/betree.rs', lines 304:4-312:5 *) Definition betree_List_reverse (T : Type) (n : nat) (self : betree_List_t T) : result (betree_List_t T) := betree_List_reverse_loop T n self Betree_List_Nil @@ -157,7 +157,7 @@ Fixpoint betree_List_split_at_loop . (** [betree::betree::{betree::betree::List}#1::split_at]: - Source: 'src/betree.rs', lines 287:4-287:55 *) + Source: 'src/betree.rs', lines 287:4-302:5 *) Definition betree_List_split_at (T : Type) (n : nat) (self : betree_List_t T) (n1 : u64) : result ((betree_List_t T) * (betree_List_t T)) @@ -166,7 +166,7 @@ Definition betree_List_split_at . (** [betree::betree::{betree::betree::List}#1::push_front]: - Source: 'src/betree.rs', lines 315:4-315:34 *) + Source: 'src/betree.rs', lines 315:4-319:5 *) Definition betree_List_push_front (T : Type) (self : betree_List_t T) (x : T) : result (betree_List_t T) := let (tl, _) := core_mem_replace (betree_List_t T) self Betree_List_Nil in @@ -174,7 +174,7 @@ Definition betree_List_push_front . (** [betree::betree::{betree::betree::List}#1::pop_front]: - Source: 'src/betree.rs', lines 322:4-322:32 *) + Source: 'src/betree.rs', lines 322:4-332:5 *) Definition betree_List_pop_front (T : Type) (self : betree_List_t T) : result (T * (betree_List_t T)) := let (ls, _) := core_mem_replace (betree_List_t T) self Betree_List_Nil in @@ -185,7 +185,7 @@ Definition betree_List_pop_front . (** [betree::betree::{betree::betree::List}#1::hd]: - Source: 'src/betree.rs', lines 334:4-334:22 *) + Source: 'src/betree.rs', lines 334:4-339:5 *) Definition betree_List_hd (T : Type) (self : betree_List_t T) : result T := match self with | Betree_List_Cons hd _ => Ok hd @@ -194,7 +194,7 @@ Definition betree_List_hd (T : Type) (self : betree_List_t T) : result T := . (** [betree::betree::{betree::betree::List<(u64, T)>}#2::head_has_key]: - Source: 'src/betree.rs', lines 343:4-343:44 *) + Source: 'src/betree.rs', lines 343:4-348:5 *) Definition betree_ListPairU64T_head_has_key (T : Type) (self : betree_List_t (u64 * T)) (key : u64) : result bool := match self with @@ -232,7 +232,7 @@ Fixpoint betree_ListPairU64T_partition_at_pivot_loop . (** [betree::betree::{betree::betree::List<(u64, T)>}#2::partition_at_pivot]: - Source: 'src/betree.rs', lines 355:4-355:73 *) + Source: 'src/betree.rs', lines 355:4-370:5 *) Definition betree_ListPairU64T_partition_at_pivot (T : Type) (n : nat) (self : betree_List_t (u64 * T)) (pivot : u64) : result ((betree_List_t (u64 * T)) * (betree_List_t (u64 * T))) @@ -242,7 +242,7 @@ Definition betree_ListPairU64T_partition_at_pivot . (** [betree::betree::{betree::betree::Leaf}#3::split]: - Source: 'src/betree.rs', lines 378:4-383:17 *) + Source: 'src/betree.rs', lines 378:4-409:5 *) Definition betree_Leaf_split (n : nat) (self : betree_Leaf_t) (content : betree_List_t (u64 * u64)) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -305,7 +305,7 @@ Fixpoint betree_Node_lookup_first_message_for_key_loop . (** [betree::betree::{betree::betree::Node}#5::lookup_first_message_for_key]: - Source: 'src/betree.rs', lines 792:4-795:34 *) + Source: 'src/betree.rs', lines 792:4-810:5 *) Definition betree_Node_lookup_first_message_for_key (n : nat) (key : u64) (msgs : betree_List_t (u64 * betree_Message_t)) : result ((betree_List_t (u64 * betree_Message_t)) * (betree_List_t (u64 * @@ -347,7 +347,7 @@ Fixpoint betree_Node_apply_upserts_loop . (** [betree::betree::{betree::betree::Node}#5::apply_upserts]: - Source: 'src/betree.rs', lines 820:4-820:94 *) + Source: 'src/betree.rs', lines 820:4-844:5 *) Definition betree_Node_apply_upserts (n : nat) (msgs : betree_List_t (u64 * betree_Message_t)) (prev : option u64) (key : u64) : @@ -380,7 +380,7 @@ Fixpoint betree_Node_lookup_in_bindings_loop . (** [betree::betree::{betree::betree::Node}#5::lookup_in_bindings]: - Source: 'src/betree.rs', lines 649:4-649:84 *) + Source: 'src/betree.rs', lines 649:4-660:5 *) Definition betree_Node_lookup_in_bindings (n : nat) (key : u64) (bindings : betree_List_t (u64 * u64)) : result (option u64) @@ -389,7 +389,7 @@ Definition betree_Node_lookup_in_bindings . (** [betree::betree::{betree::betree::Internal}#4::lookup_in_children]: - Source: 'src/betree.rs', lines 414:4-414:63 *) + Source: 'src/betree.rs', lines 414:4-420:5 *) Fixpoint betree_Internal_lookup_in_children (n : nat) (self : betree_Internal_t) (key : u64) (st : state) : result (state * ((option u64) * betree_Internal_t)) @@ -413,7 +413,7 @@ Fixpoint betree_Internal_lookup_in_children end (** [betree::betree::{betree::betree::Node}#5::lookup]: - Source: 'src/betree.rs', lines 712:4-712:58 *) + Source: 'src/betree.rs', lines 712:4-785:5 *) with betree_Node_lookup (n : nat) (self : betree_Node_t) (key : u64) (st : state) : result (state * ((option u64) * betree_Node_t)) @@ -505,7 +505,7 @@ Fixpoint betree_Node_filter_messages_for_key_loop . (** [betree::betree::{betree::betree::Node}#5::filter_messages_for_key]: - Source: 'src/betree.rs', lines 683:4-683:77 *) + Source: 'src/betree.rs', lines 683:4-692:5 *) Definition betree_Node_filter_messages_for_key (n : nat) (key : u64) (msgs : betree_List_t (u64 * betree_Message_t)) : result (betree_List_t (u64 * betree_Message_t)) @@ -541,7 +541,7 @@ Fixpoint betree_Node_lookup_first_message_after_key_loop . (** [betree::betree::{betree::betree::Node}#5::lookup_first_message_after_key]: - Source: 'src/betree.rs', lines 694:4-697:34 *) + Source: 'src/betree.rs', lines 694:4-706:5 *) Definition betree_Node_lookup_first_message_after_key (n : nat) (key : u64) (msgs : betree_List_t (u64 * betree_Message_t)) : result ((betree_List_t (u64 * betree_Message_t)) * (betree_List_t (u64 * @@ -551,7 +551,7 @@ Definition betree_Node_lookup_first_message_after_key . (** [betree::betree::{betree::betree::Node}#5::apply_to_internal]: - Source: 'src/betree.rs', lines 534:4-534:89 *) + Source: 'src/betree.rs', lines 534:4-586:5 *) Definition betree_Node_apply_to_internal (n : nat) (msgs : betree_List_t (u64 * betree_Message_t)) (key : u64) (new_msg : betree_Message_t) : @@ -632,7 +632,7 @@ Fixpoint betree_Node_apply_messages_to_internal_loop . (** [betree::betree::{betree::betree::Node}#5::apply_messages_to_internal]: - Source: 'src/betree.rs', lines 518:4-521:5 *) + Source: 'src/betree.rs', lines 518:4-526:5 *) Definition betree_Node_apply_messages_to_internal (n : nat) (msgs : betree_List_t (u64 * betree_Message_t)) (new_msgs : betree_List_t (u64 * betree_Message_t)) : @@ -669,7 +669,7 @@ Fixpoint betree_Node_lookup_mut_in_bindings_loop . (** [betree::betree::{betree::betree::Node}#5::lookup_mut_in_bindings]: - Source: 'src/betree.rs', lines 664:4-667:32 *) + Source: 'src/betree.rs', lines 664:4-677:5 *) Definition betree_Node_lookup_mut_in_bindings (n : nat) (key : u64) (bindings : betree_List_t (u64 * u64)) : result ((betree_List_t (u64 * u64)) * (betree_List_t (u64 * u64) -> result @@ -679,7 +679,7 @@ Definition betree_Node_lookup_mut_in_bindings . (** [betree::betree::{betree::betree::Node}#5::apply_to_leaf]: - Source: 'src/betree.rs', lines 476:4-476:87 *) + Source: 'src/betree.rs', lines 476:4-515:5 *) Definition betree_Node_apply_to_leaf (n : nat) (bindings : betree_List_t (u64 * u64)) (key : u64) (new_msg : betree_Message_t) : @@ -737,7 +737,7 @@ Fixpoint betree_Node_apply_messages_to_leaf_loop . (** [betree::betree::{betree::betree::Node}#5::apply_messages_to_leaf]: - Source: 'src/betree.rs', lines 463:4-466:5 *) + Source: 'src/betree.rs', lines 463:4-471:5 *) Definition betree_Node_apply_messages_to_leaf (n : nat) (bindings : betree_List_t (u64 * u64)) (new_msgs : betree_List_t (u64 * betree_Message_t)) : @@ -747,7 +747,7 @@ Definition betree_Node_apply_messages_to_leaf . (** [betree::betree::{betree::betree::Internal}#4::flush]: - Source: 'src/betree.rs', lines 429:4-434:26 *) + Source: 'src/betree.rs', lines 429:4-458:5 *) Fixpoint betree_Internal_flush (n : nat) (self : betree_Internal_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -797,7 +797,7 @@ Fixpoint betree_Internal_flush end (** [betree::betree::{betree::betree::Node}#5::apply_messages]: - Source: 'src/betree.rs', lines 601:4-606:5 *) + Source: 'src/betree.rs', lines 601:4-645:5 *) with betree_Node_apply_messages (n : nat) (self : betree_Node_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -853,7 +853,7 @@ with betree_Node_apply_messages . (** [betree::betree::{betree::betree::Node}#5::apply]: - Source: 'src/betree.rs', lines 589:4-595:5 *) + Source: 'src/betree.rs', lines 589:4-598:5 *) Definition betree_Node_apply (n : nat) (self : betree_Node_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) (key : u64) @@ -869,7 +869,7 @@ Definition betree_Node_apply . (** [betree::betree::{betree::betree::BeTree}#6::new]: - Source: 'src/betree.rs', lines 848:4-848:60 *) + Source: 'src/betree.rs', lines 848:4-862:5 *) Definition betree_BeTree_new (min_flush_size : u64) (split_size : u64) (st : state) : result (state * betree_BeTree_t) @@ -894,7 +894,7 @@ Definition betree_BeTree_new . (** [betree::betree::{betree::betree::BeTree}#6::apply]: - Source: 'src/betree.rs', lines 867:4-867:47 *) + Source: 'src/betree.rs', lines 867:4-870:5 *) Definition betree_BeTree_apply (n : nat) (self : betree_BeTree_t) (key : u64) (msg : betree_Message_t) (st : state) : @@ -914,7 +914,7 @@ Definition betree_BeTree_apply . (** [betree::betree::{betree::betree::BeTree}#6::insert]: - Source: 'src/betree.rs', lines 873:4-873:52 *) + Source: 'src/betree.rs', lines 873:4-876:5 *) Definition betree_BeTree_insert (n : nat) (self : betree_BeTree_t) (key : u64) (value : u64) (st : state) : result (state * betree_BeTree_t) @@ -923,7 +923,7 @@ Definition betree_BeTree_insert . (** [betree::betree::{betree::betree::BeTree}#6::delete]: - Source: 'src/betree.rs', lines 879:4-879:38 *) + Source: 'src/betree.rs', lines 879:4-882:5 *) Definition betree_BeTree_delete (n : nat) (self : betree_BeTree_t) (key : u64) (st : state) : result (state * betree_BeTree_t) @@ -932,7 +932,7 @@ Definition betree_BeTree_delete . (** [betree::betree::{betree::betree::BeTree}#6::upsert]: - Source: 'src/betree.rs', lines 885:4-885:59 *) + Source: 'src/betree.rs', lines 885:4-888:5 *) Definition betree_BeTree_upsert (n : nat) (self : betree_BeTree_t) (key : u64) (upd : betree_UpsertFunState_t) (st : state) : @@ -942,7 +942,7 @@ Definition betree_BeTree_upsert . (** [betree::betree::{betree::betree::BeTree}#6::lookup]: - Source: 'src/betree.rs', lines 894:4-894:62 *) + Source: 'src/betree.rs', lines 894:4-896:5 *) Definition betree_BeTree_lookup (n : nat) (self : betree_BeTree_t) (key : u64) (st : state) : result (state * ((option u64) * betree_BeTree_t)) @@ -959,7 +959,7 @@ Definition betree_BeTree_lookup . (** [betree::main]: - Source: 'src/main.rs', lines 4:0-4:9 *) + Source: 'src/main.rs', lines 4:0-4:12 *) Definition main : result unit := Ok tt. diff --git a/tests/coq/betree/Betree_FunsExternal_Template.v b/tests/coq/betree/Betree_FunsExternal_Template.v index 2a2fddfce..9e1b232e4 100644 --- a/tests/coq/betree/Betree_FunsExternal_Template.v +++ b/tests/coq/betree/Betree_FunsExternal_Template.v @@ -12,13 +12,13 @@ Include Betree_Types. Module Betree_FunsExternal_Template. (** [betree::betree_utils::load_internal_node]: - Source: 'src/betree_utils.rs', lines 98:0-98:63 *) + Source: 'src/betree_utils.rs', lines 98:0-112:1 *) Axiom betree_utils_load_internal_node : u64 -> state -> result (state * (betree_List_t (u64 * betree_Message_t))) . (** [betree::betree_utils::store_internal_node]: - Source: 'src/betree_utils.rs', lines 115:0-115:71 *) + Source: 'src/betree_utils.rs', lines 115:0-129:1 *) Axiom betree_utils_store_internal_node : u64 -> betree_List_t (u64 * betree_Message_t) -> state -> result (state * @@ -26,13 +26,13 @@ Axiom betree_utils_store_internal_node . (** [betree::betree_utils::load_leaf_node]: - Source: 'src/betree_utils.rs', lines 132:0-132:55 *) + Source: 'src/betree_utils.rs', lines 132:0-142:1 *) Axiom betree_utils_load_leaf_node : u64 -> state -> result (state * (betree_List_t (u64 * u64))) . (** [betree::betree_utils::store_leaf_node]: - Source: 'src/betree_utils.rs', lines 145:0-145:63 *) + Source: 'src/betree_utils.rs', lines 145:0-155:1 *) Axiom betree_utils_store_leaf_node : u64 -> betree_List_t (u64 * u64) -> state -> result (state * unit) . diff --git a/tests/coq/betree/Betree_Types.v b/tests/coq/betree/Betree_Types.v index aa39d8e4c..631b57295 100644 --- a/tests/coq/betree/Betree_Types.v +++ b/tests/coq/betree/Betree_Types.v @@ -11,7 +11,7 @@ Include Betree_TypesExternal. Module Betree_Types. (** [betree::betree::List] - Source: 'src/betree.rs', lines 17:0-17:23 *) + Source: 'src/betree.rs', lines 17:0-20:1 *) Inductive betree_List_t (T : Type) := | Betree_List_Cons : T -> betree_List_t T -> betree_List_t T | Betree_List_Nil : betree_List_t T @@ -21,14 +21,14 @@ Arguments Betree_List_Cons { _ }. Arguments Betree_List_Nil { _ }. (** [betree::betree::UpsertFunState] - Source: 'src/betree.rs', lines 63:0-63:23 *) + Source: 'src/betree.rs', lines 63:0-66:1 *) Inductive betree_UpsertFunState_t := | Betree_UpsertFunState_Add : u64 -> betree_UpsertFunState_t | Betree_UpsertFunState_Sub : u64 -> betree_UpsertFunState_t . (** [betree::betree::Message] - Source: 'src/betree.rs', lines 69:0-69:23 *) + Source: 'src/betree.rs', lines 69:0-117:1 *) Inductive betree_Message_t := | Betree_Message_Insert : u64 -> betree_Message_t | Betree_Message_Delete : betree_Message_t @@ -36,7 +36,7 @@ Inductive betree_Message_t := . (** [betree::betree::Leaf] - Source: 'src/betree.rs', lines 167:0-167:11 *) + Source: 'src/betree.rs', lines 167:0-171:1 *) Record betree_Leaf_t := mkbetree_Leaf_t { betree_Leaf_id : u64; betree_Leaf_size : u64; @@ -44,7 +44,7 @@ mkbetree_Leaf_t { . (** [betree::betree::Internal] - Source: 'src/betree.rs', lines 156:0-156:15 *) + Source: 'src/betree.rs', lines 156:0-161:1 *) Inductive betree_Internal_t := | mkbetree_Internal_t : u64 -> @@ -54,7 +54,7 @@ Inductive betree_Internal_t := betree_Internal_t (** [betree::betree::Node] - Source: 'src/betree.rs', lines 179:0-179:9 *) + Source: 'src/betree.rs', lines 179:0-184:1 *) with betree_Node_t := | Betree_Node_Internal : betree_Internal_t -> betree_Node_t | Betree_Node_Leaf : betree_Leaf_t -> betree_Node_t @@ -90,7 +90,7 @@ Notation "x2 .(betree_Internal_right)" := (betree_Internal_right x2) . (** [betree::betree::Params] - Source: 'src/betree.rs', lines 187:0-187:13 *) + Source: 'src/betree.rs', lines 187:0-199:1 *) Record betree_Params_t := mkbetree_Params_t { betree_Params_min_flush_size : u64; betree_Params_split_size : u64; @@ -98,7 +98,7 @@ mkbetree_Params_t { . (** [betree::betree::NodeIdCounter] - Source: 'src/betree.rs', lines 201:0-201:20 *) + Source: 'src/betree.rs', lines 201:0-203:1 *) Record betree_NodeIdCounter_t := mkbetree_NodeIdCounter_t { betree_NodeIdCounter_next_node_id : u64; @@ -106,7 +106,7 @@ mkbetree_NodeIdCounter_t { . (** [betree::betree::BeTree] - Source: 'src/betree.rs', lines 218:0-218:17 *) + Source: 'src/betree.rs', lines 218:0-225:1 *) Record betree_BeTree_t := mkbetree_BeTree_t { betree_BeTree_params : betree_Params_t; diff --git a/tests/coq/demo/Demo.v b/tests/coq/demo/Demo.v index e2dda83a7..8dda2e3aa 100644 --- a/tests/coq/demo/Demo.v +++ b/tests/coq/demo/Demo.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module Demo. (** [demo::choose]: - Source: 'tests/src/demo.rs', lines 7:0-7:70 *) + Source: 'tests/src/demo.rs', lines 7:0-13:1 *) Definition choose (T : Type) (b : bool) (x : T) (y : T) : result (T * (T -> result (T * T))) := if b @@ -18,30 +18,30 @@ Definition choose . (** [demo::mul2_add1]: - Source: 'tests/src/demo.rs', lines 15:0-15:31 *) + Source: 'tests/src/demo.rs', lines 15:0-17:1 *) Definition mul2_add1 (x : u32) : result u32 := i <- u32_add x x; u32_add i 1%u32 . (** [demo::use_mul2_add1]: - Source: 'tests/src/demo.rs', lines 19:0-19:43 *) + Source: 'tests/src/demo.rs', lines 19:0-21:1 *) Definition use_mul2_add1 (x : u32) (y : u32) : result u32 := i <- mul2_add1 x; u32_add i y . (** [demo::incr]: - Source: 'tests/src/demo.rs', lines 23:0-23:31 *) + Source: 'tests/src/demo.rs', lines 23:0-25:1 *) Definition incr (x : u32) : result u32 := u32_add x 1%u32. (** [demo::use_incr]: - Source: 'tests/src/demo.rs', lines 27:0-27:17 *) + Source: 'tests/src/demo.rs', lines 27:0-32:1 *) Definition use_incr : result unit := x <- incr 0%u32; x1 <- incr x; _ <- incr x1; Ok tt . (** [demo::CList] - Source: 'tests/src/demo.rs', lines 36:0-36:17 *) + Source: 'tests/src/demo.rs', lines 36:0-39:1 *) Inductive CList_t (T : Type) := | CList_CCons : T -> CList_t T -> CList_t T | CList_CNil : CList_t T @@ -51,7 +51,7 @@ Arguments CList_CCons { _ }. Arguments CList_CNil { _ }. (** [demo::list_nth]: - Source: 'tests/src/demo.rs', lines 41:0-41:56 *) + Source: 'tests/src/demo.rs', lines 41:0-54:1 *) Fixpoint list_nth (T : Type) (n : nat) (l : CList_t T) (i : u32) : result T := match n with | O => Fail_ OutOfFuel @@ -82,14 +82,14 @@ Fixpoint list_nth1_loop . (** [demo::list_nth1]: - Source: 'tests/src/demo.rs', lines 56:0-56:65 *) + Source: 'tests/src/demo.rs', lines 56:0-65:1 *) Definition list_nth1 (T : Type) (n : nat) (l : CList_t T) (i : u32) : result T := list_nth1_loop T n l i . (** [demo::list_nth_mut]: - Source: 'tests/src/demo.rs', lines 67:0-67:76 *) + Source: 'tests/src/demo.rs', lines 67:0-80:1 *) Fixpoint list_nth_mut (T : Type) (n : nat) (l : CList_t T) (i : u32) : result (T * (T -> result (CList_t T))) @@ -115,7 +115,7 @@ Fixpoint list_nth_mut . (** [demo::i32_id]: - Source: 'tests/src/demo.rs', lines 82:0-82:28 *) + Source: 'tests/src/demo.rs', lines 82:0-88:1 *) Fixpoint i32_id (n : nat) (i : i32) : result i32 := match n with | O => Fail_ OutOfFuel @@ -127,7 +127,7 @@ Fixpoint i32_id (n : nat) (i : i32) : result i32 := . (** [demo::list_tail]: - Source: 'tests/src/demo.rs', lines 90:0-90:64 *) + Source: 'tests/src/demo.rs', lines 90:0-95:1 *) Fixpoint list_tail (T : Type) (n : nat) (l : CList_t T) : result ((CList_t T) * (CList_t T -> result (CList_t T))) @@ -149,7 +149,7 @@ Fixpoint list_tail . (** Trait declaration: [demo::Counter] - Source: 'tests/src/demo.rs', lines 99:0-99:17 *) + Source: 'tests/src/demo.rs', lines 99:0-101:1 *) Record Counter_t (Self : Type) := mkCounter_t { Counter_t_incr : Self -> result (usize * Self); }. @@ -158,19 +158,19 @@ Arguments mkCounter_t { _ }. Arguments Counter_t_incr { _ }. (** [demo::{demo::Counter for usize}::incr]: - Source: 'tests/src/demo.rs', lines 104:4-104:31 *) + Source: 'tests/src/demo.rs', lines 104:4-108:5 *) Definition counterUsize_incr (self : usize) : result (usize * usize) := self1 <- usize_add self 1%usize; Ok (self, self1) . (** Trait implementation: [demo::{demo::Counter for usize}] - Source: 'tests/src/demo.rs', lines 103:0-103:22 *) + Source: 'tests/src/demo.rs', lines 103:0-109:1 *) Definition CounterUsize : Counter_t usize := {| Counter_t_incr := counterUsize_incr; |}. (** [demo::use_counter]: - Source: 'tests/src/demo.rs', lines 111:0-111:59 *) + Source: 'tests/src/demo.rs', lines 111:0-113:1 *) Definition use_counter (T : Type) (counterInst : Counter_t T) (cnt : T) : result (usize * T) := counterInst.(Counter_t_incr) cnt diff --git a/tests/coq/hashmap/Hashmap_Funs.v b/tests/coq/hashmap/Hashmap_Funs.v index bd3b57ccf..bf9a59c40 100644 --- a/tests/coq/hashmap/Hashmap_Funs.v +++ b/tests/coq/hashmap/Hashmap_Funs.v @@ -13,7 +13,7 @@ Include Hashmap_FunsExternal. Module Hashmap_Funs. (** [hashmap::hash_key]: - Source: 'tests/src/hashmap.rs', lines 38:0-38:32 *) + Source: 'tests/src/hashmap.rs', lines 38:0-43:1 *) Definition hash_key (k : usize) : result usize := Ok k. @@ -36,7 +36,7 @@ Fixpoint hashMap_allocate_slots_loop . (** [hashmap::{hashmap::HashMap}::allocate_slots]: - Source: 'tests/src/hashmap.rs', lines 63:4-63:78 *) + Source: 'tests/src/hashmap.rs', lines 63:4-69:5 *) Definition hashMap_allocate_slots (T : Type) (n : nat) (slots : alloc_vec_Vec (AList_t T)) (n1 : usize) : result (alloc_vec_Vec (AList_t T)) @@ -45,7 +45,7 @@ Definition hashMap_allocate_slots . (** [hashmap::{hashmap::HashMap}::new_with_capacity]: - Source: 'tests/src/hashmap.rs', lines 72:4-76:13 *) + Source: 'tests/src/hashmap.rs', lines 72:4-87:5 *) Definition hashMap_new_with_capacity (T : Type) (n : nat) (capacity : usize) (max_load_dividend : usize) (max_load_divisor : usize) : @@ -65,7 +65,7 @@ Definition hashMap_new_with_capacity . (** [hashmap::{hashmap::HashMap}::new]: - Source: 'tests/src/hashmap.rs', lines 89:4-89:24 *) + Source: 'tests/src/hashmap.rs', lines 89:4-92:5 *) Definition hashMap_new (T : Type) (n : nat) : result (HashMap_t T) := hashMap_new_with_capacity T n 32%usize 4%usize 5%usize . @@ -94,7 +94,7 @@ Fixpoint hashMap_clear_loop . (** [hashmap::{hashmap::HashMap}::clear]: - Source: 'tests/src/hashmap.rs', lines 94:4-94:27 *) + Source: 'tests/src/hashmap.rs', lines 94:4-102:5 *) Definition hashMap_clear (T : Type) (n : nat) (self : HashMap_t T) : result (HashMap_t T) := hm <- hashMap_clear_loop T n self.(hashMap_slots) 0%usize; @@ -109,7 +109,7 @@ Definition hashMap_clear . (** [hashmap::{hashmap::HashMap}::len]: - Source: 'tests/src/hashmap.rs', lines 104:4-104:30 *) + Source: 'tests/src/hashmap.rs', lines 104:4-106:5 *) Definition hashMap_len (T : Type) (self : HashMap_t T) : result usize := Ok self.(hashMap_num_entries) . @@ -137,7 +137,7 @@ Fixpoint hashMap_insert_in_list_loop . (** [hashmap::{hashmap::HashMap}::insert_in_list]: - Source: 'tests/src/hashmap.rs', lines 111:4-111:72 *) + Source: 'tests/src/hashmap.rs', lines 111:4-128:5 *) Definition hashMap_insert_in_list (T : Type) (n : nat) (key : usize) (value : T) (ls : AList_t T) : result (bool * (AList_t T)) @@ -146,7 +146,7 @@ Definition hashMap_insert_in_list . (** [hashmap::{hashmap::HashMap}::insert_no_resize]: - Source: 'tests/src/hashmap.rs', lines 131:4-131:54 *) + Source: 'tests/src/hashmap.rs', lines 131:4-139:5 *) Definition hashMap_insert_no_resize (T : Type) (n : nat) (self : HashMap_t T) (key : usize) (value : T) : result (HashMap_t T) @@ -204,7 +204,7 @@ Fixpoint hashMap_move_elements_from_list_loop . (** [hashmap::{hashmap::HashMap}::move_elements_from_list]: - Source: 'tests/src/hashmap.rs', lines 194:4-194:73 *) + Source: 'tests/src/hashmap.rs', lines 194:4-207:5 *) Definition hashMap_move_elements_from_list (T : Type) (n : nat) (ntable : HashMap_t T) (ls : AList_t T) : result (HashMap_t T) @@ -239,7 +239,7 @@ Fixpoint hashMap_move_elements_loop . (** [hashmap::{hashmap::HashMap}::move_elements]: - Source: 'tests/src/hashmap.rs', lines 181:4-181:82 *) + Source: 'tests/src/hashmap.rs', lines 181:4-191:5 *) Definition hashMap_move_elements (T : Type) (n : nat) (ntable : HashMap_t T) (slots : alloc_vec_Vec (AList_t T)) : @@ -249,7 +249,7 @@ Definition hashMap_move_elements . (** [hashmap::{hashmap::HashMap}::try_resize]: - Source: 'tests/src/hashmap.rs', lines 154:4-154:28 *) + Source: 'tests/src/hashmap.rs', lines 154:4-177:5 *) Definition hashMap_try_resize (T : Type) (n : nat) (self : HashMap_t T) : result (HashMap_t T) := let capacity := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in @@ -282,7 +282,7 @@ Definition hashMap_try_resize . (** [hashmap::{hashmap::HashMap}::insert]: - Source: 'tests/src/hashmap.rs', lines 143:4-143:48 *) + Source: 'tests/src/hashmap.rs', lines 143:4-150:5 *) Definition hashMap_insert (T : Type) (n : nat) (self : HashMap_t T) (key : usize) (value : T) : result (HashMap_t T) @@ -331,14 +331,14 @@ Fixpoint hashMap_contains_key_in_list_loop . (** [hashmap::{hashmap::HashMap}::contains_key_in_list]: - Source: 'tests/src/hashmap.rs', lines 217:4-217:69 *) + Source: 'tests/src/hashmap.rs', lines 217:4-230:5 *) Definition hashMap_contains_key_in_list (T : Type) (n : nat) (key : usize) (ls : AList_t T) : result bool := hashMap_contains_key_in_list_loop T n key ls . (** [hashmap::{hashmap::HashMap}::contains_key]: - Source: 'tests/src/hashmap.rs', lines 210:4-210:49 *) + Source: 'tests/src/hashmap.rs', lines 210:4-214:5 *) Definition hashMap_contains_key (T : Type) (n : nat) (self : HashMap_t T) (key : usize) : result bool := hash <- hash_key key; @@ -367,14 +367,14 @@ Fixpoint hashMap_get_in_list_loop . (** [hashmap::{hashmap::HashMap}::get_in_list]: - Source: 'tests/src/hashmap.rs', lines 235:4-235:71 *) + Source: 'tests/src/hashmap.rs', lines 235:4-248:5 *) Definition hashMap_get_in_list (T : Type) (n : nat) (key : usize) (ls : AList_t T) : result T := hashMap_get_in_list_loop T n key ls . (** [hashmap::{hashmap::HashMap}::get]: - Source: 'tests/src/hashmap.rs', lines 250:4-250:55 *) + Source: 'tests/src/hashmap.rs', lines 250:4-254:5 *) Definition hashMap_get (T : Type) (n : nat) (self : HashMap_t T) (key : usize) : result T := hash <- hash_key key; @@ -414,7 +414,7 @@ Fixpoint hashMap_get_mut_in_list_loop . (** [hashmap::{hashmap::HashMap}::get_mut_in_list]: - Source: 'tests/src/hashmap.rs', lines 256:4-256:87 *) + Source: 'tests/src/hashmap.rs', lines 256:4-265:5 *) Definition hashMap_get_mut_in_list (T : Type) (n : nat) (ls : AList_t T) (key : usize) : result (T * (T -> result (AList_t T))) @@ -423,7 +423,7 @@ Definition hashMap_get_mut_in_list . (** [hashmap::{hashmap::HashMap}::get_mut]: - Source: 'tests/src/hashmap.rs', lines 268:4-268:67 *) + Source: 'tests/src/hashmap.rs', lines 268:4-272:5 *) Definition hashMap_get_mut (T : Type) (n : nat) (self : HashMap_t T) (key : usize) : result (T * (T -> result (HashMap_t T))) @@ -482,7 +482,7 @@ Fixpoint hashMap_remove_from_list_loop . (** [hashmap::{hashmap::HashMap}::remove_from_list]: - Source: 'tests/src/hashmap.rs', lines 276:4-276:70 *) + Source: 'tests/src/hashmap.rs', lines 276:4-302:5 *) Definition hashMap_remove_from_list (T : Type) (n : nat) (key : usize) (ls : AList_t T) : result ((option T) * (AList_t T)) @@ -491,7 +491,7 @@ Definition hashMap_remove_from_list . (** [hashmap::{hashmap::HashMap}::remove]: - Source: 'tests/src/hashmap.rs', lines 305:4-305:52 *) + Source: 'tests/src/hashmap.rs', lines 305:4-317:5 *) Definition hashMap_remove (T : Type) (n : nat) (self : HashMap_t T) (key : usize) : result ((option T) * (HashMap_t T)) @@ -532,7 +532,7 @@ Definition hashMap_remove . (** [hashmap::insert_on_disk]: - Source: 'tests/src/hashmap.rs', lines 336:0-336:43 *) + Source: 'tests/src/hashmap.rs', lines 336:0-343:1 *) Definition insert_on_disk (n : nat) (key : usize) (value : u64) (st : state) : result (state * unit) := p <- utils_deserialize st; @@ -542,7 +542,7 @@ Definition insert_on_disk . (** [hashmap::test1]: - Source: 'tests/src/hashmap.rs', lines 351:0-351:10 *) + Source: 'tests/src/hashmap.rs', lines 351:0-383:1 *) Definition test1 (n : nat) : result unit := hm <- hashMap_new u64 n; hm1 <- hashMap_insert u64 n hm 0%usize 42%u64; diff --git a/tests/coq/hashmap/Hashmap_FunsExternal_Template.v b/tests/coq/hashmap/Hashmap_FunsExternal_Template.v index ca198a8d6..79483c910 100644 --- a/tests/coq/hashmap/Hashmap_FunsExternal_Template.v +++ b/tests/coq/hashmap/Hashmap_FunsExternal_Template.v @@ -12,11 +12,11 @@ Include Hashmap_Types. Module Hashmap_FunsExternal_Template. (** [hashmap::utils::deserialize]: - Source: 'tests/src/hashmap.rs', lines 331:4-331:47 *) + Source: 'tests/src/hashmap.rs', lines 331:4-333:5 *) Axiom utils_deserialize : state -> result (state * (HashMap_t u64)). (** [hashmap::utils::serialize]: - Source: 'tests/src/hashmap.rs', lines 326:4-326:46 *) + Source: 'tests/src/hashmap.rs', lines 326:4-328:5 *) Axiom utils_serialize : HashMap_t u64 -> state -> result (state * unit). End Hashmap_FunsExternal_Template. diff --git a/tests/coq/hashmap/Hashmap_Types.v b/tests/coq/hashmap/Hashmap_Types.v index bd5822541..e13fb97ba 100644 --- a/tests/coq/hashmap/Hashmap_Types.v +++ b/tests/coq/hashmap/Hashmap_Types.v @@ -11,7 +11,7 @@ Include Hashmap_TypesExternal. Module Hashmap_Types. (** [hashmap::AList] - Source: 'tests/src/hashmap.rs', lines 30:0-30:17 *) + Source: 'tests/src/hashmap.rs', lines 30:0-33:1 *) Inductive AList_t (T : Type) := | AList_Cons : usize -> T -> AList_t T -> AList_t T | AList_Nil : AList_t T @@ -21,7 +21,7 @@ Arguments AList_Cons { _ }. Arguments AList_Nil { _ }. (** [hashmap::HashMap] - Source: 'tests/src/hashmap.rs', lines 46:0-46:21 *) + Source: 'tests/src/hashmap.rs', lines 46:0-58:1 *) Record HashMap_t (T : Type) := mkHashMap_t { hashMap_num_entries : usize; diff --git a/tests/coq/misc/Bitwise.v b/tests/coq/misc/Bitwise.v index 610f4ea81..fe517d335 100644 --- a/tests/coq/misc/Bitwise.v +++ b/tests/coq/misc/Bitwise.v @@ -9,29 +9,29 @@ Local Open Scope Primitives_scope. Module Bitwise. (** [bitwise::shift_u32]: - Source: 'tests/src/bitwise.rs', lines 5:0-5:31 *) + Source: 'tests/src/bitwise.rs', lines 5:0-10:1 *) Definition shift_u32 (a : u32) : result u32 := t <- u32_shr a 16%usize; u32_shl t 16%usize . (** [bitwise::shift_i32]: - Source: 'tests/src/bitwise.rs', lines 12:0-12:31 *) + Source: 'tests/src/bitwise.rs', lines 12:0-17:1 *) Definition shift_i32 (a : i32) : result i32 := t <- i32_shr a 16%isize; i32_shl t 16%isize . (** [bitwise::xor_u32]: - Source: 'tests/src/bitwise.rs', lines 19:0-19:37 *) + Source: 'tests/src/bitwise.rs', lines 19:0-21:1 *) Definition xor_u32 (a : u32) (b : u32) : result u32 := Ok (u32_xor a b). (** [bitwise::or_u32]: - Source: 'tests/src/bitwise.rs', lines 23:0-23:36 *) + Source: 'tests/src/bitwise.rs', lines 23:0-25:1 *) Definition or_u32 (a : u32) (b : u32) : result u32 := Ok (u32_or a b). (** [bitwise::and_u32]: - Source: 'tests/src/bitwise.rs', lines 27:0-27:37 *) + Source: 'tests/src/bitwise.rs', lines 27:0-29:1 *) Definition and_u32 (a : u32) (b : u32) : result u32 := Ok (u32_and a b). diff --git a/tests/coq/misc/Constants.v b/tests/coq/misc/Constants.v index df06dd755..55b937281 100644 --- a/tests/coq/misc/Constants.v +++ b/tests/coq/misc/Constants.v @@ -9,37 +9,37 @@ Local Open Scope Primitives_scope. Module Constants. (** [constants::X0] - Source: 'tests/src/constants.rs', lines 8:0-8:17 *) + Source: 'tests/src/constants.rs', lines 8:0-8:22 *) Definition x0_body : result u32 := Ok 0%u32. Definition x0 : u32 := x0_body%global. (** [constants::X1] - Source: 'tests/src/constants.rs', lines 10:0-10:17 *) + Source: 'tests/src/constants.rs', lines 10:0-10:29 *) Definition x1_body : result u32 := Ok core_u32_max. Definition x1 : u32 := x1_body%global. (** [constants::X2] - Source: 'tests/src/constants.rs', lines 13:0-13:17 *) + Source: 'tests/src/constants.rs', lines 13:0-16:2 *) Definition x2_body : result u32 := Ok 3%u32. Definition x2 : u32 := x2_body%global. (** [constants::incr]: - Source: 'tests/src/constants.rs', lines 20:0-20:32 *) + Source: 'tests/src/constants.rs', lines 20:0-22:1 *) Definition incr (n : u32) : result u32 := u32_add n 1%u32. (** [constants::X3] - Source: 'tests/src/constants.rs', lines 18:0-18:17 *) + Source: 'tests/src/constants.rs', lines 18:0-18:29 *) Definition x3_body : result u32 := incr 32%u32. Definition x3 : u32 := x3_body%global. (** [constants::mk_pair0]: - Source: 'tests/src/constants.rs', lines 26:0-26:51 *) + Source: 'tests/src/constants.rs', lines 26:0-28:1 *) Definition mk_pair0 (x : u32) (y1 : u32) : result (u32 * u32) := Ok (x, y1). (** [constants::Pair] - Source: 'tests/src/constants.rs', lines 39:0-39:23 *) + Source: 'tests/src/constants.rs', lines 39:0-42:1 *) Record Pair_t (T1 T2 : Type) := mkPair_t { pair_x : T1; pair_y : T2; }. Arguments mkPair_t { _ _ }. @@ -47,130 +47,130 @@ Arguments pair_x { _ _ }. Arguments pair_y { _ _ }. (** [constants::mk_pair1]: - Source: 'tests/src/constants.rs', lines 30:0-30:55 *) + Source: 'tests/src/constants.rs', lines 30:0-32:1 *) Definition mk_pair1 (x : u32) (y1 : u32) : result (Pair_t u32 u32) := Ok {| pair_x := x; pair_y := y1 |} . (** [constants::P0] - Source: 'tests/src/constants.rs', lines 34:0-34:24 *) + Source: 'tests/src/constants.rs', lines 34:0-34:42 *) Definition p0_body : result (u32 * u32) := mk_pair0 0%u32 1%u32. Definition p0 : (u32 * u32) := p0_body%global. (** [constants::P1] - Source: 'tests/src/constants.rs', lines 35:0-35:28 *) + Source: 'tests/src/constants.rs', lines 35:0-35:46 *) Definition p1_body : result (Pair_t u32 u32) := mk_pair1 0%u32 1%u32. Definition p1 : Pair_t u32 u32 := p1_body%global. (** [constants::P2] - Source: 'tests/src/constants.rs', lines 36:0-36:24 *) + Source: 'tests/src/constants.rs', lines 36:0-36:34 *) Definition p2_body : result (u32 * u32) := Ok (0%u32, 1%u32). Definition p2 : (u32 * u32) := p2_body%global. (** [constants::P3] - Source: 'tests/src/constants.rs', lines 37:0-37:28 *) + Source: 'tests/src/constants.rs', lines 37:0-37:51 *) Definition p3_body : result (Pair_t u32 u32) := Ok {| pair_x := 0%u32; pair_y := 1%u32 |} . Definition p3 : Pair_t u32 u32 := p3_body%global. (** [constants::Wrap] - Source: 'tests/src/constants.rs', lines 52:0-52:18 *) + Source: 'tests/src/constants.rs', lines 52:0-54:1 *) Record Wrap_t (T : Type) := mkWrap_t { wrap_value : T; }. Arguments mkWrap_t { _ }. Arguments wrap_value { _ }. (** [constants::{constants::Wrap}::new]: - Source: 'tests/src/constants.rs', lines 57:4-57:41 *) + Source: 'tests/src/constants.rs', lines 57:4-59:5 *) Definition wrap_new (T : Type) (value : T) : result (Wrap_t T) := Ok {| wrap_value := value |} . (** [constants::Y] - Source: 'tests/src/constants.rs', lines 44:0-44:22 *) + Source: 'tests/src/constants.rs', lines 44:0-44:38 *) Definition y_body : result (Wrap_t i32) := wrap_new i32 2%i32. Definition y : Wrap_t i32 := y_body%global. (** [constants::unwrap_y]: - Source: 'tests/src/constants.rs', lines 46:0-46:30 *) + Source: 'tests/src/constants.rs', lines 46:0-48:1 *) Definition unwrap_y : result i32 := Ok y.(wrap_value). (** [constants::YVAL] - Source: 'tests/src/constants.rs', lines 50:0-50:19 *) + Source: 'tests/src/constants.rs', lines 50:0-50:33 *) Definition yval_body : result i32 := unwrap_y. Definition yval : i32 := yval_body%global. (** [constants::get_z1::Z1] - Source: 'tests/src/constants.rs', lines 65:4-65:17 *) + Source: 'tests/src/constants.rs', lines 65:4-65:22 *) Definition get_z1_z1_body : result i32 := Ok 3%i32. Definition get_z1_z1 : i32 := get_z1_z1_body%global. (** [constants::get_z1]: - Source: 'tests/src/constants.rs', lines 64:0-64:28 *) + Source: 'tests/src/constants.rs', lines 64:0-67:1 *) Definition get_z1 : result i32 := Ok get_z1_z1. (** [constants::add]: - Source: 'tests/src/constants.rs', lines 69:0-69:39 *) + Source: 'tests/src/constants.rs', lines 69:0-71:1 *) Definition add (a : i32) (b : i32) : result i32 := i32_add a b. (** [constants::Q1] - Source: 'tests/src/constants.rs', lines 77:0-77:17 *) + Source: 'tests/src/constants.rs', lines 77:0-77:22 *) Definition q1_body : result i32 := Ok 5%i32. Definition q1 : i32 := q1_body%global. (** [constants::Q2] - Source: 'tests/src/constants.rs', lines 78:0-78:17 *) + Source: 'tests/src/constants.rs', lines 78:0-78:23 *) Definition q2_body : result i32 := Ok q1. Definition q2 : i32 := q2_body%global. (** [constants::Q3] - Source: 'tests/src/constants.rs', lines 79:0-79:17 *) + Source: 'tests/src/constants.rs', lines 79:0-79:31 *) Definition q3_body : result i32 := add q2 3%i32. Definition q3 : i32 := q3_body%global. (** [constants::get_z2]: - Source: 'tests/src/constants.rs', lines 73:0-73:28 *) + Source: 'tests/src/constants.rs', lines 73:0-75:1 *) Definition get_z2 : result i32 := i <- get_z1; i1 <- add i q3; add q1 i1. (** [constants::S1] - Source: 'tests/src/constants.rs', lines 83:0-83:18 *) + Source: 'tests/src/constants.rs', lines 83:0-83:23 *) Definition s1_body : result u32 := Ok 6%u32. Definition s1 : u32 := s1_body%global. (** [constants::S2] - Source: 'tests/src/constants.rs', lines 84:0-84:18 *) + Source: 'tests/src/constants.rs', lines 84:0-84:30 *) Definition s2_body : result u32 := incr s1. Definition s2 : u32 := s2_body%global. (** [constants::S3] - Source: 'tests/src/constants.rs', lines 85:0-85:29 *) + Source: 'tests/src/constants.rs', lines 85:0-85:35 *) Definition s3_body : result (Pair_t u32 u32) := Ok p3. Definition s3 : Pair_t u32 u32 := s3_body%global. (** [constants::S4] - Source: 'tests/src/constants.rs', lines 86:0-86:29 *) + Source: 'tests/src/constants.rs', lines 86:0-86:47 *) Definition s4_body : result (Pair_t u32 u32) := mk_pair1 7%u32 8%u32. Definition s4 : Pair_t u32 u32 := s4_body%global. (** [constants::V] - Source: 'tests/src/constants.rs', lines 89:0-89:31 *) + Source: 'tests/src/constants.rs', lines 89:0-91:1 *) Record V_t (T : Type) (N : usize) := mkV_t { v_x : array T N; }. Arguments mkV_t { _ _ }. Arguments v_x { _ _ }. (** [constants::{constants::V}#1::LEN] - Source: 'tests/src/constants.rs', lines 94:4-94:24 *) + Source: 'tests/src/constants.rs', lines 94:4-94:29 *) Definition v_len_body (T : Type) (N : usize) : result usize := Ok N. Definition v_len (T : Type) (N : usize) : usize := (v_len_body T N)%global. (** [constants::use_v]: - Source: 'tests/src/constants.rs', lines 97:0-97:42 *) + Source: 'tests/src/constants.rs', lines 97:0-99:1 *) Definition use_v (T : Type) (N : usize) : result usize := Ok (v_len T N). diff --git a/tests/coq/misc/External_Funs.v b/tests/coq/misc/External_Funs.v index 076f01f9f..952a3c931 100644 --- a/tests/coq/misc/External_Funs.v +++ b/tests/coq/misc/External_Funs.v @@ -20,14 +20,14 @@ Definition core_marker_CopyU32 : core_marker_Copy_t u32 := {| |}. (** [external::use_get]: - Source: 'tests/src/external.rs', lines 9:0-9:37 *) + Source: 'tests/src/external.rs', lines 9:0-11:1 *) Definition use_get (rc : core_cell_Cell_t u32) (st : state) : result (state * u32) := core_cell_Cell_get u32 core_marker_CopyU32 rc st . (** [external::incr]: - Source: 'tests/src/external.rs', lines 13:0-13:31 *) + Source: 'tests/src/external.rs', lines 13:0-15:1 *) Definition incr (rc : core_cell_Cell_t u32) (st : state) : result (state * (core_cell_Cell_t u32)) diff --git a/tests/coq/misc/InfiniteLoop.v b/tests/coq/misc/InfiniteLoop.v index 1c0ccbe0c..5d4e195c5 100644 --- a/tests/coq/misc/InfiniteLoop.v +++ b/tests/coq/misc/InfiniteLoop.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module InfiniteLoop. (** [infinite_loop::bar]: - Source: 'tests/src/infinite-loop.rs', lines 4:0-4:8 *) + Source: 'tests/src/infinite-loop.rs', lines 4:0-4:11 *) Definition bar : result unit := Ok tt. @@ -20,7 +20,7 @@ Fixpoint foo_loop (n : nat) : result unit := . (** [infinite_loop::foo]: - Source: 'tests/src/infinite-loop.rs', lines 6:0-6:8 *) + Source: 'tests/src/infinite-loop.rs', lines 6:0-10:1 *) Definition foo (n : nat) : result unit := foo_loop n. diff --git a/tests/coq/misc/Issue194RecursiveStructProjector.v b/tests/coq/misc/Issue194RecursiveStructProjector.v index d1a074491..3f222b9ed 100644 --- a/tests/coq/misc/Issue194RecursiveStructProjector.v +++ b/tests/coq/misc/Issue194RecursiveStructProjector.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module Issue194RecursiveStructProjector. (** [issue_194_recursive_struct_projector::AVLNode] - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-2:17 *) + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-6:1 *) Inductive AVLNode_t (T : Type) := | mkAVLNode_t : T -> @@ -39,13 +39,13 @@ Definition aVLNode_right {T : Type} (x : AVLNode_t T) := Notation "x2 .(aVLNode_right)" := (aVLNode_right x2) (at level 9). (** [issue_194_recursive_struct_projector::get_val]: - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-10:33 *) + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-12:1 *) Definition get_val (T : Type) (x : AVLNode_t T) : result T := Ok x.(aVLNode_value) . (** [issue_194_recursive_struct_projector::get_left]: - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-14:43 *) + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-16:1 *) Definition get_left (T : Type) (x : AVLNode_t T) : result (option (AVLNode_t T)) := Ok x.(aVLNode_left) diff --git a/tests/coq/misc/Loops.v b/tests/coq/misc/Loops.v index a29394e15..c63d2d22c 100644 --- a/tests/coq/misc/Loops.v +++ b/tests/coq/misc/Loops.v @@ -21,7 +21,7 @@ Fixpoint sum_loop (n : nat) (max : u32) (i : u32) (s : u32) : result u32 := . (** [loops::sum]: - Source: 'tests/src/loops.rs', lines 8:0-8:27 *) + Source: 'tests/src/loops.rs', lines 8:0-18:1 *) Definition sum (n : nat) (max : u32) : result u32 := sum_loop n max 0%u32 0%u32 . @@ -43,7 +43,7 @@ Fixpoint sum_with_mut_borrows_loop . (** [loops::sum_with_mut_borrows]: - Source: 'tests/src/loops.rs', lines 23:0-23:44 *) + Source: 'tests/src/loops.rs', lines 23:0-35:1 *) Definition sum_with_mut_borrows (n : nat) (max : u32) : result u32 := sum_with_mut_borrows_loop n max 0%u32 0%u32 . @@ -65,7 +65,7 @@ Fixpoint sum_with_shared_borrows_loop . (** [loops::sum_with_shared_borrows]: - Source: 'tests/src/loops.rs', lines 38:0-38:47 *) + Source: 'tests/src/loops.rs', lines 38:0-52:1 *) Definition sum_with_shared_borrows (n : nat) (max : u32) : result u32 := sum_with_shared_borrows_loop n max 0%u32 0%u32 . @@ -88,7 +88,7 @@ Fixpoint sum_array_loop . (** [loops::sum_array]: - Source: 'tests/src/loops.rs', lines 54:0-54:52 *) + Source: 'tests/src/loops.rs', lines 54:0-62:1 *) Definition sum_array (N : usize) (n : nat) (a : array u32 N) : result u32 := sum_array_loop N n a 0%usize 0%u32 . @@ -115,14 +115,14 @@ Fixpoint clear_loop . (** [loops::clear]: - Source: 'tests/src/loops.rs', lines 66:0-66:30 *) + Source: 'tests/src/loops.rs', lines 66:0-72:1 *) Definition clear (n : nat) (v : alloc_vec_Vec u32) : result (alloc_vec_Vec u32) := clear_loop n v 0%usize . (** [loops::List] - Source: 'tests/src/loops.rs', lines 74:0-74:16 *) + Source: 'tests/src/loops.rs', lines 74:0-77:1 *) Inductive List_t (T : Type) := | List_Cons : T -> List_t T -> List_t T | List_Nil : List_t T @@ -145,7 +145,7 @@ Fixpoint list_mem_loop (n : nat) (x : u32) (ls : List_t u32) : result bool := . (** [loops::list_mem]: - Source: 'tests/src/loops.rs', lines 80:0-80:52 *) + Source: 'tests/src/loops.rs', lines 80:0-89:1 *) Definition list_mem (n : nat) (x : u32) (ls : List_t u32) : result bool := list_mem_loop n x ls . @@ -175,7 +175,7 @@ Fixpoint list_nth_mut_loop_loop . (** [loops::list_nth_mut_loop]: - Source: 'tests/src/loops.rs', lines 92:0-92:71 *) + Source: 'tests/src/loops.rs', lines 92:0-102:1 *) Definition list_nth_mut_loop (T : Type) (n : nat) (ls : List_t T) (i : u32) : result (T * (T -> result (List_t T))) @@ -201,7 +201,7 @@ Fixpoint list_nth_shared_loop_loop . (** [loops::list_nth_shared_loop]: - Source: 'tests/src/loops.rs', lines 105:0-105:66 *) + Source: 'tests/src/loops.rs', lines 105:0-115:1 *) Definition list_nth_shared_loop (T : Type) (n : nat) (ls : List_t T) (i : u32) : result T := list_nth_shared_loop_loop T n ls i @@ -233,7 +233,7 @@ Fixpoint get_elem_mut_loop . (** [loops::get_elem_mut]: - Source: 'tests/src/loops.rs', lines 117:0-117:73 *) + Source: 'tests/src/loops.rs', lines 117:0-131:1 *) Definition get_elem_mut (n : nat) (slots : alloc_vec_Vec (List_t usize)) (x : usize) : result (usize * (usize -> result (alloc_vec_Vec (List_t usize)))) @@ -263,7 +263,7 @@ Fixpoint get_elem_shared_loop . (** [loops::get_elem_shared]: - Source: 'tests/src/loops.rs', lines 133:0-133:68 *) + Source: 'tests/src/loops.rs', lines 133:0-147:1 *) Definition get_elem_shared (n : nat) (slots : alloc_vec_Vec (List_t usize)) (x : usize) : result usize @@ -275,7 +275,7 @@ Definition get_elem_shared . (** [loops::id_mut]: - Source: 'tests/src/loops.rs', lines 149:0-149:50 *) + Source: 'tests/src/loops.rs', lines 149:0-151:1 *) Definition id_mut (T : Type) (ls : List_t T) : result ((List_t T) * (List_t T -> result (List_t T))) @@ -284,7 +284,7 @@ Definition id_mut . (** [loops::id_shared]: - Source: 'tests/src/loops.rs', lines 153:0-153:45 *) + Source: 'tests/src/loops.rs', lines 153:0-155:1 *) Definition id_shared (T : Type) (ls : List_t T) : result (List_t T) := Ok ls. @@ -313,7 +313,7 @@ Fixpoint list_nth_mut_loop_with_id_loop . (** [loops::list_nth_mut_loop_with_id]: - Source: 'tests/src/loops.rs', lines 158:0-158:75 *) + Source: 'tests/src/loops.rs', lines 158:0-169:1 *) Definition list_nth_mut_loop_with_id (T : Type) (n : nat) (ls : List_t T) (i : u32) : result (T * (T -> result (List_t T))) @@ -345,7 +345,7 @@ Fixpoint list_nth_shared_loop_with_id_loop . (** [loops::list_nth_shared_loop_with_id]: - Source: 'tests/src/loops.rs', lines 172:0-172:70 *) + Source: 'tests/src/loops.rs', lines 172:0-183:1 *) Definition list_nth_shared_loop_with_id (T : Type) (n : nat) (ls : List_t T) (i : u32) : result T := ls1 <- id_shared T ls; list_nth_shared_loop_with_id_loop T n i ls1 @@ -386,7 +386,7 @@ Fixpoint list_nth_mut_loop_pair_loop . (** [loops::list_nth_mut_loop_pair]: - Source: 'tests/src/loops.rs', lines 188:0-192:27 *) + Source: 'tests/src/loops.rs', lines 188:0-209:1 *) Definition list_nth_mut_loop_pair (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result ((T * T) * (T -> result (List_t T)) * (T -> result (List_t T))) @@ -419,7 +419,7 @@ Fixpoint list_nth_shared_loop_pair_loop . (** [loops::list_nth_shared_loop_pair]: - Source: 'tests/src/loops.rs', lines 212:0-216:19 *) + Source: 'tests/src/loops.rs', lines 212:0-233:1 *) Definition list_nth_shared_loop_pair (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result (T * T) @@ -464,7 +464,7 @@ Fixpoint list_nth_mut_loop_pair_merge_loop . (** [loops::list_nth_mut_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 237:0-241:27 *) + Source: 'tests/src/loops.rs', lines 237:0-252:1 *) Definition list_nth_mut_loop_pair_merge (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result ((T * T) * ((T * T) -> result ((List_t T) * (List_t T)))) @@ -498,7 +498,7 @@ Fixpoint list_nth_shared_loop_pair_merge_loop . (** [loops::list_nth_shared_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 255:0-259:19 *) + Source: 'tests/src/loops.rs', lines 255:0-270:1 *) Definition list_nth_shared_loop_pair_merge (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result (T * T) @@ -538,7 +538,7 @@ Fixpoint list_nth_mut_shared_loop_pair_loop . (** [loops::list_nth_mut_shared_loop_pair]: - Source: 'tests/src/loops.rs', lines 273:0-277:23 *) + Source: 'tests/src/loops.rs', lines 273:0-288:1 *) Definition list_nth_mut_shared_loop_pair (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result ((T * T) * (T -> result (List_t T))) @@ -578,7 +578,7 @@ Fixpoint list_nth_mut_shared_loop_pair_merge_loop . (** [loops::list_nth_mut_shared_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 292:0-296:23 *) + Source: 'tests/src/loops.rs', lines 292:0-307:1 *) Definition list_nth_mut_shared_loop_pair_merge (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result ((T * T) * (T -> result (List_t T))) @@ -618,7 +618,7 @@ Fixpoint list_nth_shared_mut_loop_pair_loop . (** [loops::list_nth_shared_mut_loop_pair]: - Source: 'tests/src/loops.rs', lines 311:0-315:23 *) + Source: 'tests/src/loops.rs', lines 311:0-326:1 *) Definition list_nth_shared_mut_loop_pair (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result ((T * T) * (T -> result (List_t T))) @@ -658,7 +658,7 @@ Fixpoint list_nth_shared_mut_loop_pair_merge_loop . (** [loops::list_nth_shared_mut_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 330:0-334:23 *) + Source: 'tests/src/loops.rs', lines 330:0-345:1 *) Definition list_nth_shared_mut_loop_pair_merge (T : Type) (n : nat) (ls0 : List_t T) (ls1 : List_t T) (i : u32) : result ((T * T) * (T -> result (List_t T))) @@ -679,7 +679,7 @@ Fixpoint ignore_input_mut_borrow_loop (n : nat) (i : u32) : result unit := . (** [loops::ignore_input_mut_borrow]: - Source: 'tests/src/loops.rs', lines 349:0-349:56 *) + Source: 'tests/src/loops.rs', lines 349:0-353:1 *) Definition ignore_input_mut_borrow (n : nat) (_a : u32) (i : u32) : result u32 := _ <- ignore_input_mut_borrow_loop n i; Ok _a @@ -698,7 +698,7 @@ Fixpoint incr_ignore_input_mut_borrow_loop (n : nat) (i : u32) : result unit := . (** [loops::incr_ignore_input_mut_borrow]: - Source: 'tests/src/loops.rs', lines 357:0-357:60 *) + Source: 'tests/src/loops.rs', lines 357:0-362:1 *) Definition incr_ignore_input_mut_borrow (n : nat) (a : u32) (i : u32) : result u32 := a1 <- u32_add a 1%u32; _ <- incr_ignore_input_mut_borrow_loop n i; Ok a1 @@ -717,7 +717,7 @@ Fixpoint ignore_input_shared_borrow_loop (n : nat) (i : u32) : result unit := . (** [loops::ignore_input_shared_borrow]: - Source: 'tests/src/loops.rs', lines 366:0-366:59 *) + Source: 'tests/src/loops.rs', lines 366:0-370:1 *) Definition ignore_input_shared_borrow (n : nat) (_a : u32) (i : u32) : result u32 := _ <- ignore_input_shared_borrow_loop n i; Ok _a diff --git a/tests/coq/misc/NoNestedBorrows.v b/tests/coq/misc/NoNestedBorrows.v index 7736542a7..f7183f5fb 100644 --- a/tests/coq/misc/NoNestedBorrows.v +++ b/tests/coq/misc/NoNestedBorrows.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module NoNestedBorrows. (** [no_nested_borrows::Pair] - Source: 'tests/src/no_nested_borrows.rs', lines 7:0-7:23 *) + Source: 'tests/src/no_nested_borrows.rs', lines 7:0-10:1 *) Record Pair_t (T1 T2 : Type) := mkPair_t { pair_x : T1; pair_y : T2; }. Arguments mkPair_t { _ _ }. @@ -17,7 +17,7 @@ Arguments pair_x { _ _ }. Arguments pair_y { _ _ }. (** [no_nested_borrows::List] - Source: 'tests/src/no_nested_borrows.rs', lines 12:0-12:16 *) + Source: 'tests/src/no_nested_borrows.rs', lines 12:0-15:1 *) Inductive List_t (T : Type) := | List_Cons : T -> List_t T -> List_t T | List_Nil : List_t T @@ -27,25 +27,25 @@ Arguments List_Cons { _ }. Arguments List_Nil { _ }. (** [no_nested_borrows::One] - Source: 'tests/src/no_nested_borrows.rs', lines 23:0-23:16 *) + Source: 'tests/src/no_nested_borrows.rs', lines 23:0-25:1 *) Inductive One_t (T1 : Type) := | One_One : T1 -> One_t T1. Arguments One_One { _ }. (** [no_nested_borrows::EmptyEnum] - Source: 'tests/src/no_nested_borrows.rs', lines 29:0-29:18 *) + Source: 'tests/src/no_nested_borrows.rs', lines 29:0-31:1 *) Inductive EmptyEnum_t := | EmptyEnum_Empty : EmptyEnum_t. (** [no_nested_borrows::Enum] - Source: 'tests/src/no_nested_borrows.rs', lines 35:0-35:13 *) + Source: 'tests/src/no_nested_borrows.rs', lines 35:0-38:1 *) Inductive Enum_t := | Enum_Variant1 : Enum_t | Enum_Variant2 : Enum_t. (** [no_nested_borrows::EmptyStruct] - Source: 'tests/src/no_nested_borrows.rs', lines 42:0-42:22 *) + Source: 'tests/src/no_nested_borrows.rs', lines 42:0-42:25 *) Definition EmptyStruct_t : Type := unit. (** [no_nested_borrows::Sum] - Source: 'tests/src/no_nested_borrows.rs', lines 44:0-44:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 44:0-47:1 *) Inductive Sum_t (T1 T2 : Type) := | Sum_Left : T1 -> Sum_t T1 T2 | Sum_Right : T2 -> Sum_t T1 T2 @@ -55,22 +55,22 @@ Arguments Sum_Left { _ _ }. Arguments Sum_Right { _ _ }. (** [no_nested_borrows::cast_u32_to_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 49:0-49:37 *) + Source: 'tests/src/no_nested_borrows.rs', lines 49:0-51:1 *) Definition cast_u32_to_i32 (x : u32) : result i32 := scalar_cast U32 I32 x. (** [no_nested_borrows::cast_bool_to_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 53:0-53:39 *) + Source: 'tests/src/no_nested_borrows.rs', lines 53:0-55:1 *) Definition cast_bool_to_i32 (x : bool) : result i32 := scalar_cast_bool I32 x. (** [no_nested_borrows::cast_bool_to_bool]: - Source: 'tests/src/no_nested_borrows.rs', lines 58:0-58:41 *) + Source: 'tests/src/no_nested_borrows.rs', lines 58:0-60:1 *) Definition cast_bool_to_bool (x : bool) : result bool := Ok x. (** [no_nested_borrows::test2]: - Source: 'tests/src/no_nested_borrows.rs', lines 63:0-63:14 *) + Source: 'tests/src/no_nested_borrows.rs', lines 63:0-73:1 *) Definition test2 : result unit := _ <- u32_add 23%u32 44%u32; Ok tt. @@ -78,13 +78,13 @@ Definition test2 : result unit := Check (test2)%return. (** [no_nested_borrows::get_max]: - Source: 'tests/src/no_nested_borrows.rs', lines 75:0-75:37 *) + Source: 'tests/src/no_nested_borrows.rs', lines 75:0-81:1 *) Definition get_max (x : u32) (y : u32) : result u32 := if x s>= y then Ok x else Ok y . (** [no_nested_borrows::test3]: - Source: 'tests/src/no_nested_borrows.rs', lines 83:0-83:14 *) + Source: 'tests/src/no_nested_borrows.rs', lines 83:0-88:1 *) Definition test3 : result unit := x <- get_max 4%u32 3%u32; y <- get_max 10%u32 11%u32; @@ -96,7 +96,7 @@ Definition test3 : result unit := Check (test3)%return. (** [no_nested_borrows::test_neg1]: - Source: 'tests/src/no_nested_borrows.rs', lines 90:0-90:18 *) + Source: 'tests/src/no_nested_borrows.rs', lines 90:0-94:1 *) Definition test_neg1 : result unit := y <- i32_neg 3%i32; if y s= (-3)%i32 then Ok tt else Fail_ Failure . @@ -105,7 +105,7 @@ Definition test_neg1 : result unit := Check (test_neg1)%return. (** [no_nested_borrows::refs_test1]: - Source: 'tests/src/no_nested_borrows.rs', lines 97:0-97:19 *) + Source: 'tests/src/no_nested_borrows.rs', lines 97:0-106:1 *) Definition refs_test1 : result unit := if 1%i32 s= 1%i32 then Ok tt else Fail_ Failure . @@ -114,7 +114,7 @@ Definition refs_test1 : result unit := Check (refs_test1)%return. (** [no_nested_borrows::refs_test2]: - Source: 'tests/src/no_nested_borrows.rs', lines 108:0-108:19 *) + Source: 'tests/src/no_nested_borrows.rs', lines 108:0-120:1 *) Definition refs_test2 : result unit := if 2%i32 s= 2%i32 then @@ -131,7 +131,7 @@ Definition refs_test2 : result unit := Check (refs_test2)%return. (** [no_nested_borrows::test_list1]: - Source: 'tests/src/no_nested_borrows.rs', lines 124:0-124:19 *) + Source: 'tests/src/no_nested_borrows.rs', lines 124:0-126:1 *) Definition test_list1 : result unit := Ok tt. @@ -139,7 +139,7 @@ Definition test_list1 : result unit := Check (test_list1)%return. (** [no_nested_borrows::test_box1]: - Source: 'tests/src/no_nested_borrows.rs', lines 129:0-129:18 *) + Source: 'tests/src/no_nested_borrows.rs', lines 129:0-137:1 *) Definition test_box1 : result unit := p <- alloc_boxed_Box_deref_mut i32 0%i32; let (_, deref_mut_back) := p in @@ -152,30 +152,30 @@ Definition test_box1 : result unit := Check (test_box1)%return. (** [no_nested_borrows::copy_int]: - Source: 'tests/src/no_nested_borrows.rs', lines 139:0-139:30 *) + Source: 'tests/src/no_nested_borrows.rs', lines 139:0-141:1 *) Definition copy_int (x : i32) : result i32 := Ok x. (** [no_nested_borrows::test_unreachable]: - Source: 'tests/src/no_nested_borrows.rs', lines 145:0-145:32 *) + Source: 'tests/src/no_nested_borrows.rs', lines 145:0-149:1 *) Definition test_unreachable (b : bool) : result unit := if b then Fail_ Failure else Ok tt . (** [no_nested_borrows::test_panic]: - Source: 'tests/src/no_nested_borrows.rs', lines 152:0-152:26 *) + Source: 'tests/src/no_nested_borrows.rs', lines 152:0-156:1 *) Definition test_panic (b : bool) : result unit := if b then Fail_ Failure else Ok tt . (** [no_nested_borrows::test_panic_msg]: - Source: 'tests/src/no_nested_borrows.rs', lines 160:0-160:30 *) + Source: 'tests/src/no_nested_borrows.rs', lines 160:0-164:1 *) Definition test_panic_msg (b : bool) : result unit := if b then Fail_ Failure else Ok tt . (** [no_nested_borrows::test_copy_int]: - Source: 'tests/src/no_nested_borrows.rs', lines 167:0-167:22 *) + Source: 'tests/src/no_nested_borrows.rs', lines 167:0-172:1 *) Definition test_copy_int : result unit := y <- copy_int 0%i32; if 0%i32 s= y then Ok tt else Fail_ Failure . @@ -184,13 +184,13 @@ Definition test_copy_int : result unit := Check (test_copy_int)%return. (** [no_nested_borrows::is_cons]: - Source: 'tests/src/no_nested_borrows.rs', lines 174:0-174:38 *) + Source: 'tests/src/no_nested_borrows.rs', lines 174:0-179:1 *) Definition is_cons (T : Type) (l : List_t T) : result bool := match l with | List_Cons _ _ => Ok true | List_Nil => Ok false end . (** [no_nested_borrows::test_is_cons]: - Source: 'tests/src/no_nested_borrows.rs', lines 181:0-181:21 *) + Source: 'tests/src/no_nested_borrows.rs', lines 181:0-185:1 *) Definition test_is_cons : result unit := b <- is_cons i32 (List_Cons 0%i32 List_Nil); if b then Ok tt else Fail_ Failure @@ -200,13 +200,13 @@ Definition test_is_cons : result unit := Check (test_is_cons)%return. (** [no_nested_borrows::split_list]: - Source: 'tests/src/no_nested_borrows.rs', lines 187:0-187:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 187:0-192:1 *) Definition split_list (T : Type) (l : List_t T) : result (T * (List_t T)) := match l with | List_Cons hd tl => Ok (hd, tl) | List_Nil => Fail_ Failure end . (** [no_nested_borrows::test_split_list]: - Source: 'tests/src/no_nested_borrows.rs', lines 195:0-195:24 *) + Source: 'tests/src/no_nested_borrows.rs', lines 195:0-200:1 *) Definition test_split_list : result unit := p <- split_list i32 (List_Cons 0%i32 List_Nil); let (hd, _) := p in @@ -217,7 +217,7 @@ Definition test_split_list : result unit := Check (test_split_list)%return. (** [no_nested_borrows::choose]: - Source: 'tests/src/no_nested_borrows.rs', lines 202:0-202:70 *) + Source: 'tests/src/no_nested_borrows.rs', lines 202:0-208:1 *) Definition choose (T : Type) (b : bool) (x : T) (y : T) : result (T * (T -> result (T * T))) := if b @@ -226,7 +226,7 @@ Definition choose . (** [no_nested_borrows::choose_test]: - Source: 'tests/src/no_nested_borrows.rs', lines 210:0-210:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 210:0-219:1 *) Definition choose_test : result unit := p <- choose i32 true 0%i32 0%i32; let (z, choose_back) := p in @@ -245,23 +245,23 @@ Definition choose_test : result unit := Check (choose_test)%return. (** [no_nested_borrows::test_char]: - Source: 'tests/src/no_nested_borrows.rs', lines 222:0-222:26 *) + Source: 'tests/src/no_nested_borrows.rs', lines 222:0-224:1 *) Definition test_char : result char := Ok (char_of_byte Coq.Init.Byte.x61). (** [no_nested_borrows::panic_mut_borrow]: - Source: 'tests/src/no_nested_borrows.rs', lines 227:0-227:36 *) + Source: 'tests/src/no_nested_borrows.rs', lines 227:0-229:1 *) Definition panic_mut_borrow (i : u32) : result u32 := Fail_ Failure. (** [no_nested_borrows::Tree] - Source: 'tests/src/no_nested_borrows.rs', lines 232:0-232:16 *) + Source: 'tests/src/no_nested_borrows.rs', lines 232:0-235:1 *) Inductive Tree_t (T : Type) := | Tree_Leaf : T -> Tree_t T | Tree_Node : T -> NodeElem_t T -> Tree_t T -> Tree_t T (** [no_nested_borrows::NodeElem] - Source: 'tests/src/no_nested_borrows.rs', lines 237:0-237:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 237:0-240:1 *) with NodeElem_t (T : Type) := | NodeElem_Cons : Tree_t T -> NodeElem_t T -> NodeElem_t T | NodeElem_Nil : NodeElem_t T @@ -274,7 +274,7 @@ Arguments NodeElem_Cons { _ }. Arguments NodeElem_Nil { _ }. (** [no_nested_borrows::list_length]: - Source: 'tests/src/no_nested_borrows.rs', lines 272:0-272:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 272:0-277:1 *) Fixpoint list_length (T : Type) (l : List_t T) : result u32 := match l with | List_Cons _ l1 => i <- list_length T l1; u32_add 1%u32 i @@ -283,7 +283,7 @@ Fixpoint list_length (T : Type) (l : List_t T) : result u32 := . (** [no_nested_borrows::list_nth_shared]: - Source: 'tests/src/no_nested_borrows.rs', lines 280:0-280:62 *) + Source: 'tests/src/no_nested_borrows.rs', lines 280:0-293:1 *) Fixpoint list_nth_shared (T : Type) (l : List_t T) (i : u32) : result T := match l with | List_Cons x tl => @@ -295,7 +295,7 @@ Fixpoint list_nth_shared (T : Type) (l : List_t T) (i : u32) : result T := . (** [no_nested_borrows::list_nth_mut]: - Source: 'tests/src/no_nested_borrows.rs', lines 296:0-296:67 *) + Source: 'tests/src/no_nested_borrows.rs', lines 296:0-309:1 *) Fixpoint list_nth_mut (T : Type) (l : List_t T) (i : u32) : result (T * (T -> result (List_t T))) @@ -316,7 +316,7 @@ Fixpoint list_nth_mut . (** [no_nested_borrows::list_rev_aux]: - Source: 'tests/src/no_nested_borrows.rs', lines 312:0-312:63 *) + Source: 'tests/src/no_nested_borrows.rs', lines 312:0-322:1 *) Fixpoint list_rev_aux (T : Type) (li : List_t T) (lo : List_t T) : result (List_t T) := match li with @@ -326,14 +326,14 @@ Fixpoint list_rev_aux . (** [no_nested_borrows::list_rev]: - Source: 'tests/src/no_nested_borrows.rs', lines 326:0-326:42 *) + Source: 'tests/src/no_nested_borrows.rs', lines 326:0-329:1 *) Definition list_rev (T : Type) (l : List_t T) : result (List_t T) := let (li, _) := core_mem_replace (List_t T) l List_Nil in list_rev_aux T li List_Nil . (** [no_nested_borrows::test_list_functions]: - Source: 'tests/src/no_nested_borrows.rs', lines 331:0-331:28 *) + Source: 'tests/src/no_nested_borrows.rs', lines 331:0-345:1 *) Definition test_list_functions : result unit := let l := List_Cons 2%i32 List_Nil in let l1 := List_Cons 1%i32 l in @@ -372,7 +372,7 @@ Definition test_list_functions : result unit := Check (test_list_functions)%return. (** [no_nested_borrows::id_mut_pair1]: - Source: 'tests/src/no_nested_borrows.rs', lines 347:0-347:89 *) + Source: 'tests/src/no_nested_borrows.rs', lines 347:0-349:1 *) Definition id_mut_pair1 (T1 T2 : Type) (x : T1) (y : T2) : result ((T1 * T2) * ((T1 * T2) -> result (T1 * T2))) @@ -381,7 +381,7 @@ Definition id_mut_pair1 . (** [no_nested_borrows::id_mut_pair2]: - Source: 'tests/src/no_nested_borrows.rs', lines 351:0-351:88 *) + Source: 'tests/src/no_nested_borrows.rs', lines 351:0-353:1 *) Definition id_mut_pair2 (T1 T2 : Type) (p : (T1 * T2)) : result ((T1 * T2) * ((T1 * T2) -> result (T1 * T2))) @@ -390,7 +390,7 @@ Definition id_mut_pair2 . (** [no_nested_borrows::id_mut_pair3]: - Source: 'tests/src/no_nested_borrows.rs', lines 355:0-355:93 *) + Source: 'tests/src/no_nested_borrows.rs', lines 355:0-357:1 *) Definition id_mut_pair3 (T1 T2 : Type) (x : T1) (y : T2) : result ((T1 * T2) * (T1 -> result T1) * (T2 -> result T2)) @@ -399,7 +399,7 @@ Definition id_mut_pair3 . (** [no_nested_borrows::id_mut_pair4]: - Source: 'tests/src/no_nested_borrows.rs', lines 359:0-359:92 *) + Source: 'tests/src/no_nested_borrows.rs', lines 359:0-361:1 *) Definition id_mut_pair4 (T1 T2 : Type) (p : (T1 * T2)) : result ((T1 * T2) * (T1 -> result T1) * (T2 -> result T2)) @@ -408,7 +408,7 @@ Definition id_mut_pair4 . (** [no_nested_borrows::StructWithTuple] - Source: 'tests/src/no_nested_borrows.rs', lines 366:0-366:34 *) + Source: 'tests/src/no_nested_borrows.rs', lines 366:0-368:1 *) Record StructWithTuple_t (T1 T2 : Type) := mkStructWithTuple_t { structWithTuple_p : (T1 * T2); @@ -419,25 +419,25 @@ Arguments mkStructWithTuple_t { _ _ }. Arguments structWithTuple_p { _ _ }. (** [no_nested_borrows::new_tuple1]: - Source: 'tests/src/no_nested_borrows.rs', lines 370:0-370:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 370:0-372:1 *) Definition new_tuple1 : result (StructWithTuple_t u32 u32) := Ok {| structWithTuple_p := (1%u32, 2%u32) |} . (** [no_nested_borrows::new_tuple2]: - Source: 'tests/src/no_nested_borrows.rs', lines 374:0-374:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 374:0-376:1 *) Definition new_tuple2 : result (StructWithTuple_t i16 i16) := Ok {| structWithTuple_p := (1%i16, 2%i16) |} . (** [no_nested_borrows::new_tuple3]: - Source: 'tests/src/no_nested_borrows.rs', lines 378:0-378:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 378:0-380:1 *) Definition new_tuple3 : result (StructWithTuple_t u64 i64) := Ok {| structWithTuple_p := (1%u64, 2%i64) |} . (** [no_nested_borrows::StructWithPair] - Source: 'tests/src/no_nested_borrows.rs', lines 383:0-383:33 *) + Source: 'tests/src/no_nested_borrows.rs', lines 383:0-385:1 *) Record StructWithPair_t (T1 T2 : Type) := mkStructWithPair_t { structWithPair_p : Pair_t T1 T2; @@ -448,13 +448,13 @@ Arguments mkStructWithPair_t { _ _ }. Arguments structWithPair_p { _ _ }. (** [no_nested_borrows::new_pair1]: - Source: 'tests/src/no_nested_borrows.rs', lines 387:0-387:46 *) + Source: 'tests/src/no_nested_borrows.rs', lines 387:0-393:1 *) Definition new_pair1 : result (StructWithPair_t u32 u32) := Ok {| structWithPair_p := {| pair_x := 1%u32; pair_y := 2%u32 |} |} . (** [no_nested_borrows::test_constants]: - Source: 'tests/src/no_nested_borrows.rs', lines 395:0-395:23 *) + Source: 'tests/src/no_nested_borrows.rs', lines 395:0-400:1 *) Definition test_constants : result unit := swt <- new_tuple1; let (i, _) := swt.(structWithTuple_p) in @@ -481,7 +481,7 @@ Definition test_constants : result unit := Check (test_constants)%return. (** [no_nested_borrows::test_weird_borrows1]: - Source: 'tests/src/no_nested_borrows.rs', lines 404:0-404:28 *) + Source: 'tests/src/no_nested_borrows.rs', lines 404:0-412:1 *) Definition test_weird_borrows1 : result unit := Ok tt. @@ -489,112 +489,112 @@ Definition test_weird_borrows1 : result unit := Check (test_weird_borrows1)%return. (** [no_nested_borrows::test_mem_replace]: - Source: 'tests/src/no_nested_borrows.rs', lines 414:0-414:37 *) + Source: 'tests/src/no_nested_borrows.rs', lines 414:0-418:1 *) Definition test_mem_replace (px : u32) : result u32 := let (y, _) := core_mem_replace u32 px 1%u32 in if y s= 0%u32 then Ok 2%u32 else Fail_ Failure . (** [no_nested_borrows::test_shared_borrow_bool1]: - Source: 'tests/src/no_nested_borrows.rs', lines 421:0-421:47 *) + Source: 'tests/src/no_nested_borrows.rs', lines 421:0-430:1 *) Definition test_shared_borrow_bool1 (b : bool) : result u32 := if b then Ok 0%u32 else Ok 1%u32 . (** [no_nested_borrows::test_shared_borrow_bool2]: - Source: 'tests/src/no_nested_borrows.rs', lines 434:0-434:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 434:0-444:1 *) Definition test_shared_borrow_bool2 : result u32 := Ok 0%u32. (** [no_nested_borrows::test_shared_borrow_enum1]: - Source: 'tests/src/no_nested_borrows.rs', lines 449:0-449:52 *) + Source: 'tests/src/no_nested_borrows.rs', lines 449:0-457:1 *) Definition test_shared_borrow_enum1 (l : List_t u32) : result u32 := match l with | List_Cons _ _ => Ok 1%u32 | List_Nil => Ok 0%u32 end . (** [no_nested_borrows::test_shared_borrow_enum2]: - Source: 'tests/src/no_nested_borrows.rs', lines 461:0-461:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 461:0-470:1 *) Definition test_shared_borrow_enum2 : result u32 := Ok 0%u32. (** [no_nested_borrows::incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 472:0-472:24 *) + Source: 'tests/src/no_nested_borrows.rs', lines 472:0-474:1 *) Definition incr (x : u32) : result u32 := u32_add x 1%u32. (** [no_nested_borrows::call_incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 476:0-476:35 *) + Source: 'tests/src/no_nested_borrows.rs', lines 476:0-479:1 *) Definition call_incr (x : u32) : result u32 := incr x. (** [no_nested_borrows::read_then_incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 481:0-481:41 *) + Source: 'tests/src/no_nested_borrows.rs', lines 481:0-485:1 *) Definition read_then_incr (x : u32) : result (u32 * u32) := x1 <- u32_add x 1%u32; Ok (x, x1) . (** [no_nested_borrows::Tuple] - Source: 'tests/src/no_nested_borrows.rs', lines 487:0-487:24 *) + Source: 'tests/src/no_nested_borrows.rs', lines 487:0-487:33 *) Definition Tuple_t (T1 T2 : Type) : Type := T1 * T2. (** [no_nested_borrows::read_tuple]: - Source: 'tests/src/no_nested_borrows.rs', lines 489:0-489:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 489:0-491:1 *) Definition read_tuple (x : (u32 * u32)) : result u32 := let (i, _) := x in Ok i . (** [no_nested_borrows::update_tuple]: - Source: 'tests/src/no_nested_borrows.rs', lines 493:0-493:39 *) + Source: 'tests/src/no_nested_borrows.rs', lines 493:0-495:1 *) Definition update_tuple (x : (u32 * u32)) : result (u32 * u32) := let (_, i) := x in Ok (1%u32, i) . (** [no_nested_borrows::read_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 497:0-497:52 *) + Source: 'tests/src/no_nested_borrows.rs', lines 497:0-499:1 *) Definition read_tuple_struct (x : Tuple_t u32 u32) : result u32 := let (i, _) := x in Ok i . (** [no_nested_borrows::update_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 501:0-501:51 *) + Source: 'tests/src/no_nested_borrows.rs', lines 501:0-503:1 *) Definition update_tuple_struct (x : Tuple_t u32 u32) : result (Tuple_t u32 u32) := let (_, i) := x in Ok (1%u32, i) . (** [no_nested_borrows::create_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 505:0-505:61 *) + Source: 'tests/src/no_nested_borrows.rs', lines 505:0-507:1 *) Definition create_tuple_struct (x : u32) (y : u64) : result (Tuple_t u32 u64) := Ok (x, y) . (** [no_nested_borrows::IdType] - Source: 'tests/src/no_nested_borrows.rs', lines 510:0-510:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 510:0-510:24 *) Definition IdType_t (T : Type) : Type := T. (** [no_nested_borrows::use_id_type]: - Source: 'tests/src/no_nested_borrows.rs', lines 512:0-512:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 512:0-514:1 *) Definition use_id_type (T : Type) (x : IdType_t T) : result T := Ok x. (** [no_nested_borrows::create_id_type]: - Source: 'tests/src/no_nested_borrows.rs', lines 516:0-516:43 *) + Source: 'tests/src/no_nested_borrows.rs', lines 516:0-518:1 *) Definition create_id_type (T : Type) (x : T) : result (IdType_t T) := Ok x. (** [no_nested_borrows::not_bool]: - Source: 'tests/src/no_nested_borrows.rs', lines 520:0-520:32 *) + Source: 'tests/src/no_nested_borrows.rs', lines 520:0-522:1 *) Definition not_bool (x : bool) : result bool := Ok (negb x). (** [no_nested_borrows::not_u32]: - Source: 'tests/src/no_nested_borrows.rs', lines 524:0-524:29 *) + Source: 'tests/src/no_nested_borrows.rs', lines 524:0-526:1 *) Definition not_u32 (x : u32) : result u32 := Ok (scalar_not x). (** [no_nested_borrows::not_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 528:0-528:29 *) + Source: 'tests/src/no_nested_borrows.rs', lines 528:0-530:1 *) Definition not_i32 (x : i32) : result i32 := Ok (scalar_not x). diff --git a/tests/coq/misc/Paper.v b/tests/coq/misc/Paper.v index 58684112d..22377b6ec 100644 --- a/tests/coq/misc/Paper.v +++ b/tests/coq/misc/Paper.v @@ -9,12 +9,12 @@ Local Open Scope Primitives_scope. Module Paper. (** [paper::ref_incr]: - Source: 'tests/src/paper.rs', lines 7:0-7:28 *) + Source: 'tests/src/paper.rs', lines 7:0-9:1 *) Definition ref_incr (x : i32) : result i32 := i32_add x 1%i32. (** [paper::test_incr]: - Source: 'tests/src/paper.rs', lines 11:0-11:18 *) + Source: 'tests/src/paper.rs', lines 11:0-15:1 *) Definition test_incr : result unit := x <- ref_incr 0%i32; if x s= 1%i32 then Ok tt else Fail_ Failure . @@ -23,7 +23,7 @@ Definition test_incr : result unit := Check (test_incr)%return. (** [paper::choose]: - Source: 'tests/src/paper.rs', lines 18:0-18:70 *) + Source: 'tests/src/paper.rs', lines 18:0-24:1 *) Definition choose (T : Type) (b : bool) (x : T) (y : T) : result (T * (T -> result (T * T))) := if b @@ -32,7 +32,7 @@ Definition choose . (** [paper::test_choose]: - Source: 'tests/src/paper.rs', lines 26:0-26:20 *) + Source: 'tests/src/paper.rs', lines 26:0-34:1 *) Definition test_choose : result unit := p <- choose i32 true 0%i32 0%i32; let (z, choose_back) := p in @@ -51,7 +51,7 @@ Definition test_choose : result unit := Check (test_choose)%return. (** [paper::List] - Source: 'tests/src/paper.rs', lines 38:0-38:16 *) + Source: 'tests/src/paper.rs', lines 38:0-41:1 *) Inductive List_t (T : Type) := | List_Cons : T -> List_t T -> List_t T | List_Nil : List_t T @@ -61,7 +61,7 @@ Arguments List_Cons { _ }. Arguments List_Nil { _ }. (** [paper::list_nth_mut]: - Source: 'tests/src/paper.rs', lines 45:0-45:67 *) + Source: 'tests/src/paper.rs', lines 45:0-58:1 *) Fixpoint list_nth_mut (T : Type) (l : List_t T) (i : u32) : result (T * (T -> result (List_t T))) @@ -82,7 +82,7 @@ Fixpoint list_nth_mut . (** [paper::sum]: - Source: 'tests/src/paper.rs', lines 60:0-60:32 *) + Source: 'tests/src/paper.rs', lines 60:0-69:1 *) Fixpoint sum (l : List_t i32) : result i32 := match l with | List_Cons x tl => i <- sum tl; i32_add x i @@ -91,7 +91,7 @@ Fixpoint sum (l : List_t i32) : result i32 := . (** [paper::test_nth]: - Source: 'tests/src/paper.rs', lines 71:0-71:17 *) + Source: 'tests/src/paper.rs', lines 71:0-76:1 *) Definition test_nth : result unit := let l := List_Cons 3%i32 List_Nil in let l1 := List_Cons 2%i32 l in @@ -107,7 +107,7 @@ Definition test_nth : result unit := Check (test_nth)%return. (** [paper::call_choose]: - Source: 'tests/src/paper.rs', lines 79:0-79:44 *) + Source: 'tests/src/paper.rs', lines 79:0-85:1 *) Definition call_choose (p : (u32 * u32)) : result u32 := let (px, py) := p in p1 <- choose u32 true px py; diff --git a/tests/coq/misc/PoloniusList.v b/tests/coq/misc/PoloniusList.v index a600deaae..e9e319557 100644 --- a/tests/coq/misc/PoloniusList.v +++ b/tests/coq/misc/PoloniusList.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module PoloniusList. (** [polonius_list::List] - Source: 'tests/src/polonius_list.rs', lines 6:0-6:16 *) + Source: 'tests/src/polonius_list.rs', lines 6:0-9:1 *) Inductive List_t (T : Type) := | List_Cons : T -> List_t T -> List_t T | List_Nil : List_t T @@ -19,7 +19,7 @@ Arguments List_Cons { _ }. Arguments List_Nil { _ }. (** [polonius_list::get_list_at_x]: - Source: 'tests/src/polonius_list.rs', lines 16:0-16:76 *) + Source: 'tests/src/polonius_list.rs', lines 16:0-30:1 *) Fixpoint get_list_at_x (ls : List_t u32) (x : u32) : result ((List_t u32) * (List_t u32 -> result (List_t u32))) diff --git a/tests/coq/rename_attribute/RenameAttribute.v b/tests/coq/rename_attribute/RenameAttribute.v index 5b565395a..4debd40a8 100644 --- a/tests/coq/rename_attribute/RenameAttribute.v +++ b/tests/coq/rename_attribute/RenameAttribute.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module RenameAttribute. (** Trait declaration: [rename_attribute::BoolTrait] - Source: 'tests/src/rename_attribute.rs', lines 8:0-8:19 *) + Source: 'tests/src/rename_attribute.rs', lines 8:0-18:1 *) Record BoolTest_t (Self : Type) := mkBoolTest_t { BoolTest_t_getTest : Self -> result bool; }. @@ -18,32 +18,32 @@ Arguments mkBoolTest_t { _ }. Arguments BoolTest_t_getTest { _ }. (** [rename_attribute::{rename_attribute::BoolTrait for bool}::get_bool]: - Source: 'tests/src/rename_attribute.rs', lines 22:4-22:30 *) + Source: 'tests/src/rename_attribute.rs', lines 22:4-24:5 *) Definition boolTraitBool_getTest (self : bool) : result bool := Ok self. (** Trait implementation: [rename_attribute::{rename_attribute::BoolTrait for bool}] - Source: 'tests/src/rename_attribute.rs', lines 21:0-21:23 *) + Source: 'tests/src/rename_attribute.rs', lines 21:0-25:1 *) Definition BoolImpl : BoolTest_t bool := {| BoolTest_t_getTest := boolTraitBool_getTest; |}. (** [rename_attribute::BoolTrait::ret_true]: - Source: 'tests/src/rename_attribute.rs', lines 15:4-15:30 *) + Source: 'tests/src/rename_attribute.rs', lines 15:4-17:5 *) Definition boolTrait_retTest {Self : Type} (self_clause : BoolTest_t Self) (self : Self) : result bool := Ok true . (** [rename_attribute::test_bool_trait]: - Source: 'tests/src/rename_attribute.rs', lines 28:0-28:42 *) + Source: 'tests/src/rename_attribute.rs', lines 28:0-30:1 *) Definition boolFn (T : Type) (x : bool) : result bool := b <- boolTraitBool_getTest x; if b then boolTrait_retTest BoolImpl x else Ok false . (** [rename_attribute::SimpleEnum] - Source: 'tests/src/rename_attribute.rs', lines 36:0-36:15 *) + Source: 'tests/src/rename_attribute.rs', lines 36:0-41:1 *) Inductive VariantsTest_t := | VariantsTest_Variant1 : VariantsTest_t | VariantsTest_SecondVariant : VariantsTest_t @@ -51,23 +51,23 @@ Inductive VariantsTest_t := . (** [rename_attribute::Foo] - Source: 'tests/src/rename_attribute.rs', lines 44:0-44:10 *) + Source: 'tests/src/rename_attribute.rs', lines 44:0-47:1 *) Record StructTest_t := mkStructTest_t { structTest_FieldTest : u32; }. (** [rename_attribute::C] - Source: 'tests/src/rename_attribute.rs', lines 50:0-50:12 *) + Source: 'tests/src/rename_attribute.rs', lines 50:0-50:28 *) Definition const_test_body : result u32 := i <- u32_add 100%u32 10%u32; u32_add i 1%u32 . Definition const_test : u32 := const_test_body%global. (** [rename_attribute::CA] - Source: 'tests/src/rename_attribute.rs', lines 53:0-53:13 *) + Source: 'tests/src/rename_attribute.rs', lines 53:0-53:23 *) Definition const_aeneas11_body : result u32 := u32_add 10%u32 1%u32. Definition const_aeneas11 : u32 := const_aeneas11_body%global. (** [rename_attribute::factorial]: - Source: 'tests/src/rename_attribute.rs', lines 56:0-56:27 *) + Source: 'tests/src/rename_attribute.rs', lines 56:0-62:1 *) Fixpoint factfn (n : nat) (n1 : u64) : result u64 := match n with | O => Fail_ OutOfFuel @@ -95,7 +95,7 @@ Fixpoint no_borrows_sum_loop . (** [rename_attribute::sum]: - Source: 'tests/src/rename_attribute.rs', lines 65:0-65:27 *) + Source: 'tests/src/rename_attribute.rs', lines 65:0-75:1 *) Definition no_borrows_sum (n : nat) (max : u32) : result u32 := no_borrows_sum_loop n max 0%u32 0%u32 . diff --git a/tests/coq/traits/Traits.v b/tests/coq/traits/Traits.v index 706c2a86b..638e55062 100644 --- a/tests/coq/traits/Traits.v +++ b/tests/coq/traits/Traits.v @@ -9,7 +9,7 @@ Local Open Scope Primitives_scope. Module Traits. (** Trait declaration: [traits::BoolTrait] - Source: 'tests/src/traits.rs', lines 2:0-2:19 *) + Source: 'tests/src/traits.rs', lines 2:0-10:1 *) Record BoolTrait_t (Self : Type) := mkBoolTrait_t { BoolTrait_t_get_bool : Self -> result bool; }. @@ -18,59 +18,59 @@ Arguments mkBoolTrait_t { _ }. Arguments BoolTrait_t_get_bool { _ }. (** [traits::{traits::BoolTrait for bool}::get_bool]: - Source: 'tests/src/traits.rs', lines 13:4-13:30 *) + Source: 'tests/src/traits.rs', lines 13:4-15:5 *) Definition boolTraitBool_get_bool (self : bool) : result bool := Ok self. (** Trait implementation: [traits::{traits::BoolTrait for bool}] - Source: 'tests/src/traits.rs', lines 12:0-12:23 *) + Source: 'tests/src/traits.rs', lines 12:0-16:1 *) Definition BoolTraitBool : BoolTrait_t bool := {| BoolTrait_t_get_bool := boolTraitBool_get_bool; |}. (** [traits::BoolTrait::ret_true]: - Source: 'tests/src/traits.rs', lines 7:4-7:30 *) + Source: 'tests/src/traits.rs', lines 7:4-9:5 *) Definition boolTrait_ret_true {Self : Type} (self_clause : BoolTrait_t Self) (self : Self) : result bool := Ok true . (** [traits::test_bool_trait_bool]: - Source: 'tests/src/traits.rs', lines 18:0-18:44 *) + Source: 'tests/src/traits.rs', lines 18:0-20:1 *) Definition test_bool_trait_bool (x : bool) : result bool := b <- boolTraitBool_get_bool x; if b then boolTrait_ret_true BoolTraitBool x else Ok false . (** [traits::{traits::BoolTrait for core::option::Option}#1::get_bool]: - Source: 'tests/src/traits.rs', lines 24:4-24:30 *) + Source: 'tests/src/traits.rs', lines 24:4-29:5 *) Definition boolTraitOption_get_bool (T : Type) (self : option T) : result bool := match self with | None => Ok false | Some _ => Ok true end . (** Trait implementation: [traits::{traits::BoolTrait for core::option::Option}#1] - Source: 'tests/src/traits.rs', lines 23:0-23:31 *) + Source: 'tests/src/traits.rs', lines 23:0-30:1 *) Definition BoolTraitOption (T : Type) : BoolTrait_t (option T) := {| BoolTrait_t_get_bool := boolTraitOption_get_bool T; |}. (** [traits::test_bool_trait_option]: - Source: 'tests/src/traits.rs', lines 32:0-32:54 *) + Source: 'tests/src/traits.rs', lines 32:0-34:1 *) Definition test_bool_trait_option (T : Type) (x : option T) : result bool := b <- boolTraitOption_get_bool T x; if b then boolTrait_ret_true (BoolTraitOption T) x else Ok false . (** [traits::test_bool_trait]: - Source: 'tests/src/traits.rs', lines 36:0-36:50 *) + Source: 'tests/src/traits.rs', lines 36:0-38:1 *) Definition test_bool_trait (T : Type) (boolTraitInst : BoolTrait_t T) (x : T) : result bool := boolTraitInst.(BoolTrait_t_get_bool) x . (** Trait declaration: [traits::ToU64] - Source: 'tests/src/traits.rs', lines 40:0-40:15 *) + Source: 'tests/src/traits.rs', lines 40:0-42:1 *) Record ToU64_t (Self : Type) := mkToU64_t { ToU64_t_to_u64 : Self -> result u64; }. @@ -79,16 +79,16 @@ Arguments mkToU64_t { _ }. Arguments ToU64_t_to_u64 { _ }. (** [traits::{traits::ToU64 for u64}#2::to_u64]: - Source: 'tests/src/traits.rs', lines 45:4-45:26 *) + Source: 'tests/src/traits.rs', lines 45:4-47:5 *) Definition toU64U64_to_u64 (self : u64) : result u64 := Ok self. (** Trait implementation: [traits::{traits::ToU64 for u64}#2] - Source: 'tests/src/traits.rs', lines 44:0-44:18 *) + Source: 'tests/src/traits.rs', lines 44:0-48:1 *) Definition ToU64U64 : ToU64_t u64 := {| ToU64_t_to_u64 := toU64U64_to_u64; |}. (** [traits::{traits::ToU64 for (A, A)}#3::to_u64]: - Source: 'tests/src/traits.rs', lines 51:4-51:26 *) + Source: 'tests/src/traits.rs', lines 51:4-53:5 *) Definition toU64Pair_to_u64 (A : Type) (toU64Inst : ToU64_t A) (self : (A * A)) : result u64 := let (t, t1) := self in @@ -98,65 +98,65 @@ Definition toU64Pair_to_u64 . (** Trait implementation: [traits::{traits::ToU64 for (A, A)}#3] - Source: 'tests/src/traits.rs', lines 50:0-50:31 *) + Source: 'tests/src/traits.rs', lines 50:0-54:1 *) Definition ToU64Pair (A : Type) (toU64Inst : ToU64_t A) : ToU64_t (A * A) := {| ToU64_t_to_u64 := toU64Pair_to_u64 A toU64Inst; |}. (** [traits::f]: - Source: 'tests/src/traits.rs', lines 56:0-56:36 *) + Source: 'tests/src/traits.rs', lines 56:0-58:1 *) Definition f (T : Type) (toU64Inst : ToU64_t T) (x : (T * T)) : result u64 := toU64Pair_to_u64 T toU64Inst x . (** [traits::g]: - Source: 'tests/src/traits.rs', lines 60:0-62:18 *) + Source: 'tests/src/traits.rs', lines 60:0-65:1 *) Definition g (T : Type) (toU64PairInst : ToU64_t (T * T)) (x : (T * T)) : result u64 := toU64PairInst.(ToU64_t_to_u64) x . (** [traits::h0]: - Source: 'tests/src/traits.rs', lines 67:0-67:24 *) + Source: 'tests/src/traits.rs', lines 67:0-69:1 *) Definition h0 (x : u64) : result u64 := toU64U64_to_u64 x. (** [traits::Wrapper] - Source: 'tests/src/traits.rs', lines 71:0-71:21 *) + Source: 'tests/src/traits.rs', lines 71:0-73:1 *) Record Wrapper_t (T : Type) := mkWrapper_t { wrapper_x : T; }. Arguments mkWrapper_t { _ }. Arguments wrapper_x { _ }. (** [traits::{traits::ToU64 for traits::Wrapper}#4::to_u64]: - Source: 'tests/src/traits.rs', lines 76:4-76:26 *) + Source: 'tests/src/traits.rs', lines 76:4-78:5 *) Definition toU64traitsWrapper_to_u64 (T : Type) (toU64Inst : ToU64_t T) (self : Wrapper_t T) : result u64 := toU64Inst.(ToU64_t_to_u64) self.(wrapper_x) . (** Trait implementation: [traits::{traits::ToU64 for traits::Wrapper}#4] - Source: 'tests/src/traits.rs', lines 75:0-75:35 *) + Source: 'tests/src/traits.rs', lines 75:0-79:1 *) Definition ToU64traitsWrapper (T : Type) (toU64Inst : ToU64_t T) : ToU64_t (Wrapper_t T) := {| ToU64_t_to_u64 := toU64traitsWrapper_to_u64 T toU64Inst; |}. (** [traits::h1]: - Source: 'tests/src/traits.rs', lines 81:0-81:33 *) + Source: 'tests/src/traits.rs', lines 81:0-83:1 *) Definition h1 (x : Wrapper_t u64) : result u64 := toU64traitsWrapper_to_u64 u64 ToU64U64 x . (** [traits::h2]: - Source: 'tests/src/traits.rs', lines 85:0-85:41 *) + Source: 'tests/src/traits.rs', lines 85:0-87:1 *) Definition h2 (T : Type) (toU64Inst : ToU64_t T) (x : Wrapper_t T) : result u64 := toU64traitsWrapper_to_u64 T toU64Inst x . (** Trait declaration: [traits::ToType] - Source: 'tests/src/traits.rs', lines 89:0-89:19 *) + Source: 'tests/src/traits.rs', lines 89:0-91:1 *) Record ToType_t (Self T : Type) := mkToType_t { ToType_t_to_type : Self -> result T; }. @@ -165,19 +165,19 @@ Arguments mkToType_t { _ _ }. Arguments ToType_t_to_type { _ _ }. (** [traits::{traits::ToType for u64}#5::to_type]: - Source: 'tests/src/traits.rs', lines 94:4-94:28 *) + Source: 'tests/src/traits.rs', lines 94:4-96:5 *) Definition toTypeU64Bool_to_type (self : u64) : result bool := Ok (self s> 0%u64) . (** Trait implementation: [traits::{traits::ToType for u64}#5] - Source: 'tests/src/traits.rs', lines 93:0-93:25 *) + Source: 'tests/src/traits.rs', lines 93:0-97:1 *) Definition ToTypeU64Bool : ToType_t u64 bool := {| ToType_t_to_type := toTypeU64Bool_to_type; |}. (** Trait declaration: [traits::OfType] - Source: 'tests/src/traits.rs', lines 99:0-99:16 *) + Source: 'tests/src/traits.rs', lines 99:0-103:1 *) Record OfType_t (Self : Type) := mkOfType_t { OfType_t_of_type : forall (T : Type) (toTypeInst : ToType_t T Self), T -> result Self; @@ -187,7 +187,7 @@ Arguments mkOfType_t { _ }. Arguments OfType_t_of_type { _ }. (** [traits::h3]: - Source: 'tests/src/traits.rs', lines 105:0-105:50 *) + Source: 'tests/src/traits.rs', lines 105:0-107:1 *) Definition h3 (T1 T2 : Type) (ofTypeInst : OfType_t T1) (toTypeInst : ToType_t T2 T1) (y : T2) : @@ -197,7 +197,7 @@ Definition h3 . (** Trait declaration: [traits::OfTypeBis] - Source: 'tests/src/traits.rs', lines 110:0-110:36 *) + Source: 'tests/src/traits.rs', lines 110:0-117:1 *) Record OfTypeBis_t (Self T : Type) := mkOfTypeBis_t { OfTypeBis_tOfTypeBis_t_ToTypeInst : ToType_t T Self; OfTypeBis_t_of_type : T -> result Self; @@ -208,7 +208,7 @@ Arguments OfTypeBis_tOfTypeBis_t_ToTypeInst { _ _ }. Arguments OfTypeBis_t_of_type { _ _ }. (** [traits::h4]: - Source: 'tests/src/traits.rs', lines 119:0-119:57 *) + Source: 'tests/src/traits.rs', lines 119:0-121:1 *) Definition h4 (T1 T2 : Type) (ofTypeBisInst : OfTypeBis_t T1 T2) (toTypeInst : ToType_t T2 T1) (y : T2) : @@ -218,15 +218,15 @@ Definition h4 . (** [traits::TestType] - Source: 'tests/src/traits.rs', lines 123:0-123:22 *) + Source: 'tests/src/traits.rs', lines 123:0-123:26 *) Definition TestType_t (T : Type) : Type := T. (** [traits::{traits::TestType}#6::test::TestType1] - Source: 'tests/src/traits.rs', lines 128:8-128:24 *) + Source: 'tests/src/traits.rs', lines 128:8-128:30 *) Definition TestType_test_TestType1_t : Type := u64. (** Trait declaration: [traits::{traits::TestType}#6::test::TestTrait] - Source: 'tests/src/traits.rs', lines 129:8-129:23 *) + Source: 'tests/src/traits.rs', lines 129:8-131:9 *) Record TestType_test_TestTrait_t (Self : Type) := mkTestType_test_TestTrait_t { TestType_test_TestTrait_t_test : Self -> result bool; }. @@ -235,14 +235,14 @@ Arguments mkTestType_test_TestTrait_t { _ }. Arguments TestType_test_TestTrait_t_test { _ }. (** [traits::{traits::TestType}#6::test::{traits::{traits::TestType}#6::test::TestTrait for traits::{traits::TestType}#6::test::TestType1}::test]: - Source: 'tests/src/traits.rs', lines 140:12-140:34 *) + Source: 'tests/src/traits.rs', lines 140:12-142:13 *) Definition testType_test_TestTraittraitsTestTypetestTestType1_test (self : TestType_test_TestType1_t) : result bool := Ok (self s> 1%u64) . (** Trait implementation: [traits::{traits::TestType}#6::test::{traits::{traits::TestType}#6::test::TestTrait for traits::{traits::TestType}#6::test::TestType1}] - Source: 'tests/src/traits.rs', lines 139:8-139:36 *) + Source: 'tests/src/traits.rs', lines 139:8-143:9 *) Definition TestType_test_TestTraittraitsTestTypetestTestType1 : TestType_test_TestTrait_t TestType_test_TestType1_t := {| TestType_test_TestTrait_t_test := @@ -250,7 +250,7 @@ Definition TestType_test_TestTraittraitsTestTypetestTestType1 : |}. (** [traits::{traits::TestType}#6::test]: - Source: 'tests/src/traits.rs', lines 127:4-127:36 *) + Source: 'tests/src/traits.rs', lines 127:4-148:5 *) Definition testType_test (T : Type) (toU64Inst : ToU64_t T) (self : TestType_t T) (x : T) : result bool @@ -262,11 +262,11 @@ Definition testType_test . (** [traits::BoolWrapper] - Source: 'tests/src/traits.rs', lines 151:0-151:22 *) + Source: 'tests/src/traits.rs', lines 151:0-151:33 *) Definition BoolWrapper_t : Type := bool. (** [traits::{traits::ToType for traits::BoolWrapper}#7::to_type]: - Source: 'tests/src/traits.rs', lines 157:4-157:25 *) + Source: 'tests/src/traits.rs', lines 157:4-159:5 *) Definition toTypetraitsBoolWrapperT_to_type (T : Type) (toTypeBoolTInst : ToType_t bool T) (self : BoolWrapper_t) : result T @@ -275,14 +275,14 @@ Definition toTypetraitsBoolWrapperT_to_type . (** Trait implementation: [traits::{traits::ToType for traits::BoolWrapper}#7] - Source: 'tests/src/traits.rs', lines 153:0-155:20 *) + Source: 'tests/src/traits.rs', lines 153:0-160:1 *) Definition ToTypetraitsBoolWrapperT (T : Type) (toTypeBoolTInst : ToType_t bool T) : ToType_t BoolWrapper_t T := {| ToType_t_to_type := toTypetraitsBoolWrapperT_to_type T toTypeBoolTInst; |}. (** [traits::WithConstTy::LEN2] - Source: 'tests/src/traits.rs', lines 165:4-165:21 *) + Source: 'tests/src/traits.rs', lines 165:4-165:27 *) Definition with_const_ty_len2_default_body (Self : Type) (LEN : usize) : result usize := Ok 32%usize @@ -292,7 +292,7 @@ Definition with_const_ty_len2_default (Self : Type) (LEN : usize) : usize := . (** Trait declaration: [traits::WithConstTy] - Source: 'tests/src/traits.rs', lines 162:0-162:39 *) + Source: 'tests/src/traits.rs', lines 162:0-173:1 *) Record WithConstTy_t (Self : Type) (LEN : usize) := mkWithConstTy_t { WithConstTy_tWithConstTy_t_LEN1 : usize; WithConstTy_tWithConstTy_t_LEN2 : usize; @@ -313,21 +313,21 @@ Arguments WithConstTy_tWithConstTy_t_ToU64traitsWithConstTyWInst { _ _ }. Arguments WithConstTy_t_f { _ _ }. (** [traits::{traits::WithConstTy<32: usize> for bool}#8::LEN1] - Source: 'tests/src/traits.rs', lines 176:4-176:21 *) + Source: 'tests/src/traits.rs', lines 176:4-176:27 *) Definition with_const_ty_bool32_len1_body : result usize := Ok 12%usize. Definition with_const_ty_bool32_len1 : usize := with_const_ty_bool32_len1_body%global . (** [traits::{traits::WithConstTy<32: usize> for bool}#8::f]: - Source: 'tests/src/traits.rs', lines 181:4-181:39 *) + Source: 'tests/src/traits.rs', lines 181:4-181:42 *) Definition withConstTyBool32_f (i : u64) (a : array u8 32%usize) : result u64 := Ok i . (** Trait implementation: [traits::{traits::WithConstTy<32: usize> for bool}#8] - Source: 'tests/src/traits.rs', lines 175:0-175:29 *) + Source: 'tests/src/traits.rs', lines 175:0-182:1 *) Definition WithConstTyBool32 : WithConstTy_t bool 32%usize := {| WithConstTy_tWithConstTy_t_LEN1 := with_const_ty_bool32_len1; WithConstTy_tWithConstTy_t_LEN2 := with_const_ty_len2_default bool 32%usize; @@ -338,7 +338,7 @@ Definition WithConstTyBool32 : WithConstTy_t bool 32%usize := {| |}. (** [traits::use_with_const_ty1]: - Source: 'tests/src/traits.rs', lines 184:0-184:75 *) + Source: 'tests/src/traits.rs', lines 184:0-186:1 *) Definition use_with_const_ty1 (H : Type) (LEN : usize) (withConstTyInst : WithConstTy_t H LEN) : result usize @@ -347,7 +347,7 @@ Definition use_with_const_ty1 . (** [traits::use_with_const_ty2]: - Source: 'tests/src/traits.rs', lines 188:0-188:73 *) + Source: 'tests/src/traits.rs', lines 188:0-188:76 *) Definition use_with_const_ty2 (H : Type) (LEN : usize) (withConstTyInst : WithConstTy_t H LEN) (w : withConstTyInst.(WithConstTy_tWithConstTy_t_W)) : @@ -357,7 +357,7 @@ Definition use_with_const_ty2 . (** [traits::use_with_const_ty3]: - Source: 'tests/src/traits.rs', lines 190:0-190:80 *) + Source: 'tests/src/traits.rs', lines 190:0-192:1 *) Definition use_with_const_ty3 (H : Type) (LEN : usize) (withConstTyInst : WithConstTy_t H LEN) (x : withConstTyInst.(WithConstTy_tWithConstTy_t_W)) : @@ -368,12 +368,12 @@ Definition use_with_const_ty3 . (** [traits::test_where1]: - Source: 'tests/src/traits.rs', lines 194:0-194:40 *) + Source: 'tests/src/traits.rs', lines 194:0-194:43 *) Definition test_where1 (T : Type) (_x : T) : result unit := Ok tt. (** [traits::test_where2]: - Source: 'tests/src/traits.rs', lines 195:0-195:57 *) + Source: 'tests/src/traits.rs', lines 195:0-195:60 *) Definition test_where2 (T : Type) (withConstTyT32Inst : WithConstTy_t T 32%usize) (_x : u32) : result unit @@ -382,7 +382,7 @@ Definition test_where2 . (** Trait declaration: [traits::ParentTrait0] - Source: 'tests/src/traits.rs', lines 201:0-201:22 *) + Source: 'tests/src/traits.rs', lines 201:0-205:1 *) Record ParentTrait0_t (Self : Type) := mkParentTrait0_t { ParentTrait0_tParentTrait0_t_W : Type; ParentTrait0_t_get_name : Self -> result string; @@ -395,13 +395,13 @@ Arguments ParentTrait0_t_get_name { _ }. Arguments ParentTrait0_t_get_w { _ }. (** Trait declaration: [traits::ParentTrait1] - Source: 'tests/src/traits.rs', lines 206:0-206:22 *) + Source: 'tests/src/traits.rs', lines 206:0-206:25 *) Record ParentTrait1_t (Self : Type) := mkParentTrait1_t{}. Arguments mkParentTrait1_t { _ }. (** Trait declaration: [traits::ChildTrait] - Source: 'tests/src/traits.rs', lines 207:0-207:49 *) + Source: 'tests/src/traits.rs', lines 207:0-207:52 *) Record ChildTrait_t (Self : Type) := mkChildTrait_t { ChildTrait_tChildTrait_t_ParentTrait0Inst : ParentTrait0_t Self; ChildTrait_tChildTrait_t_ParentTrait1Inst : ParentTrait1_t Self; @@ -412,7 +412,7 @@ Arguments ChildTrait_tChildTrait_t_ParentTrait0Inst { _ }. Arguments ChildTrait_tChildTrait_t_ParentTrait1Inst { _ }. (** [traits::test_child_trait1]: - Source: 'tests/src/traits.rs', lines 210:0-210:56 *) + Source: 'tests/src/traits.rs', lines 210:0-212:1 *) Definition test_child_trait1 (T : Type) (childTraitInst : ChildTrait_t T) (x : T) : result string := childTraitInst.(ChildTrait_tChildTrait_t_ParentTrait0Inst).(ParentTrait0_t_get_name) @@ -420,7 +420,7 @@ Definition test_child_trait1 . (** [traits::test_child_trait2]: - Source: 'tests/src/traits.rs', lines 214:0-214:54 *) + Source: 'tests/src/traits.rs', lines 214:0-216:1 *) Definition test_child_trait2 (T : Type) (childTraitInst : ChildTrait_t T) (x : T) : result @@ -431,7 +431,7 @@ Definition test_child_trait2 . (** [traits::order1]: - Source: 'tests/src/traits.rs', lines 220:0-220:59 *) + Source: 'tests/src/traits.rs', lines 220:0-220:62 *) Definition order1 (T U : Type) (parentTrait0Inst : ParentTrait0_t T) (parentTrait0Inst1 : ParentTrait0_t U) : @@ -441,7 +441,7 @@ Definition order1 . (** Trait declaration: [traits::ChildTrait1] - Source: 'tests/src/traits.rs', lines 223:0-223:35 *) + Source: 'tests/src/traits.rs', lines 223:0-223:38 *) Record ChildTrait1_t (Self : Type) := mkChildTrait1_t { ChildTrait1_tChildTrait1_t_ParentTrait1Inst : ParentTrait1_t Self; }. @@ -450,17 +450,17 @@ Arguments mkChildTrait1_t { _ }. Arguments ChildTrait1_tChildTrait1_t_ParentTrait1Inst { _ }. (** Trait implementation: [traits::{traits::ParentTrait1 for usize}#9] - Source: 'tests/src/traits.rs', lines 225:0-225:27 *) + Source: 'tests/src/traits.rs', lines 225:0-225:30 *) Definition ParentTrait1Usize : ParentTrait1_t usize := mkParentTrait1_t. (** Trait implementation: [traits::{traits::ChildTrait1 for usize}#10] - Source: 'tests/src/traits.rs', lines 226:0-226:26 *) + Source: 'tests/src/traits.rs', lines 226:0-226:29 *) Definition ChildTrait1Usize : ChildTrait1_t usize := {| ChildTrait1_tChildTrait1_t_ParentTrait1Inst := ParentTrait1Usize; |}. (** Trait declaration: [traits::Iterator] - Source: 'tests/src/traits.rs', lines 230:0-230:18 *) + Source: 'tests/src/traits.rs', lines 230:0-232:1 *) Record Iterator_t (Self : Type) := mkIterator_t { Iterator_tIterator_t_Item : Type; }. @@ -469,7 +469,7 @@ Arguments mkIterator_t { _ }. Arguments Iterator_tIterator_t_Item { _ }. (** Trait declaration: [traits::IntoIterator] - Source: 'tests/src/traits.rs', lines 234:0-234:22 *) + Source: 'tests/src/traits.rs', lines 234:0-240:1 *) Record IntoIterator_t (Self : Type) := mkIntoIterator_t { IntoIterator_tIntoIterator_t_Item : Type; IntoIterator_tIntoIterator_t_IntoIter : Type; @@ -487,13 +487,13 @@ Arguments IntoIterator_tIntoIterator_t_IteratortraitsIntoIteratorIntoIterInst { Arguments IntoIterator_t_into_iter { _ }. (** Trait declaration: [traits::FromResidual] - Source: 'tests/src/traits.rs', lines 251:0-251:21 *) + Source: 'tests/src/traits.rs', lines 251:0-251:24 *) Record FromResidual_t (Self T : Type) := mkFromResidual_t{}. Arguments mkFromResidual_t { _ _ }. (** Trait declaration: [traits::Try] - Source: 'tests/src/traits.rs', lines 247:0-247:48 *) + Source: 'tests/src/traits.rs', lines 247:0-249:1 *) Record Try_t (Self : Type) := mkTry_t { Try_tTry_t_Residual : Type; Try_tTry_t_FromResidualSelftraitsTryResidualInst : FromResidual_t Self @@ -505,7 +505,7 @@ Arguments Try_tTry_t_Residual { _ }. Arguments Try_tTry_t_FromResidualSelftraitsTryResidualInst { _ }. (** Trait declaration: [traits::WithTarget] - Source: 'tests/src/traits.rs', lines 253:0-253:20 *) + Source: 'tests/src/traits.rs', lines 253:0-255:1 *) Record WithTarget_t (Self : Type) := mkWithTarget_t { WithTarget_tWithTarget_t_Target : Type; }. @@ -514,7 +514,7 @@ Arguments mkWithTarget_t { _ }. Arguments WithTarget_tWithTarget_t_Target { _ }. (** Trait declaration: [traits::ParentTrait2] - Source: 'tests/src/traits.rs', lines 257:0-257:22 *) + Source: 'tests/src/traits.rs', lines 257:0-259:1 *) Record ParentTrait2_t (Self : Type) := mkParentTrait2_t { ParentTrait2_tParentTrait2_t_U : Type; ParentTrait2_tParentTrait2_t_WithTargettraitsParentTrait2UInst : WithTarget_t @@ -526,7 +526,7 @@ Arguments ParentTrait2_tParentTrait2_t_U { _ }. Arguments ParentTrait2_tParentTrait2_t_WithTargettraitsParentTrait2UInst { _ }. (** Trait declaration: [traits::ChildTrait2] - Source: 'tests/src/traits.rs', lines 261:0-261:35 *) + Source: 'tests/src/traits.rs', lines 261:0-263:1 *) Record ChildTrait2_t (Self : Type) := mkChildTrait2_t { ChildTrait2_tChildTrait2_t_ParentTrait2Inst : ParentTrait2_t Self; ChildTrait2_t_convert : @@ -540,13 +540,13 @@ Arguments ChildTrait2_tChildTrait2_t_ParentTrait2Inst { _ }. Arguments ChildTrait2_t_convert { _ }. (** Trait implementation: [traits::{traits::WithTarget for u32}#11] - Source: 'tests/src/traits.rs', lines 265:0-265:23 *) + Source: 'tests/src/traits.rs', lines 265:0-267:1 *) Definition WithTargetU32 : WithTarget_t u32 := {| WithTarget_tWithTarget_t_Target := u32; |}. (** Trait implementation: [traits::{traits::ParentTrait2 for u32}#12] - Source: 'tests/src/traits.rs', lines 269:0-269:25 *) + Source: 'tests/src/traits.rs', lines 269:0-271:1 *) Definition ParentTrait2U32 : ParentTrait2_t u32 := {| ParentTrait2_tParentTrait2_t_U := u32; ParentTrait2_tParentTrait2_t_WithTargettraitsParentTrait2UInst := @@ -554,19 +554,19 @@ Definition ParentTrait2U32 : ParentTrait2_t u32 := {| |}. (** [traits::{traits::ChildTrait2 for u32}#13::convert]: - Source: 'tests/src/traits.rs', lines 274:4-274:29 *) + Source: 'tests/src/traits.rs', lines 274:4-276:5 *) Definition childTrait2U32_convert (x : u32) : result u32 := Ok x. (** Trait implementation: [traits::{traits::ChildTrait2 for u32}#13] - Source: 'tests/src/traits.rs', lines 273:0-273:24 *) + Source: 'tests/src/traits.rs', lines 273:0-277:1 *) Definition ChildTrait2U32 : ChildTrait2_t u32 := {| ChildTrait2_tChildTrait2_t_ParentTrait2Inst := ParentTrait2U32; ChildTrait2_t_convert := childTrait2U32_convert; |}. (** Trait declaration: [traits::CFnOnce] - Source: 'tests/src/traits.rs', lines 287:0-287:23 *) + Source: 'tests/src/traits.rs', lines 287:0-291:1 *) Record CFnOnce_t (Self Args : Type) := mkCFnOnce_t { CFnOnce_tCFnOnce_t_Output : Type; CFnOnce_t_call_once : Self -> Args -> result CFnOnce_tCFnOnce_t_Output; @@ -577,7 +577,7 @@ Arguments CFnOnce_tCFnOnce_t_Output { _ _ }. Arguments CFnOnce_t_call_once { _ _ }. (** Trait declaration: [traits::CFnMut] - Source: 'tests/src/traits.rs', lines 293:0-293:37 *) + Source: 'tests/src/traits.rs', lines 293:0-295:1 *) Record CFnMut_t (Self Args : Type) := mkCFnMut_t { CFnMut_tCFnMut_t_CFnOnceInst : CFnOnce_t Self Args; CFnMut_t_call_mut : Self -> Args -> result @@ -589,7 +589,7 @@ Arguments CFnMut_tCFnMut_t_CFnOnceInst { _ _ }. Arguments CFnMut_t_call_mut { _ _ }. (** Trait declaration: [traits::CFn] - Source: 'tests/src/traits.rs', lines 297:0-297:33 *) + Source: 'tests/src/traits.rs', lines 297:0-299:1 *) Record CFn_t (Self Args : Type) := mkCFn_t { CFn_tCFn_t_CFnMutInst : CFnMut_t Self Args; CFn_t_call : Self -> Args -> result @@ -601,7 +601,7 @@ Arguments CFn_tCFn_t_CFnMutInst { _ _ }. Arguments CFn_t_call { _ _ }. (** Trait declaration: [traits::GetTrait] - Source: 'tests/src/traits.rs', lines 301:0-301:18 *) + Source: 'tests/src/traits.rs', lines 301:0-304:1 *) Record GetTrait_t (Self : Type) := mkGetTrait_t { GetTrait_tGetTrait_t_W : Type; GetTrait_t_get_w : Self -> result GetTrait_tGetTrait_t_W; @@ -612,7 +612,7 @@ Arguments GetTrait_tGetTrait_t_W { _ }. Arguments GetTrait_t_get_w { _ }. (** [traits::test_get_trait]: - Source: 'tests/src/traits.rs', lines 306:0-306:49 *) + Source: 'tests/src/traits.rs', lines 306:0-308:1 *) Definition test_get_trait (T : Type) (getTraitInst : GetTrait_t T) (x : T) : result getTraitInst.(GetTrait_tGetTrait_t_W) @@ -621,27 +621,27 @@ Definition test_get_trait . (** Trait declaration: [traits::Trait] - Source: 'tests/src/traits.rs', lines 311:0-311:15 *) + Source: 'tests/src/traits.rs', lines 311:0-313:1 *) Record Trait_t (Self : Type) := mkTrait_t { Trait_tTrait_t_LEN : usize; }. Arguments mkTrait_t { _ }. Arguments Trait_tTrait_t_LEN { _ }. (** [traits::{traits::Trait for @Array}#14::LEN] - Source: 'tests/src/traits.rs', lines 316:4-316:20 *) + Source: 'tests/src/traits.rs', lines 316:4-316:25 *) Definition trait_array_len_body (T : Type) (N : usize) : result usize := Ok N. Definition trait_array_len (T : Type) (N : usize) : usize := (trait_array_len_body T N)%global . (** Trait implementation: [traits::{traits::Trait for @Array}#14] - Source: 'tests/src/traits.rs', lines 315:0-315:40 *) + Source: 'tests/src/traits.rs', lines 315:0-317:1 *) Definition TraitArray (T : Type) (N : usize) : Trait_t (array T N) := {| Trait_tTrait_t_LEN := trait_array_len T N; |}. (** [traits::{traits::Trait for traits::Wrapper}#15::LEN] - Source: 'tests/src/traits.rs', lines 320:4-320:20 *) + Source: 'tests/src/traits.rs', lines 320:4-320:25 *) Definition traittraits_wrapper_len_body (T : Type) (traitInst : Trait_t T) : result usize := Ok 0%usize @@ -652,20 +652,20 @@ Definition traittraits_wrapper_len (T : Type) (traitInst : Trait_t T) . (** Trait implementation: [traits::{traits::Trait for traits::Wrapper}#15] - Source: 'tests/src/traits.rs', lines 319:0-319:35 *) + Source: 'tests/src/traits.rs', lines 319:0-321:1 *) Definition TraittraitsWrapper (T : Type) (traitInst : Trait_t T) : Trait_t (Wrapper_t T) := {| Trait_tTrait_t_LEN := traittraits_wrapper_len T traitInst; |}. (** [traits::use_wrapper_len]: - Source: 'tests/src/traits.rs', lines 323:0-323:43 *) + Source: 'tests/src/traits.rs', lines 323:0-325:1 *) Definition use_wrapper_len (T : Type) (traitInst : Trait_t T) : result usize := Ok (TraittraitsWrapper T traitInst).(Trait_tTrait_t_LEN) . (** [traits::Foo] - Source: 'tests/src/traits.rs', lines 327:0-327:20 *) + Source: 'tests/src/traits.rs', lines 327:0-330:1 *) Record Foo_t (T U : Type) := mkFoo_t { foo_x : T; foo_y : U; }. Arguments mkFoo_t { _ _ }. @@ -684,7 +684,7 @@ Arguments Core_result_Result_Ok { _ _ }. Arguments Core_result_Result_Err { _ _ }. (** [traits::{traits::Foo}#16::FOO] - Source: 'tests/src/traits.rs', lines 333:4-333:33 *) + Source: 'tests/src/traits.rs', lines 333:4-333:43 *) Definition foo_foo_body (T U : Type) (traitInst : Trait_t T) : result (core_result_Result_t T i32) := Ok (Core_result_Result_Err 0%i32) @@ -695,14 +695,14 @@ Definition foo_foo (T U : Type) (traitInst : Trait_t T) . (** [traits::use_foo1]: - Source: 'tests/src/traits.rs', lines 336:0-336:48 *) + Source: 'tests/src/traits.rs', lines 336:0-338:1 *) Definition use_foo1 (T U : Type) (traitInst : Trait_t T) : result (core_result_Result_t T i32) := Ok (foo_foo T U traitInst) . (** [traits::use_foo2]: - Source: 'tests/src/traits.rs', lines 340:0-340:48 *) + Source: 'tests/src/traits.rs', lines 340:0-342:1 *) Definition use_foo2 (T U : Type) (traitInst : Trait_t U) : result (core_result_Result_t U i32) := Ok (foo_foo U T traitInst) diff --git a/tests/fstar/arrays/Arrays.Funs.fst b/tests/fstar/arrays/Arrays.Funs.fst index 5aad99e03..9e81b582c 100644 --- a/tests/fstar/arrays/Arrays.Funs.fst +++ b/tests/fstar/arrays/Arrays.Funs.fst @@ -8,17 +8,17 @@ include Arrays.Clauses #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [arrays::incr]: - Source: 'tests/src/arrays.rs', lines 11:0-11:24 *) + Source: 'tests/src/arrays.rs', lines 11:0-13:1 *) let incr (x : u32) : result u32 = u32_add x 1 (** [arrays::array_to_shared_slice_]: - Source: 'tests/src/arrays.rs', lines 19:0-19:53 *) + Source: 'tests/src/arrays.rs', lines 19:0-21:1 *) let array_to_shared_slice_ (t : Type0) (s : array t 32) : result (slice t) = array_to_slice t 32 s (** [arrays::array_to_mut_slice_]: - Source: 'tests/src/arrays.rs', lines 24:0-24:58 *) + Source: 'tests/src/arrays.rs', lines 24:0-26:1 *) let array_to_mut_slice_ (t : Type0) (s : array t 32) : result ((slice t) & (slice t -> result (array t 32))) @@ -26,37 +26,37 @@ let array_to_mut_slice_ array_to_slice_mut t 32 s (** [arrays::array_len]: - Source: 'tests/src/arrays.rs', lines 28:0-28:40 *) + Source: 'tests/src/arrays.rs', lines 28:0-30:1 *) let array_len (t : Type0) (s : array t 32) : result usize = let* s1 = array_to_slice t 32 s in Ok (slice_len t s1) (** [arrays::shared_array_len]: - Source: 'tests/src/arrays.rs', lines 32:0-32:48 *) + Source: 'tests/src/arrays.rs', lines 32:0-34:1 *) let shared_array_len (t : Type0) (s : array t 32) : result usize = let* s1 = array_to_slice t 32 s in Ok (slice_len t s1) (** [arrays::shared_slice_len]: - Source: 'tests/src/arrays.rs', lines 36:0-36:44 *) + Source: 'tests/src/arrays.rs', lines 36:0-38:1 *) let shared_slice_len (t : Type0) (s : slice t) : result usize = Ok (slice_len t s) (** [arrays::index_array_shared]: - Source: 'tests/src/arrays.rs', lines 40:0-40:57 *) + Source: 'tests/src/arrays.rs', lines 40:0-42:1 *) let index_array_shared (t : Type0) (s : array t 32) (i : usize) : result t = array_index_usize t 32 s i (** [arrays::index_array_u32]: - Source: 'tests/src/arrays.rs', lines 47:0-47:53 *) + Source: 'tests/src/arrays.rs', lines 47:0-49:1 *) let index_array_u32 (s : array u32 32) (i : usize) : result u32 = array_index_usize u32 32 s i (** [arrays::index_array_copy]: - Source: 'tests/src/arrays.rs', lines 51:0-51:45 *) + Source: 'tests/src/arrays.rs', lines 51:0-53:1 *) let index_array_copy (x : array u32 32) : result u32 = array_index_usize u32 32 x 0 (** [arrays::index_mut_array]: - Source: 'tests/src/arrays.rs', lines 55:0-55:62 *) + Source: 'tests/src/arrays.rs', lines 55:0-57:1 *) let index_mut_array (t : Type0) (s : array t 32) (i : usize) : result (t & (t -> result (array t 32))) @@ -64,12 +64,12 @@ let index_mut_array array_index_mut_usize t 32 s i (** [arrays::index_slice]: - Source: 'tests/src/arrays.rs', lines 59:0-59:46 *) + Source: 'tests/src/arrays.rs', lines 59:0-61:1 *) let index_slice (t : Type0) (s : slice t) (i : usize) : result t = slice_index_usize t s i (** [arrays::index_mut_slice]: - Source: 'tests/src/arrays.rs', lines 63:0-63:58 *) + Source: 'tests/src/arrays.rs', lines 63:0-65:1 *) let index_mut_slice (t : Type0) (s : slice t) (i : usize) : result (t & (t -> result (slice t))) @@ -77,7 +77,7 @@ let index_mut_slice slice_index_mut_usize t s i (** [arrays::slice_subslice_shared_]: - Source: 'tests/src/arrays.rs', lines 67:0-67:70 *) + Source: 'tests/src/arrays.rs', lines 67:0-69:1 *) let slice_subslice_shared_ (x : slice u32) (y : usize) (z : usize) : result (slice u32) = core_slice_index_Slice_index u32 (core_ops_range_Range usize) @@ -85,7 +85,7 @@ let slice_subslice_shared_ { start = y; end_ = z } (** [arrays::slice_subslice_mut_]: - Source: 'tests/src/arrays.rs', lines 71:0-71:75 *) + Source: 'tests/src/arrays.rs', lines 71:0-73:1 *) let slice_subslice_mut_ (x : slice u32) (y : usize) (z : usize) : result ((slice u32) & (slice u32 -> result (slice u32))) @@ -97,12 +97,12 @@ let slice_subslice_mut_ Ok (s, index_mut_back) (** [arrays::array_to_slice_shared_]: - Source: 'tests/src/arrays.rs', lines 75:0-75:54 *) + Source: 'tests/src/arrays.rs', lines 75:0-77:1 *) let array_to_slice_shared_ (x : array u32 32) : result (slice u32) = array_to_slice u32 32 x (** [arrays::array_to_slice_mut_]: - Source: 'tests/src/arrays.rs', lines 79:0-79:59 *) + Source: 'tests/src/arrays.rs', lines 79:0-81:1 *) let array_to_slice_mut_ (x : array u32 32) : result ((slice u32) & (slice u32 -> result (array u32 32))) @@ -110,7 +110,7 @@ let array_to_slice_mut_ array_to_slice_mut u32 32 x (** [arrays::array_subslice_shared_]: - Source: 'tests/src/arrays.rs', lines 83:0-83:74 *) + Source: 'tests/src/arrays.rs', lines 83:0-85:1 *) let array_subslice_shared_ (x : array u32 32) (y : usize) (z : usize) : result (slice u32) = core_array_Array_index u32 (core_ops_range_Range usize) 32 @@ -119,7 +119,7 @@ let array_subslice_shared_ { start = y; end_ = z } (** [arrays::array_subslice_mut_]: - Source: 'tests/src/arrays.rs', lines 87:0-87:79 *) + Source: 'tests/src/arrays.rs', lines 87:0-89:1 *) let array_subslice_mut_ (x : array u32 32) (y : usize) (z : usize) : result ((slice u32) & (slice u32 -> result (array u32 32))) @@ -132,24 +132,24 @@ let array_subslice_mut_ Ok (s, index_mut_back) (** [arrays::index_slice_0]: - Source: 'tests/src/arrays.rs', lines 91:0-91:38 *) + Source: 'tests/src/arrays.rs', lines 91:0-93:1 *) let index_slice_0 (t : Type0) (s : slice t) : result t = slice_index_usize t s 0 (** [arrays::index_array_0]: - Source: 'tests/src/arrays.rs', lines 95:0-95:42 *) + Source: 'tests/src/arrays.rs', lines 95:0-97:1 *) let index_array_0 (t : Type0) (s : array t 32) : result t = array_index_usize t 32 s 0 (** [arrays::index_index_array]: - Source: 'tests/src/arrays.rs', lines 106:0-106:71 *) + Source: 'tests/src/arrays.rs', lines 106:0-108:1 *) let index_index_array (s : array (array u32 32) 32) (i : usize) (j : usize) : result u32 = let* a = array_index_usize (array u32 32) 32 s i in array_index_usize u32 32 a j (** [arrays::update_update_array]: - Source: 'tests/src/arrays.rs', lines 117:0-117:70 *) + Source: 'tests/src/arrays.rs', lines 117:0-119:1 *) let update_update_array (s : array (array u32 32) 32) (i : usize) (j : usize) : result unit = let* (a, index_mut_back) = array_index_mut_usize (array u32 32) 32 s i in @@ -159,42 +159,42 @@ let update_update_array Ok () (** [arrays::array_local_deep_copy]: - Source: 'tests/src/arrays.rs', lines 121:0-121:43 *) + Source: 'tests/src/arrays.rs', lines 121:0-123:1 *) let array_local_deep_copy (x : array u32 32) : result unit = Ok () (** [arrays::take_array]: - Source: 'tests/src/arrays.rs', lines 125:0-125:30 *) + Source: 'tests/src/arrays.rs', lines 125:0-125:33 *) let take_array (a : array u32 2) : result unit = Ok () (** [arrays::take_array_borrow]: - Source: 'tests/src/arrays.rs', lines 126:0-126:38 *) + Source: 'tests/src/arrays.rs', lines 126:0-126:41 *) let take_array_borrow (a : array u32 2) : result unit = Ok () (** [arrays::take_slice]: - Source: 'tests/src/arrays.rs', lines 127:0-127:28 *) + Source: 'tests/src/arrays.rs', lines 127:0-127:31 *) let take_slice (s : slice u32) : result unit = Ok () (** [arrays::take_mut_slice]: - Source: 'tests/src/arrays.rs', lines 128:0-128:36 *) + Source: 'tests/src/arrays.rs', lines 128:0-128:39 *) let take_mut_slice (s : slice u32) : result (slice u32) = Ok s (** [arrays::const_array]: - Source: 'tests/src/arrays.rs', lines 130:0-130:32 *) + Source: 'tests/src/arrays.rs', lines 130:0-132:1 *) let const_array : result (array u32 2) = Ok (mk_array u32 2 [ 0; 0 ]) (** [arrays::const_slice]: - Source: 'tests/src/arrays.rs', lines 134:0-134:20 *) + Source: 'tests/src/arrays.rs', lines 134:0-136:1 *) let const_slice : result unit = let* _ = array_to_slice u32 2 (mk_array u32 2 [ 0; 0 ]) in Ok () (** [arrays::take_all]: - Source: 'tests/src/arrays.rs', lines 144:0-144:17 *) + Source: 'tests/src/arrays.rs', lines 144:0-156:1 *) let take_all : result unit = let* _ = take_array (mk_array u32 2 [ 0; 0 ]) in let* _ = take_array (mk_array u32 2 [ 0; 0 ]) in @@ -208,27 +208,27 @@ let take_all : result unit = Ok () (** [arrays::index_array]: - Source: 'tests/src/arrays.rs', lines 158:0-158:38 *) + Source: 'tests/src/arrays.rs', lines 158:0-160:1 *) let index_array (x : array u32 2) : result u32 = array_index_usize u32 2 x 0 (** [arrays::index_array_borrow]: - Source: 'tests/src/arrays.rs', lines 161:0-161:46 *) + Source: 'tests/src/arrays.rs', lines 161:0-163:1 *) let index_array_borrow (x : array u32 2) : result u32 = array_index_usize u32 2 x 0 (** [arrays::index_slice_u32_0]: - Source: 'tests/src/arrays.rs', lines 165:0-165:42 *) + Source: 'tests/src/arrays.rs', lines 165:0-167:1 *) let index_slice_u32_0 (x : slice u32) : result u32 = slice_index_usize u32 x 0 (** [arrays::index_mut_slice_u32_0]: - Source: 'tests/src/arrays.rs', lines 169:0-169:50 *) + Source: 'tests/src/arrays.rs', lines 169:0-171:1 *) let index_mut_slice_u32_0 (x : slice u32) : result (u32 & (slice u32)) = let* i = slice_index_usize u32 x 0 in Ok (i, x) (** [arrays::index_all]: - Source: 'tests/src/arrays.rs', lines 173:0-173:25 *) + Source: 'tests/src/arrays.rs', lines 173:0-185:1 *) let index_all : result u32 = let* i = index_array (mk_array u32 2 [ 0; 0 ]) in let* i1 = index_array (mk_array u32 2 [ 0; 0 ]) in @@ -246,25 +246,25 @@ let index_all : result u32 = Ok i9 (** [arrays::update_array]: - Source: 'tests/src/arrays.rs', lines 187:0-187:36 *) + Source: 'tests/src/arrays.rs', lines 187:0-189:1 *) let update_array (x : array u32 2) : result unit = let* (_, index_mut_back) = array_index_mut_usize u32 2 x 0 in let* _ = index_mut_back 1 in Ok () (** [arrays::update_array_mut_borrow]: - Source: 'tests/src/arrays.rs', lines 190:0-190:48 *) + Source: 'tests/src/arrays.rs', lines 190:0-192:1 *) let update_array_mut_borrow (x : array u32 2) : result (array u32 2) = let* (_, index_mut_back) = array_index_mut_usize u32 2 x 0 in index_mut_back 1 (** [arrays::update_mut_slice]: - Source: 'tests/src/arrays.rs', lines 193:0-193:38 *) + Source: 'tests/src/arrays.rs', lines 193:0-195:1 *) let update_mut_slice (x : slice u32) : result (slice u32) = let* (_, index_mut_back) = slice_index_mut_usize u32 x 0 in index_mut_back 1 (** [arrays::update_all]: - Source: 'tests/src/arrays.rs', lines 197:0-197:19 *) + Source: 'tests/src/arrays.rs', lines 197:0-203:1 *) let update_all : result unit = let* _ = update_array (mk_array u32 2 [ 0; 0 ]) in let* _ = update_array (mk_array u32 2 [ 0; 0 ]) in @@ -275,7 +275,7 @@ let update_all : result unit = Ok () (** [arrays::range_all]: - Source: 'tests/src/arrays.rs', lines 208:0-208:18 *) + Source: 'tests/src/arrays.rs', lines 208:0-212:1 *) let range_all : result unit = let* (s, index_mut_back) = core_array_Array_index_mut u32 (core_ops_range_Range usize) 4 @@ -287,22 +287,22 @@ let range_all : result unit = Ok () (** [arrays::deref_array_borrow]: - Source: 'tests/src/arrays.rs', lines 217:0-217:46 *) + Source: 'tests/src/arrays.rs', lines 217:0-220:1 *) let deref_array_borrow (x : array u32 2) : result u32 = array_index_usize u32 2 x 0 (** [arrays::deref_array_mut_borrow]: - Source: 'tests/src/arrays.rs', lines 222:0-222:54 *) + Source: 'tests/src/arrays.rs', lines 222:0-225:1 *) let deref_array_mut_borrow (x : array u32 2) : result (u32 & (array u32 2)) = let* i = array_index_usize u32 2 x 0 in Ok (i, x) (** [arrays::take_array_t]: - Source: 'tests/src/arrays.rs', lines 230:0-230:31 *) + Source: 'tests/src/arrays.rs', lines 230:0-230:34 *) let take_array_t (a : array aB_t 2) : result unit = Ok () (** [arrays::non_copyable_array]: - Source: 'tests/src/arrays.rs', lines 232:0-232:27 *) + Source: 'tests/src/arrays.rs', lines 232:0-240:1 *) let non_copyable_array : result unit = take_array_t (mk_array aB_t 2 [ AB_A; AB_B ]) @@ -322,7 +322,7 @@ let rec sum_loop else Ok sum1 (** [arrays::sum]: - Source: 'tests/src/arrays.rs', lines 245:0-245:28 *) + Source: 'tests/src/arrays.rs', lines 245:0-253:1 *) let sum (s : slice u32) : result u32 = sum_loop s 0 0 @@ -344,14 +344,14 @@ let rec sum2_loop else Ok sum1 (** [arrays::sum2]: - Source: 'tests/src/arrays.rs', lines 255:0-255:41 *) + Source: 'tests/src/arrays.rs', lines 255:0-264:1 *) let sum2 (s : slice u32) (s2 : slice u32) : result u32 = let i = slice_len u32 s in let i1 = slice_len u32 s2 in if i = i1 then sum2_loop s s2 0 0 else Fail Failure (** [arrays::f0]: - Source: 'tests/src/arrays.rs', lines 266:0-266:11 *) + Source: 'tests/src/arrays.rs', lines 266:0-269:1 *) let f0 : result unit = let* (s, to_slice_mut_back) = array_to_slice_mut u32 2 (mk_array u32 2 [ 1; 2 ]) in @@ -361,7 +361,7 @@ let f0 : result unit = Ok () (** [arrays::f1]: - Source: 'tests/src/arrays.rs', lines 271:0-271:11 *) + Source: 'tests/src/arrays.rs', lines 271:0-274:1 *) let f1 : result unit = let* (_, index_mut_back) = array_index_mut_usize u32 2 (mk_array u32 2 [ 1; 2 ]) 0 in @@ -369,12 +369,12 @@ let f1 : result unit = Ok () (** [arrays::f2]: - Source: 'tests/src/arrays.rs', lines 276:0-276:17 *) + Source: 'tests/src/arrays.rs', lines 276:0-276:20 *) let f2 (i : u32) : result unit = Ok () (** [arrays::f4]: - Source: 'tests/src/arrays.rs', lines 285:0-285:54 *) + Source: 'tests/src/arrays.rs', lines 285:0-287:1 *) let f4 (x : array u32 32) (y : usize) (z : usize) : result (slice u32) = core_array_Array_index u32 (core_ops_range_Range usize) 32 (core_ops_index_IndexSliceTIInst u32 (core_ops_range_Range usize) @@ -382,7 +382,7 @@ let f4 (x : array u32 32) (y : usize) (z : usize) : result (slice u32) = { start = y; end_ = z } (** [arrays::f3]: - Source: 'tests/src/arrays.rs', lines 278:0-278:18 *) + Source: 'tests/src/arrays.rs', lines 278:0-283:1 *) let f3 : result u32 = let* i = array_index_usize u32 2 (mk_array u32 2 [ 1; 2 ]) 0 in let* _ = f2 i in @@ -392,17 +392,17 @@ let f3 : result u32 = sum2 s s1 (** [arrays::SZ] - Source: 'tests/src/arrays.rs', lines 289:0-289:19 *) + Source: 'tests/src/arrays.rs', lines 289:0-289:25 *) let sz_body : result usize = Ok 32 let sz : usize = eval_global sz_body (** [arrays::f5]: - Source: 'tests/src/arrays.rs', lines 292:0-292:31 *) + Source: 'tests/src/arrays.rs', lines 292:0-294:1 *) let f5 (x : array u32 32) : result u32 = array_index_usize u32 32 x 0 (** [arrays::ite]: - Source: 'tests/src/arrays.rs', lines 297:0-297:12 *) + Source: 'tests/src/arrays.rs', lines 297:0-304:1 *) let ite : result unit = let* (s, to_slice_mut_back) = array_to_slice_mut u32 2 (mk_array u32 2 [ 0; 0 ]) in @@ -429,7 +429,7 @@ let rec zero_slice_loop else Ok a (** [arrays::zero_slice]: - Source: 'tests/src/arrays.rs', lines 306:0-306:31 *) + Source: 'tests/src/arrays.rs', lines 306:0-313:1 *) let zero_slice (a : slice u8) : result (slice u8) = let len = slice_len u8 a in zero_slice_loop a 0 len @@ -444,7 +444,7 @@ let rec iter_mut_slice_loop else Ok () (** [arrays::iter_mut_slice]: - Source: 'tests/src/arrays.rs', lines 315:0-315:35 *) + Source: 'tests/src/arrays.rs', lines 315:0-321:1 *) let iter_mut_slice (a : slice u8) : result (slice u8) = let len = slice_len u8 a in let* _ = iter_mut_slice_loop len 0 in Ok a @@ -464,7 +464,7 @@ let rec sum_mut_slice_loop else Ok s (** [arrays::sum_mut_slice]: - Source: 'tests/src/arrays.rs', lines 323:0-323:42 *) + Source: 'tests/src/arrays.rs', lines 323:0-331:1 *) let sum_mut_slice (a : slice u32) : result (u32 & (slice u32)) = let* i = sum_mut_slice_loop a 0 0 in Ok (i, a) diff --git a/tests/fstar/arrays/Arrays.Types.fst b/tests/fstar/arrays/Arrays.Types.fst index 41f892ad7..cf41fb986 100644 --- a/tests/fstar/arrays/Arrays.Types.fst +++ b/tests/fstar/arrays/Arrays.Types.fst @@ -6,6 +6,6 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [arrays::AB] - Source: 'tests/src/arrays.rs', lines 6:0-6:11 *) + Source: 'tests/src/arrays.rs', lines 6:0-9:1 *) type aB_t = | AB_A : aB_t | AB_B : aB_t diff --git a/tests/fstar/betree/Betree.Clauses.Template.fst b/tests/fstar/betree/Betree.Clauses.Template.fst index c42f03a90..06734fabf 100644 --- a/tests/fstar/betree/Betree.Clauses.Template.fst +++ b/tests/fstar/betree/Betree.Clauses.Template.fst @@ -58,14 +58,14 @@ let betree_Node_lookup_in_bindings_loop_decreases (key : u64) admit () (** [betree::betree::{betree::betree::Internal}#4::lookup_in_children]: decreases clause - Source: 'src/betree.rs', lines 414:4-414:63 *) + Source: 'src/betree.rs', lines 414:4-420:5 *) unfold let betree_Internal_lookup_in_children_decreases (self : betree_Internal_t) (key : u64) (st : state) : nat = admit () (** [betree::betree::{betree::betree::Node}#5::lookup]: decreases clause - Source: 'src/betree.rs', lines 712:4-712:58 *) + Source: 'src/betree.rs', lines 712:4-785:5 *) unfold let betree_Node_lookup_decreases (self : betree_Node_t) (key : u64) (st : state) : nat = @@ -109,7 +109,7 @@ let betree_Node_apply_messages_to_leaf_loop_decreases admit () (** [betree::betree::{betree::betree::Internal}#4::flush]: decreases clause - Source: 'src/betree.rs', lines 429:4-434:26 *) + Source: 'src/betree.rs', lines 429:4-458:5 *) unfold let betree_Internal_flush_decreases (self : betree_Internal_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -117,7 +117,7 @@ let betree_Internal_flush_decreases (self : betree_Internal_t) admit () (** [betree::betree::{betree::betree::Node}#5::apply_messages]: decreases clause - Source: 'src/betree.rs', lines 601:4-606:5 *) + Source: 'src/betree.rs', lines 601:4-645:5 *) unfold let betree_Node_apply_messages_decreases (self : betree_Node_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) diff --git a/tests/fstar/betree/Betree.Funs.fst b/tests/fstar/betree/Betree.Funs.fst index 919b59c84..a6caa6f58 100644 --- a/tests/fstar/betree/Betree.Funs.fst +++ b/tests/fstar/betree/Betree.Funs.fst @@ -9,7 +9,7 @@ include Betree.Clauses #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [betree::betree::load_internal_node]: - Source: 'src/betree.rs', lines 36:0-36:52 *) + Source: 'src/betree.rs', lines 36:0-38:1 *) let betree_load_internal_node (id : u64) (st : state) : result (state & (betree_List_t (u64 & betree_Message_t))) @@ -17,7 +17,7 @@ let betree_load_internal_node betree_utils_load_internal_node id st (** [betree::betree::store_internal_node]: - Source: 'src/betree.rs', lines 41:0-41:60 *) + Source: 'src/betree.rs', lines 41:0-43:1 *) let betree_store_internal_node (id : u64) (content : betree_List_t (u64 & betree_Message_t)) (st : state) : result (state & unit) @@ -25,13 +25,13 @@ let betree_store_internal_node betree_utils_store_internal_node id content st (** [betree::betree::load_leaf_node]: - Source: 'src/betree.rs', lines 46:0-46:44 *) + Source: 'src/betree.rs', lines 46:0-48:1 *) let betree_load_leaf_node (id : u64) (st : state) : result (state & (betree_List_t (u64 & u64))) = betree_utils_load_leaf_node id st (** [betree::betree::store_leaf_node]: - Source: 'src/betree.rs', lines 51:0-51:52 *) + Source: 'src/betree.rs', lines 51:0-53:1 *) let betree_store_leaf_node (id : u64) (content : betree_List_t (u64 & u64)) (st : state) : result (state & unit) @@ -39,24 +39,24 @@ let betree_store_leaf_node betree_utils_store_leaf_node id content st (** [betree::betree::fresh_node_id]: - Source: 'src/betree.rs', lines 55:0-55:48 *) + Source: 'src/betree.rs', lines 55:0-59:1 *) let betree_fresh_node_id (counter : u64) : result (u64 & u64) = let* counter1 = u64_add counter 1 in Ok (counter, counter1) (** [betree::betree::{betree::betree::NodeIdCounter}::new]: - Source: 'src/betree.rs', lines 206:4-206:20 *) + Source: 'src/betree.rs', lines 206:4-208:5 *) let betree_NodeIdCounter_new : result betree_NodeIdCounter_t = Ok { next_node_id = 0 } (** [betree::betree::{betree::betree::NodeIdCounter}::fresh_id]: - Source: 'src/betree.rs', lines 210:4-210:36 *) + Source: 'src/betree.rs', lines 210:4-214:5 *) let betree_NodeIdCounter_fresh_id (self : betree_NodeIdCounter_t) : result (u64 & betree_NodeIdCounter_t) = let* i = u64_add self.next_node_id 1 in Ok (self.next_node_id, { next_node_id = i }) (** [betree::betree::upsert_update]: - Source: 'src/betree.rs', lines 234:0-234:70 *) + Source: 'src/betree.rs', lines 234:0-273:1 *) let betree_upsert_update (prev : option u64) (st : betree_UpsertFunState_t) : result u64 = begin match prev with @@ -88,7 +88,7 @@ let rec betree_List_len_loop end (** [betree::betree::{betree::betree::List}#1::len]: - Source: 'src/betree.rs', lines 276:4-276:24 *) + Source: 'src/betree.rs', lines 276:4-284:5 *) let betree_List_len (t : Type0) (self : betree_List_t t) : result u64 = betree_List_len_loop t self 0 @@ -106,7 +106,7 @@ let rec betree_List_reverse_loop end (** [betree::betree::{betree::betree::List}#1::reverse]: - Source: 'src/betree.rs', lines 304:4-304:32 *) + Source: 'src/betree.rs', lines 304:4-312:5 *) let betree_List_reverse (t : Type0) (self : betree_List_t t) : result (betree_List_t t) = betree_List_reverse_loop t self Betree_List_Nil @@ -129,7 +129,7 @@ let rec betree_List_split_at_loop else let* l = betree_List_reverse t beg in Ok (l, self) (** [betree::betree::{betree::betree::List}#1::split_at]: - Source: 'src/betree.rs', lines 287:4-287:55 *) + Source: 'src/betree.rs', lines 287:4-302:5 *) let betree_List_split_at (t : Type0) (self : betree_List_t t) (n : u64) : result ((betree_List_t t) & (betree_List_t t)) @@ -137,14 +137,14 @@ let betree_List_split_at betree_List_split_at_loop t n Betree_List_Nil self (** [betree::betree::{betree::betree::List}#1::push_front]: - Source: 'src/betree.rs', lines 315:4-315:34 *) + Source: 'src/betree.rs', lines 315:4-319:5 *) let betree_List_push_front (t : Type0) (self : betree_List_t t) (x : t) : result (betree_List_t t) = let (tl, _) = core_mem_replace (betree_List_t t) self Betree_List_Nil in Ok (Betree_List_Cons x tl) (** [betree::betree::{betree::betree::List}#1::pop_front]: - Source: 'src/betree.rs', lines 322:4-322:32 *) + Source: 'src/betree.rs', lines 322:4-332:5 *) let betree_List_pop_front (t : Type0) (self : betree_List_t t) : result (t & (betree_List_t t)) = let (ls, _) = core_mem_replace (betree_List_t t) self Betree_List_Nil in @@ -154,7 +154,7 @@ let betree_List_pop_front end (** [betree::betree::{betree::betree::List}#1::hd]: - Source: 'src/betree.rs', lines 334:4-334:22 *) + Source: 'src/betree.rs', lines 334:4-339:5 *) let betree_List_hd (t : Type0) (self : betree_List_t t) : result t = begin match self with | Betree_List_Cons hd _ -> Ok hd @@ -162,7 +162,7 @@ let betree_List_hd (t : Type0) (self : betree_List_t t) : result t = end (** [betree::betree::{betree::betree::List<(u64, T)>}#2::head_has_key]: - Source: 'src/betree.rs', lines 343:4-343:44 *) + Source: 'src/betree.rs', lines 343:4-348:5 *) let betree_ListPairU64T_head_has_key (t : Type0) (self : betree_List_t (u64 & t)) (key : u64) : result bool = begin match self with @@ -197,7 +197,7 @@ let rec betree_ListPairU64T_partition_at_pivot_loop end (** [betree::betree::{betree::betree::List<(u64, T)>}#2::partition_at_pivot]: - Source: 'src/betree.rs', lines 355:4-355:73 *) + Source: 'src/betree.rs', lines 355:4-370:5 *) let betree_ListPairU64T_partition_at_pivot (t : Type0) (self : betree_List_t (u64 & t)) (pivot : u64) : result ((betree_List_t (u64 & t)) & (betree_List_t (u64 & t))) @@ -206,7 +206,7 @@ let betree_ListPairU64T_partition_at_pivot Betree_List_Nil self (** [betree::betree::{betree::betree::Leaf}#3::split]: - Source: 'src/betree.rs', lines 378:4-383:17 *) + Source: 'src/betree.rs', lines 378:4-409:5 *) let betree_Leaf_split (self : betree_Leaf_t) (content : betree_List_t (u64 & u64)) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -252,7 +252,7 @@ let rec betree_Node_lookup_first_message_for_key_loop end (** [betree::betree::{betree::betree::Node}#5::lookup_first_message_for_key]: - Source: 'src/betree.rs', lines 792:4-795:34 *) + Source: 'src/betree.rs', lines 792:4-810:5 *) let betree_Node_lookup_first_message_for_key (key : u64) (msgs : betree_List_t (u64 & betree_Message_t)) : result ((betree_List_t (u64 & betree_Message_t)) & (betree_List_t (u64 & @@ -288,7 +288,7 @@ let rec betree_Node_apply_upserts_loop Ok (v, msgs1) (** [betree::betree::{betree::betree::Node}#5::apply_upserts]: - Source: 'src/betree.rs', lines 820:4-820:94 *) + Source: 'src/betree.rs', lines 820:4-844:5 *) let betree_Node_apply_upserts (msgs : betree_List_t (u64 & betree_Message_t)) (prev : option u64) (key : u64) : @@ -314,13 +314,13 @@ let rec betree_Node_lookup_in_bindings_loop end (** [betree::betree::{betree::betree::Node}#5::lookup_in_bindings]: - Source: 'src/betree.rs', lines 649:4-649:84 *) + Source: 'src/betree.rs', lines 649:4-660:5 *) let betree_Node_lookup_in_bindings (key : u64) (bindings : betree_List_t (u64 & u64)) : result (option u64) = betree_Node_lookup_in_bindings_loop key bindings (** [betree::betree::{betree::betree::Internal}#4::lookup_in_children]: - Source: 'src/betree.rs', lines 414:4-414:63 *) + Source: 'src/betree.rs', lines 414:4-420:5 *) let rec betree_Internal_lookup_in_children (self : betree_Internal_t) (key : u64) (st : state) : Tot (result (state & ((option u64) & betree_Internal_t))) @@ -335,7 +335,7 @@ let rec betree_Internal_lookup_in_children Ok (st1, (o, { self with right = n })) (** [betree::betree::{betree::betree::Node}#5::lookup]: - Source: 'src/betree.rs', lines 712:4-712:58 *) + Source: 'src/betree.rs', lines 712:4-785:5 *) and betree_Node_lookup (self : betree_Node_t) (key : u64) (st : state) : Tot (result (state & ((option u64) & betree_Node_t))) @@ -411,7 +411,7 @@ let rec betree_Node_filter_messages_for_key_loop end (** [betree::betree::{betree::betree::Node}#5::filter_messages_for_key]: - Source: 'src/betree.rs', lines 683:4-683:77 *) + Source: 'src/betree.rs', lines 683:4-692:5 *) let betree_Node_filter_messages_for_key (key : u64) (msgs : betree_List_t (u64 & betree_Message_t)) : result (betree_List_t (u64 & betree_Message_t)) @@ -444,7 +444,7 @@ let rec betree_Node_lookup_first_message_after_key_loop end (** [betree::betree::{betree::betree::Node}#5::lookup_first_message_after_key]: - Source: 'src/betree.rs', lines 694:4-697:34 *) + Source: 'src/betree.rs', lines 694:4-706:5 *) let betree_Node_lookup_first_message_after_key (key : u64) (msgs : betree_List_t (u64 & betree_Message_t)) : result ((betree_List_t (u64 & betree_Message_t)) & (betree_List_t (u64 & @@ -453,7 +453,7 @@ let betree_Node_lookup_first_message_after_key betree_Node_lookup_first_message_after_key_loop key msgs (** [betree::betree::{betree::betree::Node}#5::apply_to_internal]: - Source: 'src/betree.rs', lines 534:4-534:89 *) + Source: 'src/betree.rs', lines 534:4-586:5 *) let betree_Node_apply_to_internal (msgs : betree_List_t (u64 & betree_Message_t)) (key : u64) (new_msg : betree_Message_t) : @@ -530,7 +530,7 @@ let rec betree_Node_apply_messages_to_internal_loop end (** [betree::betree::{betree::betree::Node}#5::apply_messages_to_internal]: - Source: 'src/betree.rs', lines 518:4-521:5 *) + Source: 'src/betree.rs', lines 518:4-526:5 *) let betree_Node_apply_messages_to_internal (msgs : betree_List_t (u64 & betree_Message_t)) (new_msgs : betree_List_t (u64 & betree_Message_t)) : @@ -560,7 +560,7 @@ let rec betree_Node_lookup_mut_in_bindings_loop end (** [betree::betree::{betree::betree::Node}#5::lookup_mut_in_bindings]: - Source: 'src/betree.rs', lines 664:4-667:32 *) + Source: 'src/betree.rs', lines 664:4-677:5 *) let betree_Node_lookup_mut_in_bindings (key : u64) (bindings : betree_List_t (u64 & u64)) : result ((betree_List_t (u64 & u64)) & (betree_List_t (u64 & u64) -> result @@ -569,7 +569,7 @@ let betree_Node_lookup_mut_in_bindings betree_Node_lookup_mut_in_bindings_loop key bindings (** [betree::betree::{betree::betree::Node}#5::apply_to_leaf]: - Source: 'src/betree.rs', lines 476:4-476:87 *) + Source: 'src/betree.rs', lines 476:4-515:5 *) let betree_Node_apply_to_leaf (bindings : betree_List_t (u64 & u64)) (key : u64) (new_msg : betree_Message_t) : @@ -622,7 +622,7 @@ let rec betree_Node_apply_messages_to_leaf_loop end (** [betree::betree::{betree::betree::Node}#5::apply_messages_to_leaf]: - Source: 'src/betree.rs', lines 463:4-466:5 *) + Source: 'src/betree.rs', lines 463:4-471:5 *) let betree_Node_apply_messages_to_leaf (bindings : betree_List_t (u64 & u64)) (new_msgs : betree_List_t (u64 & betree_Message_t)) : @@ -631,7 +631,7 @@ let betree_Node_apply_messages_to_leaf betree_Node_apply_messages_to_leaf_loop bindings new_msgs (** [betree::betree::{betree::betree::Internal}#4::flush]: - Source: 'src/betree.rs', lines 429:4-434:26 *) + Source: 'src/betree.rs', lines 429:4-458:5 *) let rec betree_Internal_flush (self : betree_Internal_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -668,7 +668,7 @@ let rec betree_Internal_flush Ok (st1, (msgs_left, ({ self with right = n }, node_id_cnt1))) (** [betree::betree::{betree::betree::Node}#5::apply_messages]: - Source: 'src/betree.rs', lines 601:4-606:5 *) + Source: 'src/betree.rs', lines 601:4-645:5 *) and betree_Node_apply_messages (self : betree_Node_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) @@ -709,7 +709,7 @@ and betree_Node_apply_messages end (** [betree::betree::{betree::betree::Node}#5::apply]: - Source: 'src/betree.rs', lines 589:4-595:5 *) + Source: 'src/betree.rs', lines 589:4-598:5 *) let betree_Node_apply (self : betree_Node_t) (params : betree_Params_t) (node_id_cnt : betree_NodeIdCounter_t) (key : u64) @@ -723,7 +723,7 @@ let betree_Node_apply Ok (st1, (self1, node_id_cnt1)) (** [betree::betree::{betree::betree::BeTree}#6::new]: - Source: 'src/betree.rs', lines 848:4-848:60 *) + Source: 'src/betree.rs', lines 848:4-862:5 *) let betree_BeTree_new (min_flush_size : u64) (split_size : u64) (st : state) : result (state & betree_BeTree_t) @@ -739,7 +739,7 @@ let betree_BeTree_new }) (** [betree::betree::{betree::betree::BeTree}#6::apply]: - Source: 'src/betree.rs', lines 867:4-867:47 *) + Source: 'src/betree.rs', lines 867:4-870:5 *) let betree_BeTree_apply (self : betree_BeTree_t) (key : u64) (msg : betree_Message_t) (st : state) : result (state & betree_BeTree_t) @@ -750,7 +750,7 @@ let betree_BeTree_apply Ok (st1, { self with node_id_cnt = nic; root = n }) (** [betree::betree::{betree::betree::BeTree}#6::insert]: - Source: 'src/betree.rs', lines 873:4-873:52 *) + Source: 'src/betree.rs', lines 873:4-876:5 *) let betree_BeTree_insert (self : betree_BeTree_t) (key : u64) (value : u64) (st : state) : result (state & betree_BeTree_t) @@ -758,7 +758,7 @@ let betree_BeTree_insert betree_BeTree_apply self key (Betree_Message_Insert value) st (** [betree::betree::{betree::betree::BeTree}#6::delete]: - Source: 'src/betree.rs', lines 879:4-879:38 *) + Source: 'src/betree.rs', lines 879:4-882:5 *) let betree_BeTree_delete (self : betree_BeTree_t) (key : u64) (st : state) : result (state & betree_BeTree_t) @@ -766,7 +766,7 @@ let betree_BeTree_delete betree_BeTree_apply self key Betree_Message_Delete st (** [betree::betree::{betree::betree::BeTree}#6::upsert]: - Source: 'src/betree.rs', lines 885:4-885:59 *) + Source: 'src/betree.rs', lines 885:4-888:5 *) let betree_BeTree_upsert (self : betree_BeTree_t) (key : u64) (upd : betree_UpsertFunState_t) (st : state) : @@ -775,7 +775,7 @@ let betree_BeTree_upsert betree_BeTree_apply self key (Betree_Message_Upsert upd) st (** [betree::betree::{betree::betree::BeTree}#6::lookup]: - Source: 'src/betree.rs', lines 894:4-894:62 *) + Source: 'src/betree.rs', lines 894:4-896:5 *) let betree_BeTree_lookup (self : betree_BeTree_t) (key : u64) (st : state) : result (state & ((option u64) & betree_BeTree_t)) @@ -784,7 +784,7 @@ let betree_BeTree_lookup Ok (st1, (o, { self with root = n })) (** [betree::main]: - Source: 'src/main.rs', lines 4:0-4:9 *) + Source: 'src/main.rs', lines 4:0-4:12 *) let main : result unit = Ok () diff --git a/tests/fstar/betree/Betree.FunsExternal.fsti b/tests/fstar/betree/Betree.FunsExternal.fsti index db96eead2..61caa66d2 100644 --- a/tests/fstar/betree/Betree.FunsExternal.fsti +++ b/tests/fstar/betree/Betree.FunsExternal.fsti @@ -7,24 +7,24 @@ include Betree.Types #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [betree::betree_utils::load_internal_node]: - Source: 'src/betree_utils.rs', lines 98:0-98:63 *) + Source: 'src/betree_utils.rs', lines 98:0-112:1 *) val betree_utils_load_internal_node : u64 -> state -> result (state & (betree_List_t (u64 & betree_Message_t))) (** [betree::betree_utils::store_internal_node]: - Source: 'src/betree_utils.rs', lines 115:0-115:71 *) + Source: 'src/betree_utils.rs', lines 115:0-129:1 *) val betree_utils_store_internal_node : u64 -> betree_List_t (u64 & betree_Message_t) -> state -> result (state & unit) (** [betree::betree_utils::load_leaf_node]: - Source: 'src/betree_utils.rs', lines 132:0-132:55 *) + Source: 'src/betree_utils.rs', lines 132:0-142:1 *) val betree_utils_load_leaf_node : u64 -> state -> result (state & (betree_List_t (u64 & u64))) (** [betree::betree_utils::store_leaf_node]: - Source: 'src/betree_utils.rs', lines 145:0-145:63 *) + Source: 'src/betree_utils.rs', lines 145:0-155:1 *) val betree_utils_store_leaf_node : u64 -> betree_List_t (u64 & u64) -> state -> result (state & unit) diff --git a/tests/fstar/betree/Betree.Types.fst b/tests/fstar/betree/Betree.Types.fst index 6b8e063bc..66b085336 100644 --- a/tests/fstar/betree/Betree.Types.fst +++ b/tests/fstar/betree/Betree.Types.fst @@ -7,51 +7,51 @@ include Betree.TypesExternal #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [betree::betree::List] - Source: 'src/betree.rs', lines 17:0-17:23 *) + Source: 'src/betree.rs', lines 17:0-20:1 *) type betree_List_t (t : Type0) = | Betree_List_Cons : t -> betree_List_t t -> betree_List_t t | Betree_List_Nil : betree_List_t t (** [betree::betree::UpsertFunState] - Source: 'src/betree.rs', lines 63:0-63:23 *) + Source: 'src/betree.rs', lines 63:0-66:1 *) type betree_UpsertFunState_t = | Betree_UpsertFunState_Add : u64 -> betree_UpsertFunState_t | Betree_UpsertFunState_Sub : u64 -> betree_UpsertFunState_t (** [betree::betree::Message] - Source: 'src/betree.rs', lines 69:0-69:23 *) + Source: 'src/betree.rs', lines 69:0-117:1 *) type betree_Message_t = | Betree_Message_Insert : u64 -> betree_Message_t | Betree_Message_Delete : betree_Message_t | Betree_Message_Upsert : betree_UpsertFunState_t -> betree_Message_t (** [betree::betree::Leaf] - Source: 'src/betree.rs', lines 167:0-167:11 *) + Source: 'src/betree.rs', lines 167:0-171:1 *) type betree_Leaf_t = { id : u64; size : u64; } (** [betree::betree::Internal] - Source: 'src/betree.rs', lines 156:0-156:15 *) + Source: 'src/betree.rs', lines 156:0-161:1 *) type betree_Internal_t = { id : u64; pivot : u64; left : betree_Node_t; right : betree_Node_t; } (** [betree::betree::Node] - Source: 'src/betree.rs', lines 179:0-179:9 *) + Source: 'src/betree.rs', lines 179:0-184:1 *) and betree_Node_t = | Betree_Node_Internal : betree_Internal_t -> betree_Node_t | Betree_Node_Leaf : betree_Leaf_t -> betree_Node_t (** [betree::betree::Params] - Source: 'src/betree.rs', lines 187:0-187:13 *) + Source: 'src/betree.rs', lines 187:0-199:1 *) type betree_Params_t = { min_flush_size : u64; split_size : u64; } (** [betree::betree::NodeIdCounter] - Source: 'src/betree.rs', lines 201:0-201:20 *) + Source: 'src/betree.rs', lines 201:0-203:1 *) type betree_NodeIdCounter_t = { next_node_id : u64; } (** [betree::betree::BeTree] - Source: 'src/betree.rs', lines 218:0-218:17 *) + Source: 'src/betree.rs', lines 218:0-225:1 *) type betree_BeTree_t = { params : betree_Params_t; diff --git a/tests/fstar/demo/Demo.fst b/tests/fstar/demo/Demo.fst index f753c9f81..15a0546d7 100644 --- a/tests/fstar/demo/Demo.fst +++ b/tests/fstar/demo/Demo.fst @@ -6,7 +6,7 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [demo::choose]: - Source: 'tests/src/demo.rs', lines 7:0-7:70 *) + Source: 'tests/src/demo.rs', lines 7:0-13:1 *) let choose (t : Type0) (b : bool) (x : t) (y : t) : result (t & (t -> result (t & t))) = if b @@ -14,33 +14,33 @@ let choose else let back = fun ret -> Ok (x, ret) in Ok (y, back) (** [demo::mul2_add1]: - Source: 'tests/src/demo.rs', lines 15:0-15:31 *) + Source: 'tests/src/demo.rs', lines 15:0-17:1 *) let mul2_add1 (x : u32) : result u32 = let* i = u32_add x x in u32_add i 1 (** [demo::use_mul2_add1]: - Source: 'tests/src/demo.rs', lines 19:0-19:43 *) + Source: 'tests/src/demo.rs', lines 19:0-21:1 *) let use_mul2_add1 (x : u32) (y : u32) : result u32 = let* i = mul2_add1 x in u32_add i y (** [demo::incr]: - Source: 'tests/src/demo.rs', lines 23:0-23:31 *) + Source: 'tests/src/demo.rs', lines 23:0-25:1 *) let incr (x : u32) : result u32 = u32_add x 1 (** [demo::use_incr]: - Source: 'tests/src/demo.rs', lines 27:0-27:17 *) + Source: 'tests/src/demo.rs', lines 27:0-32:1 *) let use_incr : result unit = let* x = incr 0 in let* x1 = incr x in let* _ = incr x1 in Ok () (** [demo::CList] - Source: 'tests/src/demo.rs', lines 36:0-36:17 *) + Source: 'tests/src/demo.rs', lines 36:0-39:1 *) type cList_t (t : Type0) = | CList_CCons : t -> cList_t t -> cList_t t | CList_CNil : cList_t t (** [demo::list_nth]: - Source: 'tests/src/demo.rs', lines 41:0-41:56 *) + Source: 'tests/src/demo.rs', lines 41:0-54:1 *) let rec list_nth (t : Type0) (n : nat) (l : cList_t t) (i : u32) : result t = if is_zero n then Fail OutOfFuel @@ -69,12 +69,12 @@ let rec list_nth1_loop end (** [demo::list_nth1]: - Source: 'tests/src/demo.rs', lines 56:0-56:65 *) + Source: 'tests/src/demo.rs', lines 56:0-65:1 *) let list_nth1 (t : Type0) (n : nat) (l : cList_t t) (i : u32) : result t = list_nth1_loop t n l i (** [demo::list_nth_mut]: - Source: 'tests/src/demo.rs', lines 67:0-67:76 *) + Source: 'tests/src/demo.rs', lines 67:0-80:1 *) let rec list_nth_mut (t : Type0) (n : nat) (l : cList_t t) (i : u32) : result (t & (t -> result (cList_t t))) @@ -98,7 +98,7 @@ let rec list_nth_mut end (** [demo::i32_id]: - Source: 'tests/src/demo.rs', lines 82:0-82:28 *) + Source: 'tests/src/demo.rs', lines 82:0-88:1 *) let rec i32_id (n : nat) (i : i32) : result i32 = if is_zero n then Fail OutOfFuel @@ -109,7 +109,7 @@ let rec i32_id (n : nat) (i : i32) : result i32 = else let* i1 = i32_sub i 1 in let* i2 = i32_id n1 i1 in i32_add i2 1 (** [demo::list_tail]: - Source: 'tests/src/demo.rs', lines 90:0-90:64 *) + Source: 'tests/src/demo.rs', lines 90:0-95:1 *) let rec list_tail (t : Type0) (n : nat) (l : cList_t t) : result ((cList_t t) & (cList_t t -> result (cList_t t))) @@ -128,20 +128,20 @@ let rec list_tail end (** Trait declaration: [demo::Counter] - Source: 'tests/src/demo.rs', lines 99:0-99:17 *) + Source: 'tests/src/demo.rs', lines 99:0-101:1 *) noeq type counter_t (self : Type0) = { incr : self -> result (usize & self); } (** [demo::{demo::Counter for usize}::incr]: - Source: 'tests/src/demo.rs', lines 104:4-104:31 *) + Source: 'tests/src/demo.rs', lines 104:4-108:5 *) let counterUsize_incr (self : usize) : result (usize & usize) = let* self1 = usize_add self 1 in Ok (self, self1) (** Trait implementation: [demo::{demo::Counter for usize}] - Source: 'tests/src/demo.rs', lines 103:0-103:22 *) + Source: 'tests/src/demo.rs', lines 103:0-109:1 *) let counterUsize : counter_t usize = { incr = counterUsize_incr; } (** [demo::use_counter]: - Source: 'tests/src/demo.rs', lines 111:0-111:59 *) + Source: 'tests/src/demo.rs', lines 111:0-113:1 *) let use_counter (t : Type0) (counterInst : counter_t t) (cnt : t) : result (usize & t) = counterInst.incr cnt diff --git a/tests/fstar/hashmap/Hashmap.Funs.fst b/tests/fstar/hashmap/Hashmap.Funs.fst index 223bde572..4e4db9f23 100644 --- a/tests/fstar/hashmap/Hashmap.Funs.fst +++ b/tests/fstar/hashmap/Hashmap.Funs.fst @@ -9,7 +9,7 @@ include Hashmap.Clauses #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [hashmap::hash_key]: - Source: 'tests/src/hashmap.rs', lines 38:0-38:32 *) + Source: 'tests/src/hashmap.rs', lines 38:0-43:1 *) let hash_key (k : usize) : result usize = Ok k @@ -28,7 +28,7 @@ let rec hashMap_allocate_slots_loop else Ok slots (** [hashmap::{hashmap::HashMap}::allocate_slots]: - Source: 'tests/src/hashmap.rs', lines 63:4-63:78 *) + Source: 'tests/src/hashmap.rs', lines 63:4-69:5 *) let hashMap_allocate_slots (t : Type0) (slots : alloc_vec_Vec (aList_t t)) (n : usize) : result (alloc_vec_Vec (aList_t t)) @@ -36,7 +36,7 @@ let hashMap_allocate_slots hashMap_allocate_slots_loop t slots n (** [hashmap::{hashmap::HashMap}::new_with_capacity]: - Source: 'tests/src/hashmap.rs', lines 72:4-76:13 *) + Source: 'tests/src/hashmap.rs', lines 72:4-87:5 *) let hashMap_new_with_capacity (t : Type0) (capacity : usize) (max_load_dividend : usize) (max_load_divisor : usize) : @@ -56,7 +56,7 @@ let hashMap_new_with_capacity } (** [hashmap::{hashmap::HashMap}::new]: - Source: 'tests/src/hashmap.rs', lines 89:4-89:24 *) + Source: 'tests/src/hashmap.rs', lines 89:4-92:5 *) let hashMap_new (t : Type0) : result (hashMap_t t) = hashMap_new_with_capacity t 32 4 5 @@ -79,13 +79,13 @@ let rec hashMap_clear_loop else Ok slots (** [hashmap::{hashmap::HashMap}::clear]: - Source: 'tests/src/hashmap.rs', lines 94:4-94:27 *) + Source: 'tests/src/hashmap.rs', lines 94:4-102:5 *) let hashMap_clear (t : Type0) (self : hashMap_t t) : result (hashMap_t t) = let* hm = hashMap_clear_loop t self.slots 0 in Ok { self with num_entries = 0; slots = hm } (** [hashmap::{hashmap::HashMap}::len]: - Source: 'tests/src/hashmap.rs', lines 104:4-104:30 *) + Source: 'tests/src/hashmap.rs', lines 104:4-106:5 *) let hashMap_len (t : Type0) (self : hashMap_t t) : result usize = Ok self.num_entries @@ -107,7 +107,7 @@ let rec hashMap_insert_in_list_loop end (** [hashmap::{hashmap::HashMap}::insert_in_list]: - Source: 'tests/src/hashmap.rs', lines 111:4-111:72 *) + Source: 'tests/src/hashmap.rs', lines 111:4-128:5 *) let hashMap_insert_in_list (t : Type0) (key : usize) (value : t) (ls : aList_t t) : result (bool & (aList_t t)) @@ -115,7 +115,7 @@ let hashMap_insert_in_list hashMap_insert_in_list_loop t key value ls (** [hashmap::{hashmap::HashMap}::insert_no_resize]: - Source: 'tests/src/hashmap.rs', lines 131:4-131:54 *) + Source: 'tests/src/hashmap.rs', lines 131:4-139:5 *) let hashMap_insert_no_resize (t : Type0) (self : hashMap_t t) (key : usize) (value : t) : result (hashMap_t t) @@ -150,7 +150,7 @@ let rec hashMap_move_elements_from_list_loop end (** [hashmap::{hashmap::HashMap}::move_elements_from_list]: - Source: 'tests/src/hashmap.rs', lines 194:4-194:73 *) + Source: 'tests/src/hashmap.rs', lines 194:4-207:5 *) let hashMap_move_elements_from_list (t : Type0) (ntable : hashMap_t t) (ls : aList_t t) : result (hashMap_t t) = hashMap_move_elements_from_list_loop t ntable ls @@ -177,7 +177,7 @@ let rec hashMap_move_elements_loop else Ok (ntable, slots) (** [hashmap::{hashmap::HashMap}::move_elements]: - Source: 'tests/src/hashmap.rs', lines 181:4-181:82 *) + Source: 'tests/src/hashmap.rs', lines 181:4-191:5 *) let hashMap_move_elements (t : Type0) (ntable : hashMap_t t) (slots : alloc_vec_Vec (aList_t t)) : result ((hashMap_t t) & (alloc_vec_Vec (aList_t t))) @@ -185,7 +185,7 @@ let hashMap_move_elements hashMap_move_elements_loop t ntable slots 0 (** [hashmap::{hashmap::HashMap}::try_resize]: - Source: 'tests/src/hashmap.rs', lines 154:4-154:28 *) + Source: 'tests/src/hashmap.rs', lines 154:4-177:5 *) let hashMap_try_resize (t : Type0) (self : hashMap_t t) : result (hashMap_t t) = let capacity = alloc_vec_Vec_len (aList_t t) self.slots in @@ -209,7 +209,7 @@ let hashMap_try_resize else Ok { self with max_load_factor = (i, i1); saturated = true } (** [hashmap::{hashmap::HashMap}::insert]: - Source: 'tests/src/hashmap.rs', lines 143:4-143:48 *) + Source: 'tests/src/hashmap.rs', lines 143:4-150:5 *) let hashMap_insert (t : Type0) (self : hashMap_t t) (key : usize) (value : t) : result (hashMap_t t) @@ -237,13 +237,13 @@ let rec hashMap_contains_key_in_list_loop end (** [hashmap::{hashmap::HashMap}::contains_key_in_list]: - Source: 'tests/src/hashmap.rs', lines 217:4-217:69 *) + Source: 'tests/src/hashmap.rs', lines 217:4-230:5 *) let hashMap_contains_key_in_list (t : Type0) (key : usize) (ls : aList_t t) : result bool = hashMap_contains_key_in_list_loop t key ls (** [hashmap::{hashmap::HashMap}::contains_key]: - Source: 'tests/src/hashmap.rs', lines 210:4-210:49 *) + Source: 'tests/src/hashmap.rs', lines 210:4-214:5 *) let hashMap_contains_key (t : Type0) (self : hashMap_t t) (key : usize) : result bool = let* hash = hash_key key in @@ -268,12 +268,12 @@ let rec hashMap_get_in_list_loop end (** [hashmap::{hashmap::HashMap}::get_in_list]: - Source: 'tests/src/hashmap.rs', lines 235:4-235:71 *) + Source: 'tests/src/hashmap.rs', lines 235:4-248:5 *) let hashMap_get_in_list (t : Type0) (key : usize) (ls : aList_t t) : result t = hashMap_get_in_list_loop t key ls (** [hashmap::{hashmap::HashMap}::get]: - Source: 'tests/src/hashmap.rs', lines 250:4-250:55 *) + Source: 'tests/src/hashmap.rs', lines 250:4-254:5 *) let hashMap_get (t : Type0) (self : hashMap_t t) (key : usize) : result t = let* hash = hash_key key in let i = alloc_vec_Vec_len (aList_t t) self.slots in @@ -304,7 +304,7 @@ let rec hashMap_get_mut_in_list_loop end (** [hashmap::{hashmap::HashMap}::get_mut_in_list]: - Source: 'tests/src/hashmap.rs', lines 256:4-256:87 *) + Source: 'tests/src/hashmap.rs', lines 256:4-265:5 *) let hashMap_get_mut_in_list (t : Type0) (ls : aList_t t) (key : usize) : result (t & (t -> result (aList_t t))) @@ -312,7 +312,7 @@ let hashMap_get_mut_in_list hashMap_get_mut_in_list_loop t ls key (** [hashmap::{hashmap::HashMap}::get_mut]: - Source: 'tests/src/hashmap.rs', lines 268:4-268:67 *) + Source: 'tests/src/hashmap.rs', lines 268:4-272:5 *) let hashMap_get_mut (t : Type0) (self : hashMap_t t) (key : usize) : result (t & (t -> result (hashMap_t t))) @@ -356,7 +356,7 @@ let rec hashMap_remove_from_list_loop end (** [hashmap::{hashmap::HashMap}::remove_from_list]: - Source: 'tests/src/hashmap.rs', lines 276:4-276:70 *) + Source: 'tests/src/hashmap.rs', lines 276:4-302:5 *) let hashMap_remove_from_list (t : Type0) (key : usize) (ls : aList_t t) : result ((option t) & (aList_t t)) @@ -364,7 +364,7 @@ let hashMap_remove_from_list hashMap_remove_from_list_loop t key ls (** [hashmap::{hashmap::HashMap}::remove]: - Source: 'tests/src/hashmap.rs', lines 305:4-305:52 *) + Source: 'tests/src/hashmap.rs', lines 305:4-317:5 *) let hashMap_remove (t : Type0) (self : hashMap_t t) (key : usize) : result ((option t) & (hashMap_t t)) @@ -386,7 +386,7 @@ let hashMap_remove end (** [hashmap::insert_on_disk]: - Source: 'tests/src/hashmap.rs', lines 336:0-336:43 *) + Source: 'tests/src/hashmap.rs', lines 336:0-343:1 *) let insert_on_disk (key : usize) (value : u64) (st : state) : result (state & unit) = let* (st1, hm) = utils_deserialize st in @@ -394,7 +394,7 @@ let insert_on_disk utils_serialize hm1 st1 (** [hashmap::test1]: - Source: 'tests/src/hashmap.rs', lines 351:0-351:10 *) + Source: 'tests/src/hashmap.rs', lines 351:0-383:1 *) let test1 : result unit = let* hm = hashMap_new u64 in let* hm1 = hashMap_insert u64 hm 0 42 in diff --git a/tests/fstar/hashmap/Hashmap.FunsExternal.fsti b/tests/fstar/hashmap/Hashmap.FunsExternal.fsti index 9362150d3..c7a3570ab 100644 --- a/tests/fstar/hashmap/Hashmap.FunsExternal.fsti +++ b/tests/fstar/hashmap/Hashmap.FunsExternal.fsti @@ -7,10 +7,10 @@ include Hashmap.Types #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [hashmap::utils::deserialize]: - Source: 'tests/src/hashmap.rs', lines 331:4-331:47 *) + Source: 'tests/src/hashmap.rs', lines 331:4-333:5 *) val utils_deserialize : state -> result (state & (hashMap_t u64)) (** [hashmap::utils::serialize]: - Source: 'tests/src/hashmap.rs', lines 326:4-326:46 *) + Source: 'tests/src/hashmap.rs', lines 326:4-328:5 *) val utils_serialize : hashMap_t u64 -> state -> result (state & unit) diff --git a/tests/fstar/hashmap/Hashmap.Types.fst b/tests/fstar/hashmap/Hashmap.Types.fst index accc5e21e..2831fed29 100644 --- a/tests/fstar/hashmap/Hashmap.Types.fst +++ b/tests/fstar/hashmap/Hashmap.Types.fst @@ -7,13 +7,13 @@ include Hashmap.TypesExternal #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [hashmap::AList] - Source: 'tests/src/hashmap.rs', lines 30:0-30:17 *) + Source: 'tests/src/hashmap.rs', lines 30:0-33:1 *) type aList_t (t : Type0) = | AList_Cons : usize -> t -> aList_t t -> aList_t t | AList_Nil : aList_t t (** [hashmap::HashMap] - Source: 'tests/src/hashmap.rs', lines 46:0-46:21 *) + Source: 'tests/src/hashmap.rs', lines 46:0-58:1 *) type hashMap_t (t : Type0) = { num_entries : usize; diff --git a/tests/fstar/misc/Bitwise.fst b/tests/fstar/misc/Bitwise.fst index 7945e142c..b7d2f3dbc 100644 --- a/tests/fstar/misc/Bitwise.fst +++ b/tests/fstar/misc/Bitwise.fst @@ -6,27 +6,27 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [bitwise::shift_u32]: - Source: 'tests/src/bitwise.rs', lines 5:0-5:31 *) + Source: 'tests/src/bitwise.rs', lines 5:0-10:1 *) let shift_u32 (a : u32) : result u32 = let* t = u32_shr #Usize a 16 in u32_shl #Usize t 16 (** [bitwise::shift_i32]: - Source: 'tests/src/bitwise.rs', lines 12:0-12:31 *) + Source: 'tests/src/bitwise.rs', lines 12:0-17:1 *) let shift_i32 (a : i32) : result i32 = let* t = i32_shr #Isize a 16 in i32_shl #Isize t 16 (** [bitwise::xor_u32]: - Source: 'tests/src/bitwise.rs', lines 19:0-19:37 *) + Source: 'tests/src/bitwise.rs', lines 19:0-21:1 *) let xor_u32 (a : u32) (b : u32) : result u32 = Ok (u32_xor a b) (** [bitwise::or_u32]: - Source: 'tests/src/bitwise.rs', lines 23:0-23:36 *) + Source: 'tests/src/bitwise.rs', lines 23:0-25:1 *) let or_u32 (a : u32) (b : u32) : result u32 = Ok (u32_or a b) (** [bitwise::and_u32]: - Source: 'tests/src/bitwise.rs', lines 27:0-27:37 *) + Source: 'tests/src/bitwise.rs', lines 27:0-29:1 *) let and_u32 (a : u32) (b : u32) : result u32 = Ok (u32_and a b) diff --git a/tests/fstar/misc/Constants.fst b/tests/fstar/misc/Constants.fst index ac2638916..9fb4598c2 100644 --- a/tests/fstar/misc/Constants.fst +++ b/tests/fstar/misc/Constants.fst @@ -6,154 +6,154 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [constants::X0] - Source: 'tests/src/constants.rs', lines 8:0-8:17 *) + Source: 'tests/src/constants.rs', lines 8:0-8:22 *) let x0_body : result u32 = Ok 0 let x0 : u32 = eval_global x0_body (** [constants::X1] - Source: 'tests/src/constants.rs', lines 10:0-10:17 *) + Source: 'tests/src/constants.rs', lines 10:0-10:29 *) let x1_body : result u32 = Ok core_u32_max let x1 : u32 = eval_global x1_body (** [constants::X2] - Source: 'tests/src/constants.rs', lines 13:0-13:17 *) + Source: 'tests/src/constants.rs', lines 13:0-16:2 *) let x2_body : result u32 = Ok 3 let x2 : u32 = eval_global x2_body (** [constants::incr]: - Source: 'tests/src/constants.rs', lines 20:0-20:32 *) + Source: 'tests/src/constants.rs', lines 20:0-22:1 *) let incr (n : u32) : result u32 = u32_add n 1 (** [constants::X3] - Source: 'tests/src/constants.rs', lines 18:0-18:17 *) + Source: 'tests/src/constants.rs', lines 18:0-18:29 *) let x3_body : result u32 = incr 32 let x3 : u32 = eval_global x3_body (** [constants::mk_pair0]: - Source: 'tests/src/constants.rs', lines 26:0-26:51 *) + Source: 'tests/src/constants.rs', lines 26:0-28:1 *) let mk_pair0 (x : u32) (y1 : u32) : result (u32 & u32) = Ok (x, y1) (** [constants::Pair] - Source: 'tests/src/constants.rs', lines 39:0-39:23 *) + Source: 'tests/src/constants.rs', lines 39:0-42:1 *) type pair_t (t1 t2 : Type0) = { x : t1; y : t2; } (** [constants::mk_pair1]: - Source: 'tests/src/constants.rs', lines 30:0-30:55 *) + Source: 'tests/src/constants.rs', lines 30:0-32:1 *) let mk_pair1 (x : u32) (y1 : u32) : result (pair_t u32 u32) = Ok { x = x; y = y1 } (** [constants::P0] - Source: 'tests/src/constants.rs', lines 34:0-34:24 *) + Source: 'tests/src/constants.rs', lines 34:0-34:42 *) let p0_body : result (u32 & u32) = mk_pair0 0 1 let p0 : (u32 & u32) = eval_global p0_body (** [constants::P1] - Source: 'tests/src/constants.rs', lines 35:0-35:28 *) + Source: 'tests/src/constants.rs', lines 35:0-35:46 *) let p1_body : result (pair_t u32 u32) = mk_pair1 0 1 let p1 : pair_t u32 u32 = eval_global p1_body (** [constants::P2] - Source: 'tests/src/constants.rs', lines 36:0-36:24 *) + Source: 'tests/src/constants.rs', lines 36:0-36:34 *) let p2_body : result (u32 & u32) = Ok (0, 1) let p2 : (u32 & u32) = eval_global p2_body (** [constants::P3] - Source: 'tests/src/constants.rs', lines 37:0-37:28 *) + Source: 'tests/src/constants.rs', lines 37:0-37:51 *) let p3_body : result (pair_t u32 u32) = Ok { x = 0; y = 1 } let p3 : pair_t u32 u32 = eval_global p3_body (** [constants::Wrap] - Source: 'tests/src/constants.rs', lines 52:0-52:18 *) + Source: 'tests/src/constants.rs', lines 52:0-54:1 *) type wrap_t (t : Type0) = { value : t; } (** [constants::{constants::Wrap}::new]: - Source: 'tests/src/constants.rs', lines 57:4-57:41 *) + Source: 'tests/src/constants.rs', lines 57:4-59:5 *) let wrap_new (t : Type0) (value : t) : result (wrap_t t) = Ok { value = value } (** [constants::Y] - Source: 'tests/src/constants.rs', lines 44:0-44:22 *) + Source: 'tests/src/constants.rs', lines 44:0-44:38 *) let y_body : result (wrap_t i32) = wrap_new i32 2 let y : wrap_t i32 = eval_global y_body (** [constants::unwrap_y]: - Source: 'tests/src/constants.rs', lines 46:0-46:30 *) + Source: 'tests/src/constants.rs', lines 46:0-48:1 *) let unwrap_y : result i32 = Ok y.value (** [constants::YVAL] - Source: 'tests/src/constants.rs', lines 50:0-50:19 *) + Source: 'tests/src/constants.rs', lines 50:0-50:33 *) let yval_body : result i32 = unwrap_y let yval : i32 = eval_global yval_body (** [constants::get_z1::Z1] - Source: 'tests/src/constants.rs', lines 65:4-65:17 *) + Source: 'tests/src/constants.rs', lines 65:4-65:22 *) let get_z1_z1_body : result i32 = Ok 3 let get_z1_z1 : i32 = eval_global get_z1_z1_body (** [constants::get_z1]: - Source: 'tests/src/constants.rs', lines 64:0-64:28 *) + Source: 'tests/src/constants.rs', lines 64:0-67:1 *) let get_z1 : result i32 = Ok get_z1_z1 (** [constants::add]: - Source: 'tests/src/constants.rs', lines 69:0-69:39 *) + Source: 'tests/src/constants.rs', lines 69:0-71:1 *) let add (a : i32) (b : i32) : result i32 = i32_add a b (** [constants::Q1] - Source: 'tests/src/constants.rs', lines 77:0-77:17 *) + Source: 'tests/src/constants.rs', lines 77:0-77:22 *) let q1_body : result i32 = Ok 5 let q1 : i32 = eval_global q1_body (** [constants::Q2] - Source: 'tests/src/constants.rs', lines 78:0-78:17 *) + Source: 'tests/src/constants.rs', lines 78:0-78:23 *) let q2_body : result i32 = Ok q1 let q2 : i32 = eval_global q2_body (** [constants::Q3] - Source: 'tests/src/constants.rs', lines 79:0-79:17 *) + Source: 'tests/src/constants.rs', lines 79:0-79:31 *) let q3_body : result i32 = add q2 3 let q3 : i32 = eval_global q3_body (** [constants::get_z2]: - Source: 'tests/src/constants.rs', lines 73:0-73:28 *) + Source: 'tests/src/constants.rs', lines 73:0-75:1 *) let get_z2 : result i32 = let* i = get_z1 in let* i1 = add i q3 in add q1 i1 (** [constants::S1] - Source: 'tests/src/constants.rs', lines 83:0-83:18 *) + Source: 'tests/src/constants.rs', lines 83:0-83:23 *) let s1_body : result u32 = Ok 6 let s1 : u32 = eval_global s1_body (** [constants::S2] - Source: 'tests/src/constants.rs', lines 84:0-84:18 *) + Source: 'tests/src/constants.rs', lines 84:0-84:30 *) let s2_body : result u32 = incr s1 let s2 : u32 = eval_global s2_body (** [constants::S3] - Source: 'tests/src/constants.rs', lines 85:0-85:29 *) + Source: 'tests/src/constants.rs', lines 85:0-85:35 *) let s3_body : result (pair_t u32 u32) = Ok p3 let s3 : pair_t u32 u32 = eval_global s3_body (** [constants::S4] - Source: 'tests/src/constants.rs', lines 86:0-86:29 *) + Source: 'tests/src/constants.rs', lines 86:0-86:47 *) let s4_body : result (pair_t u32 u32) = mk_pair1 7 8 let s4 : pair_t u32 u32 = eval_global s4_body (** [constants::V] - Source: 'tests/src/constants.rs', lines 89:0-89:31 *) + Source: 'tests/src/constants.rs', lines 89:0-91:1 *) type v_t (t : Type0) (n : usize) = { x : array t n; } (** [constants::{constants::V}#1::LEN] - Source: 'tests/src/constants.rs', lines 94:4-94:24 *) + Source: 'tests/src/constants.rs', lines 94:4-94:29 *) let v_len_body (t : Type0) (n : usize) : result usize = Ok n let v_len (t : Type0) (n : usize) : usize = eval_global (v_len_body t n) (** [constants::use_v]: - Source: 'tests/src/constants.rs', lines 97:0-97:42 *) + Source: 'tests/src/constants.rs', lines 97:0-99:1 *) let use_v (t : Type0) (n : usize) : result usize = Ok (v_len t n) diff --git a/tests/fstar/misc/External.Funs.fst b/tests/fstar/misc/External.Funs.fst index 80add13fc..ed74ba89e 100644 --- a/tests/fstar/misc/External.Funs.fst +++ b/tests/fstar/misc/External.Funs.fst @@ -15,12 +15,12 @@ let core_marker_CopyU32 : core_marker_Copy_t u32 = { } (** [external::use_get]: - Source: 'tests/src/external.rs', lines 9:0-9:37 *) + Source: 'tests/src/external.rs', lines 9:0-11:1 *) let use_get (rc : core_cell_Cell_t u32) (st : state) : result (state & u32) = core_cell_Cell_get u32 core_marker_CopyU32 rc st (** [external::incr]: - Source: 'tests/src/external.rs', lines 13:0-13:31 *) + Source: 'tests/src/external.rs', lines 13:0-15:1 *) let incr (rc : core_cell_Cell_t u32) (st : state) : result (state & (core_cell_Cell_t u32)) diff --git a/tests/fstar/misc/InfiniteLoop.fst b/tests/fstar/misc/InfiniteLoop.fst index 4e7c8c060..64995eaef 100644 --- a/tests/fstar/misc/InfiniteLoop.fst +++ b/tests/fstar/misc/InfiniteLoop.fst @@ -6,7 +6,7 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [infinite_loop::bar]: - Source: 'tests/src/infinite-loop.rs', lines 4:0-4:8 *) + Source: 'tests/src/infinite-loop.rs', lines 4:0-4:11 *) let bar : result unit = Ok () @@ -18,7 +18,7 @@ let rec foo_loop (n : nat) : result unit = else let n1 = decrease n in let* _ = bar in foo_loop n1 (** [infinite_loop::foo]: - Source: 'tests/src/infinite-loop.rs', lines 6:0-6:8 *) + Source: 'tests/src/infinite-loop.rs', lines 6:0-10:1 *) let foo (n : nat) : result unit = foo_loop n diff --git a/tests/fstar/misc/Issue194RecursiveStructProjector.fst b/tests/fstar/misc/Issue194RecursiveStructProjector.fst index 76368f04c..ac1a985e9 100644 --- a/tests/fstar/misc/Issue194RecursiveStructProjector.fst +++ b/tests/fstar/misc/Issue194RecursiveStructProjector.fst @@ -6,19 +6,19 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [issue_194_recursive_struct_projector::AVLNode] - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-2:17 *) + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-6:1 *) type aVLNode_t (t : Type0) = { value : t; left : option (aVLNode_t t); right : option (aVLNode_t t); } (** [issue_194_recursive_struct_projector::get_val]: - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-10:33 *) + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-12:1 *) let get_val (t : Type0) (x : aVLNode_t t) : result t = Ok x.value (** [issue_194_recursive_struct_projector::get_left]: - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-14:43 *) + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-16:1 *) let get_left (t : Type0) (x : aVLNode_t t) : result (option (aVLNode_t t)) = Ok x.left diff --git a/tests/fstar/misc/Loops.Funs.fst b/tests/fstar/misc/Loops.Funs.fst index b9d4468ae..ce450e659 100644 --- a/tests/fstar/misc/Loops.Funs.fst +++ b/tests/fstar/misc/Loops.Funs.fst @@ -18,7 +18,7 @@ let rec sum_loop else u32_mul s 2 (** [loops::sum]: - Source: 'tests/src/loops.rs', lines 8:0-8:27 *) + Source: 'tests/src/loops.rs', lines 8:0-18:1 *) let sum (max : u32) : result u32 = sum_loop max 0 0 @@ -36,7 +36,7 @@ let rec sum_with_mut_borrows_loop else u32_mul s 2 (** [loops::sum_with_mut_borrows]: - Source: 'tests/src/loops.rs', lines 23:0-23:44 *) + Source: 'tests/src/loops.rs', lines 23:0-35:1 *) let sum_with_mut_borrows (max : u32) : result u32 = sum_with_mut_borrows_loop max 0 0 @@ -54,7 +54,7 @@ let rec sum_with_shared_borrows_loop else u32_mul s 2 (** [loops::sum_with_shared_borrows]: - Source: 'tests/src/loops.rs', lines 38:0-38:47 *) + Source: 'tests/src/loops.rs', lines 38:0-52:1 *) let sum_with_shared_borrows (max : u32) : result u32 = sum_with_shared_borrows_loop max 0 0 @@ -73,7 +73,7 @@ let rec sum_array_loop else Ok s (** [loops::sum_array]: - Source: 'tests/src/loops.rs', lines 54:0-54:52 *) + Source: 'tests/src/loops.rs', lines 54:0-62:1 *) let sum_array (n : usize) (a : array u32 n) : result u32 = sum_array_loop n a 0 0 @@ -95,7 +95,7 @@ let rec clear_loop else Ok v (** [loops::clear]: - Source: 'tests/src/loops.rs', lines 66:0-66:30 *) + Source: 'tests/src/loops.rs', lines 66:0-72:1 *) let clear (v : alloc_vec_Vec u32) : result (alloc_vec_Vec u32) = clear_loop v 0 @@ -111,7 +111,7 @@ let rec list_mem_loop end (** [loops::list_mem]: - Source: 'tests/src/loops.rs', lines 80:0-80:52 *) + Source: 'tests/src/loops.rs', lines 80:0-89:1 *) let list_mem (x : u32) (ls : list_t u32) : result bool = list_mem_loop x ls @@ -135,7 +135,7 @@ let rec list_nth_mut_loop_loop end (** [loops::list_nth_mut_loop]: - Source: 'tests/src/loops.rs', lines 92:0-92:71 *) + Source: 'tests/src/loops.rs', lines 92:0-102:1 *) let list_nth_mut_loop (t : Type0) (ls : list_t t) (i : u32) : result (t & (t -> result (list_t t))) @@ -157,7 +157,7 @@ let rec list_nth_shared_loop_loop end (** [loops::list_nth_shared_loop]: - Source: 'tests/src/loops.rs', lines 105:0-105:66 *) + Source: 'tests/src/loops.rs', lines 105:0-115:1 *) let list_nth_shared_loop (t : Type0) (ls : list_t t) (i : u32) : result t = list_nth_shared_loop_loop t ls i @@ -180,7 +180,7 @@ let rec get_elem_mut_loop end (** [loops::get_elem_mut]: - Source: 'tests/src/loops.rs', lines 117:0-117:73 *) + Source: 'tests/src/loops.rs', lines 117:0-131:1 *) let get_elem_mut (slots : alloc_vec_Vec (list_t usize)) (x : usize) : result (usize & (usize -> result (alloc_vec_Vec (list_t usize)))) @@ -204,7 +204,7 @@ let rec get_elem_shared_loop end (** [loops::get_elem_shared]: - Source: 'tests/src/loops.rs', lines 133:0-133:68 *) + Source: 'tests/src/loops.rs', lines 133:0-147:1 *) let get_elem_shared (slots : alloc_vec_Vec (list_t usize)) (x : usize) : result usize = let* ls = @@ -213,7 +213,7 @@ let get_elem_shared get_elem_shared_loop x ls (** [loops::id_mut]: - Source: 'tests/src/loops.rs', lines 149:0-149:50 *) + Source: 'tests/src/loops.rs', lines 149:0-151:1 *) let id_mut (t : Type0) (ls : list_t t) : result ((list_t t) & (list_t t -> result (list_t t))) @@ -221,7 +221,7 @@ let id_mut Ok (ls, Ok) (** [loops::id_shared]: - Source: 'tests/src/loops.rs', lines 153:0-153:45 *) + Source: 'tests/src/loops.rs', lines 153:0-155:1 *) let id_shared (t : Type0) (ls : list_t t) : result (list_t t) = Ok ls @@ -245,7 +245,7 @@ let rec list_nth_mut_loop_with_id_loop end (** [loops::list_nth_mut_loop_with_id]: - Source: 'tests/src/loops.rs', lines 158:0-158:75 *) + Source: 'tests/src/loops.rs', lines 158:0-169:1 *) let list_nth_mut_loop_with_id (t : Type0) (ls : list_t t) (i : u32) : result (t & (t -> result (list_t t))) @@ -271,7 +271,7 @@ let rec list_nth_shared_loop_with_id_loop end (** [loops::list_nth_shared_loop_with_id]: - Source: 'tests/src/loops.rs', lines 172:0-172:70 *) + Source: 'tests/src/loops.rs', lines 172:0-183:1 *) let list_nth_shared_loop_with_id (t : Type0) (ls : list_t t) (i : u32) : result t = let* ls1 = id_shared t ls in list_nth_shared_loop_with_id_loop t i ls1 @@ -306,7 +306,7 @@ let rec list_nth_mut_loop_pair_loop end (** [loops::list_nth_mut_loop_pair]: - Source: 'tests/src/loops.rs', lines 188:0-192:27 *) + Source: 'tests/src/loops.rs', lines 188:0-209:1 *) let list_nth_mut_loop_pair (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result ((t & t) & (t -> result (list_t t)) & (t -> result (list_t t))) @@ -333,7 +333,7 @@ let rec list_nth_shared_loop_pair_loop end (** [loops::list_nth_shared_loop_pair]: - Source: 'tests/src/loops.rs', lines 212:0-216:19 *) + Source: 'tests/src/loops.rs', lines 212:0-233:1 *) let list_nth_shared_loop_pair (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result (t & t) = list_nth_shared_loop_pair_loop t ls0 ls1 i @@ -369,7 +369,7 @@ let rec list_nth_mut_loop_pair_merge_loop end (** [loops::list_nth_mut_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 237:0-241:27 *) + Source: 'tests/src/loops.rs', lines 237:0-252:1 *) let list_nth_mut_loop_pair_merge (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result ((t & t) & ((t & t) -> result ((list_t t) & (list_t t)))) @@ -398,7 +398,7 @@ let rec list_nth_shared_loop_pair_merge_loop end (** [loops::list_nth_shared_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 255:0-259:19 *) + Source: 'tests/src/loops.rs', lines 255:0-270:1 *) let list_nth_shared_loop_pair_merge (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result (t & t) = list_nth_shared_loop_pair_merge_loop t ls0 ls1 i @@ -428,7 +428,7 @@ let rec list_nth_mut_shared_loop_pair_loop end (** [loops::list_nth_mut_shared_loop_pair]: - Source: 'tests/src/loops.rs', lines 273:0-277:23 *) + Source: 'tests/src/loops.rs', lines 273:0-288:1 *) let list_nth_mut_shared_loop_pair (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result ((t & t) & (t -> result (list_t t))) @@ -461,7 +461,7 @@ let rec list_nth_mut_shared_loop_pair_merge_loop end (** [loops::list_nth_mut_shared_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 292:0-296:23 *) + Source: 'tests/src/loops.rs', lines 292:0-307:1 *) let list_nth_mut_shared_loop_pair_merge (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result ((t & t) & (t -> result (list_t t))) @@ -493,7 +493,7 @@ let rec list_nth_shared_mut_loop_pair_loop end (** [loops::list_nth_shared_mut_loop_pair]: - Source: 'tests/src/loops.rs', lines 311:0-315:23 *) + Source: 'tests/src/loops.rs', lines 311:0-326:1 *) let list_nth_shared_mut_loop_pair (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result ((t & t) & (t -> result (list_t t))) @@ -526,7 +526,7 @@ let rec list_nth_shared_mut_loop_pair_merge_loop end (** [loops::list_nth_shared_mut_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 330:0-334:23 *) + Source: 'tests/src/loops.rs', lines 330:0-345:1 *) let list_nth_shared_mut_loop_pair_merge (t : Type0) (ls0 : list_t t) (ls1 : list_t t) (i : u32) : result ((t & t) & (t -> result (list_t t))) @@ -544,7 +544,7 @@ let rec ignore_input_mut_borrow_loop else Ok () (** [loops::ignore_input_mut_borrow]: - Source: 'tests/src/loops.rs', lines 349:0-349:56 *) + Source: 'tests/src/loops.rs', lines 349:0-353:1 *) let ignore_input_mut_borrow (_a : u32) (i : u32) : result u32 = let* _ = ignore_input_mut_borrow_loop i in Ok _a @@ -559,7 +559,7 @@ let rec incr_ignore_input_mut_borrow_loop else Ok () (** [loops::incr_ignore_input_mut_borrow]: - Source: 'tests/src/loops.rs', lines 357:0-357:60 *) + Source: 'tests/src/loops.rs', lines 357:0-362:1 *) let incr_ignore_input_mut_borrow (a : u32) (i : u32) : result u32 = let* a1 = u32_add a 1 in let* _ = incr_ignore_input_mut_borrow_loop i in @@ -576,7 +576,7 @@ let rec ignore_input_shared_borrow_loop else Ok () (** [loops::ignore_input_shared_borrow]: - Source: 'tests/src/loops.rs', lines 366:0-366:59 *) + Source: 'tests/src/loops.rs', lines 366:0-370:1 *) let ignore_input_shared_borrow (_a : u32) (i : u32) : result u32 = let* _ = ignore_input_shared_borrow_loop i in Ok _a diff --git a/tests/fstar/misc/Loops.Types.fst b/tests/fstar/misc/Loops.Types.fst index c9e2f1cfb..2753e511b 100644 --- a/tests/fstar/misc/Loops.Types.fst +++ b/tests/fstar/misc/Loops.Types.fst @@ -6,7 +6,7 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [loops::List] - Source: 'tests/src/loops.rs', lines 74:0-74:16 *) + Source: 'tests/src/loops.rs', lines 74:0-77:1 *) type list_t (t : Type0) = | List_Cons : t -> list_t t -> list_t t | List_Nil : list_t t diff --git a/tests/fstar/misc/Matches.fst b/tests/fstar/misc/Matches.fst index 06a9b6dfe..1c82f5baa 100644 --- a/tests/fstar/misc/Matches.fst +++ b/tests/fstar/misc/Matches.fst @@ -6,7 +6,7 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [matches::match_u32]: - Source: 'tests/src/matches.rs', lines 4:0-4:27 *) + Source: 'tests/src/matches.rs', lines 4:0-10:1 *) let match_u32 (x : u32) : result u32 = begin match x with | 0 -> Ok 0 | 1 -> Ok 1 | _ -> Ok 2 end diff --git a/tests/fstar/misc/NoNestedBorrows.fst b/tests/fstar/misc/NoNestedBorrows.fst index e3b4e11b4..ce1b01b0e 100644 --- a/tests/fstar/misc/NoNestedBorrows.fst +++ b/tests/fstar/misc/NoNestedBorrows.fst @@ -6,54 +6,54 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [no_nested_borrows::Pair] - Source: 'tests/src/no_nested_borrows.rs', lines 7:0-7:23 *) + Source: 'tests/src/no_nested_borrows.rs', lines 7:0-10:1 *) type pair_t (t1 t2 : Type0) = { x : t1; y : t2; } (** [no_nested_borrows::List] - Source: 'tests/src/no_nested_borrows.rs', lines 12:0-12:16 *) + Source: 'tests/src/no_nested_borrows.rs', lines 12:0-15:1 *) type list_t (t : Type0) = | List_Cons : t -> list_t t -> list_t t | List_Nil : list_t t (** [no_nested_borrows::One] - Source: 'tests/src/no_nested_borrows.rs', lines 23:0-23:16 *) + Source: 'tests/src/no_nested_borrows.rs', lines 23:0-25:1 *) type one_t (t1 : Type0) = | One_One : t1 -> one_t t1 (** [no_nested_borrows::EmptyEnum] - Source: 'tests/src/no_nested_borrows.rs', lines 29:0-29:18 *) + Source: 'tests/src/no_nested_borrows.rs', lines 29:0-31:1 *) type emptyEnum_t = | EmptyEnum_Empty : emptyEnum_t (** [no_nested_borrows::Enum] - Source: 'tests/src/no_nested_borrows.rs', lines 35:0-35:13 *) + Source: 'tests/src/no_nested_borrows.rs', lines 35:0-38:1 *) type enum_t = | Enum_Variant1 : enum_t | Enum_Variant2 : enum_t (** [no_nested_borrows::EmptyStruct] - Source: 'tests/src/no_nested_borrows.rs', lines 42:0-42:22 *) + Source: 'tests/src/no_nested_borrows.rs', lines 42:0-42:25 *) type emptyStruct_t = unit (** [no_nested_borrows::Sum] - Source: 'tests/src/no_nested_borrows.rs', lines 44:0-44:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 44:0-47:1 *) type sum_t (t1 t2 : Type0) = | Sum_Left : t1 -> sum_t t1 t2 | Sum_Right : t2 -> sum_t t1 t2 (** [no_nested_borrows::cast_u32_to_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 49:0-49:37 *) + Source: 'tests/src/no_nested_borrows.rs', lines 49:0-51:1 *) let cast_u32_to_i32 (x : u32) : result i32 = scalar_cast U32 I32 x (** [no_nested_borrows::cast_bool_to_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 53:0-53:39 *) + Source: 'tests/src/no_nested_borrows.rs', lines 53:0-55:1 *) let cast_bool_to_i32 (x : bool) : result i32 = scalar_cast_bool I32 x (** [no_nested_borrows::cast_bool_to_bool]: - Source: 'tests/src/no_nested_borrows.rs', lines 58:0-58:41 *) + Source: 'tests/src/no_nested_borrows.rs', lines 58:0-60:1 *) let cast_bool_to_bool (x : bool) : result bool = Ok x (** [no_nested_borrows::test2]: - Source: 'tests/src/no_nested_borrows.rs', lines 63:0-63:14 *) + Source: 'tests/src/no_nested_borrows.rs', lines 63:0-73:1 *) let test2 : result unit = let* _ = u32_add 23 44 in Ok () @@ -61,12 +61,12 @@ let test2 : result unit = let _ = assert_norm (test2 = Ok ()) (** [no_nested_borrows::get_max]: - Source: 'tests/src/no_nested_borrows.rs', lines 75:0-75:37 *) + Source: 'tests/src/no_nested_borrows.rs', lines 75:0-81:1 *) let get_max (x : u32) (y : u32) : result u32 = if x >= y then Ok x else Ok y (** [no_nested_borrows::test3]: - Source: 'tests/src/no_nested_borrows.rs', lines 83:0-83:14 *) + Source: 'tests/src/no_nested_borrows.rs', lines 83:0-88:1 *) let test3 : result unit = let* x = get_max 4 3 in let* y = get_max 10 11 in @@ -77,7 +77,7 @@ let test3 : result unit = let _ = assert_norm (test3 = Ok ()) (** [no_nested_borrows::test_neg1]: - Source: 'tests/src/no_nested_borrows.rs', lines 90:0-90:18 *) + Source: 'tests/src/no_nested_borrows.rs', lines 90:0-94:1 *) let test_neg1 : result unit = let* y = i32_neg 3 in if y = -3 then Ok () else Fail Failure @@ -85,7 +85,7 @@ let test_neg1 : result unit = let _ = assert_norm (test_neg1 = Ok ()) (** [no_nested_borrows::refs_test1]: - Source: 'tests/src/no_nested_borrows.rs', lines 97:0-97:19 *) + Source: 'tests/src/no_nested_borrows.rs', lines 97:0-106:1 *) let refs_test1 : result unit = if 1 = 1 then Ok () else Fail Failure @@ -93,7 +93,7 @@ let refs_test1 : result unit = let _ = assert_norm (refs_test1 = Ok ()) (** [no_nested_borrows::refs_test2]: - Source: 'tests/src/no_nested_borrows.rs', lines 108:0-108:19 *) + Source: 'tests/src/no_nested_borrows.rs', lines 108:0-120:1 *) let refs_test2 : result unit = if 2 = 2 then @@ -106,7 +106,7 @@ let refs_test2 : result unit = let _ = assert_norm (refs_test2 = Ok ()) (** [no_nested_borrows::test_list1]: - Source: 'tests/src/no_nested_borrows.rs', lines 124:0-124:19 *) + Source: 'tests/src/no_nested_borrows.rs', lines 124:0-126:1 *) let test_list1 : result unit = Ok () @@ -114,7 +114,7 @@ let test_list1 : result unit = let _ = assert_norm (test_list1 = Ok ()) (** [no_nested_borrows::test_box1]: - Source: 'tests/src/no_nested_borrows.rs', lines 129:0-129:18 *) + Source: 'tests/src/no_nested_borrows.rs', lines 129:0-137:1 *) let test_box1 : result unit = let* (_, deref_mut_back) = alloc_boxed_Box_deref_mut i32 0 in let* b = deref_mut_back 1 in @@ -125,27 +125,27 @@ let test_box1 : result unit = let _ = assert_norm (test_box1 = Ok ()) (** [no_nested_borrows::copy_int]: - Source: 'tests/src/no_nested_borrows.rs', lines 139:0-139:30 *) + Source: 'tests/src/no_nested_borrows.rs', lines 139:0-141:1 *) let copy_int (x : i32) : result i32 = Ok x (** [no_nested_borrows::test_unreachable]: - Source: 'tests/src/no_nested_borrows.rs', lines 145:0-145:32 *) + Source: 'tests/src/no_nested_borrows.rs', lines 145:0-149:1 *) let test_unreachable (b : bool) : result unit = if b then Fail Failure else Ok () (** [no_nested_borrows::test_panic]: - Source: 'tests/src/no_nested_borrows.rs', lines 152:0-152:26 *) + Source: 'tests/src/no_nested_borrows.rs', lines 152:0-156:1 *) let test_panic (b : bool) : result unit = if b then Fail Failure else Ok () (** [no_nested_borrows::test_panic_msg]: - Source: 'tests/src/no_nested_borrows.rs', lines 160:0-160:30 *) + Source: 'tests/src/no_nested_borrows.rs', lines 160:0-164:1 *) let test_panic_msg (b : bool) : result unit = if b then Fail Failure else Ok () (** [no_nested_borrows::test_copy_int]: - Source: 'tests/src/no_nested_borrows.rs', lines 167:0-167:22 *) + Source: 'tests/src/no_nested_borrows.rs', lines 167:0-172:1 *) let test_copy_int : result unit = let* y = copy_int 0 in if 0 = y then Ok () else Fail Failure @@ -153,12 +153,12 @@ let test_copy_int : result unit = let _ = assert_norm (test_copy_int = Ok ()) (** [no_nested_borrows::is_cons]: - Source: 'tests/src/no_nested_borrows.rs', lines 174:0-174:38 *) + Source: 'tests/src/no_nested_borrows.rs', lines 174:0-179:1 *) let is_cons (t : Type0) (l : list_t t) : result bool = begin match l with | List_Cons _ _ -> Ok true | List_Nil -> Ok false end (** [no_nested_borrows::test_is_cons]: - Source: 'tests/src/no_nested_borrows.rs', lines 181:0-181:21 *) + Source: 'tests/src/no_nested_borrows.rs', lines 181:0-185:1 *) let test_is_cons : result unit = let* b = is_cons i32 (List_Cons 0 List_Nil) in if b then Ok () else Fail Failure @@ -167,7 +167,7 @@ let test_is_cons : result unit = let _ = assert_norm (test_is_cons = Ok ()) (** [no_nested_borrows::split_list]: - Source: 'tests/src/no_nested_borrows.rs', lines 187:0-187:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 187:0-192:1 *) let split_list (t : Type0) (l : list_t t) : result (t & (list_t t)) = begin match l with | List_Cons hd tl -> Ok (hd, tl) @@ -175,7 +175,7 @@ let split_list (t : Type0) (l : list_t t) : result (t & (list_t t)) = end (** [no_nested_borrows::test_split_list]: - Source: 'tests/src/no_nested_borrows.rs', lines 195:0-195:24 *) + Source: 'tests/src/no_nested_borrows.rs', lines 195:0-200:1 *) let test_split_list : result unit = let* p = split_list i32 (List_Cons 0 List_Nil) in let (hd, _) = p in @@ -185,7 +185,7 @@ let test_split_list : result unit = let _ = assert_norm (test_split_list = Ok ()) (** [no_nested_borrows::choose]: - Source: 'tests/src/no_nested_borrows.rs', lines 202:0-202:70 *) + Source: 'tests/src/no_nested_borrows.rs', lines 202:0-208:1 *) let choose (t : Type0) (b : bool) (x : t) (y : t) : result (t & (t -> result (t & t))) = if b @@ -193,7 +193,7 @@ let choose else let back = fun ret -> Ok (x, ret) in Ok (y, back) (** [no_nested_borrows::choose_test]: - Source: 'tests/src/no_nested_borrows.rs', lines 210:0-210:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 210:0-219:1 *) let choose_test : result unit = let* (z, choose_back) = choose i32 true 0 0 in let* z1 = i32_add z 1 in @@ -207,29 +207,29 @@ let choose_test : result unit = let _ = assert_norm (choose_test = Ok ()) (** [no_nested_borrows::test_char]: - Source: 'tests/src/no_nested_borrows.rs', lines 222:0-222:26 *) + Source: 'tests/src/no_nested_borrows.rs', lines 222:0-224:1 *) let test_char : result char = Ok 'a' (** [no_nested_borrows::panic_mut_borrow]: - Source: 'tests/src/no_nested_borrows.rs', lines 227:0-227:36 *) + Source: 'tests/src/no_nested_borrows.rs', lines 227:0-229:1 *) let panic_mut_borrow (i : u32) : result u32 = Fail Failure (** [no_nested_borrows::Tree] - Source: 'tests/src/no_nested_borrows.rs', lines 232:0-232:16 *) + Source: 'tests/src/no_nested_borrows.rs', lines 232:0-235:1 *) type tree_t (t : Type0) = | Tree_Leaf : t -> tree_t t | Tree_Node : t -> nodeElem_t t -> tree_t t -> tree_t t (** [no_nested_borrows::NodeElem] - Source: 'tests/src/no_nested_borrows.rs', lines 237:0-237:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 237:0-240:1 *) and nodeElem_t (t : Type0) = | NodeElem_Cons : tree_t t -> nodeElem_t t -> nodeElem_t t | NodeElem_Nil : nodeElem_t t (** [no_nested_borrows::list_length]: - Source: 'tests/src/no_nested_borrows.rs', lines 272:0-272:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 272:0-277:1 *) let rec list_length (t : Type0) (l : list_t t) : result u32 = begin match l with | List_Cons _ l1 -> let* i = list_length t l1 in u32_add 1 i @@ -237,7 +237,7 @@ let rec list_length (t : Type0) (l : list_t t) : result u32 = end (** [no_nested_borrows::list_nth_shared]: - Source: 'tests/src/no_nested_borrows.rs', lines 280:0-280:62 *) + Source: 'tests/src/no_nested_borrows.rs', lines 280:0-293:1 *) let rec list_nth_shared (t : Type0) (l : list_t t) (i : u32) : result t = begin match l with | List_Cons x tl -> @@ -246,7 +246,7 @@ let rec list_nth_shared (t : Type0) (l : list_t t) (i : u32) : result t = end (** [no_nested_borrows::list_nth_mut]: - Source: 'tests/src/no_nested_borrows.rs', lines 296:0-296:67 *) + Source: 'tests/src/no_nested_borrows.rs', lines 296:0-309:1 *) let rec list_nth_mut (t : Type0) (l : list_t t) (i : u32) : result (t & (t -> result (list_t t))) @@ -265,7 +265,7 @@ let rec list_nth_mut end (** [no_nested_borrows::list_rev_aux]: - Source: 'tests/src/no_nested_borrows.rs', lines 312:0-312:63 *) + Source: 'tests/src/no_nested_borrows.rs', lines 312:0-322:1 *) let rec list_rev_aux (t : Type0) (li : list_t t) (lo : list_t t) : result (list_t t) = begin match li with @@ -274,13 +274,13 @@ let rec list_rev_aux end (** [no_nested_borrows::list_rev]: - Source: 'tests/src/no_nested_borrows.rs', lines 326:0-326:42 *) + Source: 'tests/src/no_nested_borrows.rs', lines 326:0-329:1 *) let list_rev (t : Type0) (l : list_t t) : result (list_t t) = let (li, _) = core_mem_replace (list_t t) l List_Nil in list_rev_aux t li List_Nil (** [no_nested_borrows::test_list_functions]: - Source: 'tests/src/no_nested_borrows.rs', lines 331:0-331:28 *) + Source: 'tests/src/no_nested_borrows.rs', lines 331:0-345:1 *) let test_list_functions : result unit = let l = List_Cons 2 List_Nil in let l1 = List_Cons 1 l in @@ -317,7 +317,7 @@ let test_list_functions : result unit = let _ = assert_norm (test_list_functions = Ok ()) (** [no_nested_borrows::id_mut_pair1]: - Source: 'tests/src/no_nested_borrows.rs', lines 347:0-347:89 *) + Source: 'tests/src/no_nested_borrows.rs', lines 347:0-349:1 *) let id_mut_pair1 (t1 t2 : Type0) (x : t1) (y : t2) : result ((t1 & t2) & ((t1 & t2) -> result (t1 & t2))) @@ -325,7 +325,7 @@ let id_mut_pair1 Ok ((x, y), Ok) (** [no_nested_borrows::id_mut_pair2]: - Source: 'tests/src/no_nested_borrows.rs', lines 351:0-351:88 *) + Source: 'tests/src/no_nested_borrows.rs', lines 351:0-353:1 *) let id_mut_pair2 (t1 t2 : Type0) (p : (t1 & t2)) : result ((t1 & t2) & ((t1 & t2) -> result (t1 & t2))) @@ -333,7 +333,7 @@ let id_mut_pair2 let (x, x1) = p in Ok ((x, x1), Ok) (** [no_nested_borrows::id_mut_pair3]: - Source: 'tests/src/no_nested_borrows.rs', lines 355:0-355:93 *) + Source: 'tests/src/no_nested_borrows.rs', lines 355:0-357:1 *) let id_mut_pair3 (t1 t2 : Type0) (x : t1) (y : t2) : result ((t1 & t2) & (t1 -> result t1) & (t2 -> result t2)) @@ -341,7 +341,7 @@ let id_mut_pair3 Ok ((x, y), Ok, Ok) (** [no_nested_borrows::id_mut_pair4]: - Source: 'tests/src/no_nested_borrows.rs', lines 359:0-359:92 *) + Source: 'tests/src/no_nested_borrows.rs', lines 359:0-361:1 *) let id_mut_pair4 (t1 t2 : Type0) (p : (t1 & t2)) : result ((t1 & t2) & (t1 -> result t1) & (t2 -> result t2)) @@ -349,35 +349,35 @@ let id_mut_pair4 let (x, x1) = p in Ok ((x, x1), Ok, Ok) (** [no_nested_borrows::StructWithTuple] - Source: 'tests/src/no_nested_borrows.rs', lines 366:0-366:34 *) + Source: 'tests/src/no_nested_borrows.rs', lines 366:0-368:1 *) type structWithTuple_t (t1 t2 : Type0) = { p : (t1 & t2); } (** [no_nested_borrows::new_tuple1]: - Source: 'tests/src/no_nested_borrows.rs', lines 370:0-370:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 370:0-372:1 *) let new_tuple1 : result (structWithTuple_t u32 u32) = Ok { p = (1, 2) } (** [no_nested_borrows::new_tuple2]: - Source: 'tests/src/no_nested_borrows.rs', lines 374:0-374:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 374:0-376:1 *) let new_tuple2 : result (structWithTuple_t i16 i16) = Ok { p = (1, 2) } (** [no_nested_borrows::new_tuple3]: - Source: 'tests/src/no_nested_borrows.rs', lines 378:0-378:48 *) + Source: 'tests/src/no_nested_borrows.rs', lines 378:0-380:1 *) let new_tuple3 : result (structWithTuple_t u64 i64) = Ok { p = (1, 2) } (** [no_nested_borrows::StructWithPair] - Source: 'tests/src/no_nested_borrows.rs', lines 383:0-383:33 *) + Source: 'tests/src/no_nested_borrows.rs', lines 383:0-385:1 *) type structWithPair_t (t1 t2 : Type0) = { p : pair_t t1 t2; } (** [no_nested_borrows::new_pair1]: - Source: 'tests/src/no_nested_borrows.rs', lines 387:0-387:46 *) + Source: 'tests/src/no_nested_borrows.rs', lines 387:0-393:1 *) let new_pair1 : result (structWithPair_t u32 u32) = Ok { p = { x = 1; y = 2 } } (** [no_nested_borrows::test_constants]: - Source: 'tests/src/no_nested_borrows.rs', lines 395:0-395:23 *) + Source: 'tests/src/no_nested_borrows.rs', lines 395:0-400:1 *) let test_constants : result unit = let* swt = new_tuple1 in let (i, _) = swt.p in @@ -399,7 +399,7 @@ let test_constants : result unit = let _ = assert_norm (test_constants = Ok ()) (** [no_nested_borrows::test_weird_borrows1]: - Source: 'tests/src/no_nested_borrows.rs', lines 404:0-404:28 *) + Source: 'tests/src/no_nested_borrows.rs', lines 404:0-412:1 *) let test_weird_borrows1 : result unit = Ok () @@ -407,101 +407,101 @@ let test_weird_borrows1 : result unit = let _ = assert_norm (test_weird_borrows1 = Ok ()) (** [no_nested_borrows::test_mem_replace]: - Source: 'tests/src/no_nested_borrows.rs', lines 414:0-414:37 *) + Source: 'tests/src/no_nested_borrows.rs', lines 414:0-418:1 *) let test_mem_replace (px : u32) : result u32 = let (y, _) = core_mem_replace u32 px 1 in if y = 0 then Ok 2 else Fail Failure (** [no_nested_borrows::test_shared_borrow_bool1]: - Source: 'tests/src/no_nested_borrows.rs', lines 421:0-421:47 *) + Source: 'tests/src/no_nested_borrows.rs', lines 421:0-430:1 *) let test_shared_borrow_bool1 (b : bool) : result u32 = if b then Ok 0 else Ok 1 (** [no_nested_borrows::test_shared_borrow_bool2]: - Source: 'tests/src/no_nested_borrows.rs', lines 434:0-434:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 434:0-444:1 *) let test_shared_borrow_bool2 : result u32 = Ok 0 (** [no_nested_borrows::test_shared_borrow_enum1]: - Source: 'tests/src/no_nested_borrows.rs', lines 449:0-449:52 *) + Source: 'tests/src/no_nested_borrows.rs', lines 449:0-457:1 *) let test_shared_borrow_enum1 (l : list_t u32) : result u32 = begin match l with | List_Cons _ _ -> Ok 1 | List_Nil -> Ok 0 end (** [no_nested_borrows::test_shared_borrow_enum2]: - Source: 'tests/src/no_nested_borrows.rs', lines 461:0-461:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 461:0-470:1 *) let test_shared_borrow_enum2 : result u32 = Ok 0 (** [no_nested_borrows::incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 472:0-472:24 *) + Source: 'tests/src/no_nested_borrows.rs', lines 472:0-474:1 *) let incr (x : u32) : result u32 = u32_add x 1 (** [no_nested_borrows::call_incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 476:0-476:35 *) + Source: 'tests/src/no_nested_borrows.rs', lines 476:0-479:1 *) let call_incr (x : u32) : result u32 = incr x (** [no_nested_borrows::read_then_incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 481:0-481:41 *) + Source: 'tests/src/no_nested_borrows.rs', lines 481:0-485:1 *) let read_then_incr (x : u32) : result (u32 & u32) = let* x1 = u32_add x 1 in Ok (x, x1) (** [no_nested_borrows::Tuple] - Source: 'tests/src/no_nested_borrows.rs', lines 487:0-487:24 *) + Source: 'tests/src/no_nested_borrows.rs', lines 487:0-487:33 *) type tuple_t (t1 t2 : Type0) = t1 * t2 (** [no_nested_borrows::read_tuple]: - Source: 'tests/src/no_nested_borrows.rs', lines 489:0-489:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 489:0-491:1 *) let read_tuple (x : (u32 & u32)) : result u32 = let (i, _) = x in Ok i (** [no_nested_borrows::update_tuple]: - Source: 'tests/src/no_nested_borrows.rs', lines 493:0-493:39 *) + Source: 'tests/src/no_nested_borrows.rs', lines 493:0-495:1 *) let update_tuple (x : (u32 & u32)) : result (u32 & u32) = let (_, i) = x in Ok (1, i) (** [no_nested_borrows::read_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 497:0-497:52 *) + Source: 'tests/src/no_nested_borrows.rs', lines 497:0-499:1 *) let read_tuple_struct (x : tuple_t u32 u32) : result u32 = let (i, _) = x in Ok i (** [no_nested_borrows::update_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 501:0-501:51 *) + Source: 'tests/src/no_nested_borrows.rs', lines 501:0-503:1 *) let update_tuple_struct (x : tuple_t u32 u32) : result (tuple_t u32 u32) = let (_, i) = x in Ok (1, i) (** [no_nested_borrows::create_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 505:0-505:61 *) + Source: 'tests/src/no_nested_borrows.rs', lines 505:0-507:1 *) let create_tuple_struct (x : u32) (y : u64) : result (tuple_t u32 u64) = Ok (x, y) (** [no_nested_borrows::IdType] - Source: 'tests/src/no_nested_borrows.rs', lines 510:0-510:20 *) + Source: 'tests/src/no_nested_borrows.rs', lines 510:0-510:24 *) type idType_t (t : Type0) = t (** [no_nested_borrows::use_id_type]: - Source: 'tests/src/no_nested_borrows.rs', lines 512:0-512:40 *) + Source: 'tests/src/no_nested_borrows.rs', lines 512:0-514:1 *) let use_id_type (t : Type0) (x : idType_t t) : result t = Ok x (** [no_nested_borrows::create_id_type]: - Source: 'tests/src/no_nested_borrows.rs', lines 516:0-516:43 *) + Source: 'tests/src/no_nested_borrows.rs', lines 516:0-518:1 *) let create_id_type (t : Type0) (x : t) : result (idType_t t) = Ok x (** [no_nested_borrows::not_bool]: - Source: 'tests/src/no_nested_borrows.rs', lines 520:0-520:32 *) + Source: 'tests/src/no_nested_borrows.rs', lines 520:0-522:1 *) let not_bool (x : bool) : result bool = Ok (not x) (** [no_nested_borrows::not_u32]: - Source: 'tests/src/no_nested_borrows.rs', lines 524:0-524:29 *) + Source: 'tests/src/no_nested_borrows.rs', lines 524:0-526:1 *) let not_u32 (x : u32) : result u32 = Ok (u32_not x) (** [no_nested_borrows::not_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 528:0-528:29 *) + Source: 'tests/src/no_nested_borrows.rs', lines 528:0-530:1 *) let not_i32 (x : i32) : result i32 = Ok (i32_not x) diff --git a/tests/fstar/misc/Paper.fst b/tests/fstar/misc/Paper.fst index 3566c5e24..05fd99690 100644 --- a/tests/fstar/misc/Paper.fst +++ b/tests/fstar/misc/Paper.fst @@ -6,12 +6,12 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [paper::ref_incr]: - Source: 'tests/src/paper.rs', lines 7:0-7:28 *) + Source: 'tests/src/paper.rs', lines 7:0-9:1 *) let ref_incr (x : i32) : result i32 = i32_add x 1 (** [paper::test_incr]: - Source: 'tests/src/paper.rs', lines 11:0-11:18 *) + Source: 'tests/src/paper.rs', lines 11:0-15:1 *) let test_incr : result unit = let* x = ref_incr 0 in if x = 1 then Ok () else Fail Failure @@ -19,7 +19,7 @@ let test_incr : result unit = let _ = assert_norm (test_incr = Ok ()) (** [paper::choose]: - Source: 'tests/src/paper.rs', lines 18:0-18:70 *) + Source: 'tests/src/paper.rs', lines 18:0-24:1 *) let choose (t : Type0) (b : bool) (x : t) (y : t) : result (t & (t -> result (t & t))) = if b @@ -27,7 +27,7 @@ let choose else let back = fun ret -> Ok (x, ret) in Ok (y, back) (** [paper::test_choose]: - Source: 'tests/src/paper.rs', lines 26:0-26:20 *) + Source: 'tests/src/paper.rs', lines 26:0-34:1 *) let test_choose : result unit = let* (z, choose_back) = choose i32 true 0 0 in let* z1 = i32_add z 1 in @@ -41,13 +41,13 @@ let test_choose : result unit = let _ = assert_norm (test_choose = Ok ()) (** [paper::List] - Source: 'tests/src/paper.rs', lines 38:0-38:16 *) + Source: 'tests/src/paper.rs', lines 38:0-41:1 *) type list_t (t : Type0) = | List_Cons : t -> list_t t -> list_t t | List_Nil : list_t t (** [paper::list_nth_mut]: - Source: 'tests/src/paper.rs', lines 45:0-45:67 *) + Source: 'tests/src/paper.rs', lines 45:0-58:1 *) let rec list_nth_mut (t : Type0) (l : list_t t) (i : u32) : result (t & (t -> result (list_t t))) @@ -66,7 +66,7 @@ let rec list_nth_mut end (** [paper::sum]: - Source: 'tests/src/paper.rs', lines 60:0-60:32 *) + Source: 'tests/src/paper.rs', lines 60:0-69:1 *) let rec sum (l : list_t i32) : result i32 = begin match l with | List_Cons x tl -> let* i = sum tl in i32_add x i @@ -74,7 +74,7 @@ let rec sum (l : list_t i32) : result i32 = end (** [paper::test_nth]: - Source: 'tests/src/paper.rs', lines 71:0-71:17 *) + Source: 'tests/src/paper.rs', lines 71:0-76:1 *) let test_nth : result unit = let l = List_Cons 3 List_Nil in let l1 = List_Cons 2 l in @@ -88,7 +88,7 @@ let test_nth : result unit = let _ = assert_norm (test_nth = Ok ()) (** [paper::call_choose]: - Source: 'tests/src/paper.rs', lines 79:0-79:44 *) + Source: 'tests/src/paper.rs', lines 79:0-85:1 *) let call_choose (p : (u32 & u32)) : result u32 = let (px, py) = p in let* (pz, choose_back) = choose u32 true px py in diff --git a/tests/fstar/misc/PoloniusList.fst b/tests/fstar/misc/PoloniusList.fst index 810388db4..44f3f90a1 100644 --- a/tests/fstar/misc/PoloniusList.fst +++ b/tests/fstar/misc/PoloniusList.fst @@ -6,13 +6,13 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [polonius_list::List] - Source: 'tests/src/polonius_list.rs', lines 6:0-6:16 *) + Source: 'tests/src/polonius_list.rs', lines 6:0-9:1 *) type list_t (t : Type0) = | List_Cons : t -> list_t t -> list_t t | List_Nil : list_t t (** [polonius_list::get_list_at_x]: - Source: 'tests/src/polonius_list.rs', lines 16:0-16:76 *) + Source: 'tests/src/polonius_list.rs', lines 16:0-30:1 *) let rec get_list_at_x (ls : list_t u32) (x : u32) : result ((list_t u32) & (list_t u32 -> result (list_t u32))) diff --git a/tests/fstar/rename_attribute/RenameAttribute.Clauses.Template.fst b/tests/fstar/rename_attribute/RenameAttribute.Clauses.Template.fst index d2229a71b..662885854 100644 --- a/tests/fstar/rename_attribute/RenameAttribute.Clauses.Template.fst +++ b/tests/fstar/rename_attribute/RenameAttribute.Clauses.Template.fst @@ -7,7 +7,7 @@ open RenameAttribute.Types #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [rename_attribute::factorial]: decreases clause - Source: 'tests/src/rename_attribute.rs', lines 56:0-56:27 *) + Source: 'tests/src/rename_attribute.rs', lines 56:0-62:1 *) unfold let factfn_decreases (n : u64) : nat = admit () (** [rename_attribute::sum]: decreases clause diff --git a/tests/fstar/rename_attribute/RenameAttribute.Funs.fst b/tests/fstar/rename_attribute/RenameAttribute.Funs.fst index d38d33edb..ed5b0179e 100644 --- a/tests/fstar/rename_attribute/RenameAttribute.Funs.fst +++ b/tests/fstar/rename_attribute/RenameAttribute.Funs.fst @@ -8,16 +8,16 @@ include RenameAttribute.Clauses #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** [rename_attribute::{rename_attribute::BoolTrait for bool}::get_bool]: - Source: 'tests/src/rename_attribute.rs', lines 22:4-22:30 *) + Source: 'tests/src/rename_attribute.rs', lines 22:4-24:5 *) let boolTraitBool_getTest (self : bool) : result bool = Ok self (** Trait implementation: [rename_attribute::{rename_attribute::BoolTrait for bool}] - Source: 'tests/src/rename_attribute.rs', lines 21:0-21:23 *) + Source: 'tests/src/rename_attribute.rs', lines 21:0-25:1 *) let boolImpl : boolTest_t bool = { getTest = boolTraitBool_getTest; } (** [rename_attribute::BoolTrait::ret_true]: - Source: 'tests/src/rename_attribute.rs', lines 15:4-15:30 *) + Source: 'tests/src/rename_attribute.rs', lines 15:4-17:5 *) let boolTrait_retTest (#self : Type0) (self_clause : boolTest_t self) (self1 : self) : result bool @@ -25,23 +25,23 @@ let boolTrait_retTest Ok true (** [rename_attribute::test_bool_trait]: - Source: 'tests/src/rename_attribute.rs', lines 28:0-28:42 *) + Source: 'tests/src/rename_attribute.rs', lines 28:0-30:1 *) let boolFn (t : Type0) (x : bool) : result bool = let* b = boolTraitBool_getTest x in if b then boolTrait_retTest boolImpl x else Ok false (** [rename_attribute::C] - Source: 'tests/src/rename_attribute.rs', lines 50:0-50:12 *) + Source: 'tests/src/rename_attribute.rs', lines 50:0-50:28 *) let const_test_body : result u32 = let* i = u32_add 100 10 in u32_add i 1 let const_test : u32 = eval_global const_test_body (** [rename_attribute::CA] - Source: 'tests/src/rename_attribute.rs', lines 53:0-53:13 *) + Source: 'tests/src/rename_attribute.rs', lines 53:0-53:23 *) let const_aeneas11_body : result u32 = u32_add 10 1 let const_aeneas11 : u32 = eval_global const_aeneas11_body (** [rename_attribute::factorial]: - Source: 'tests/src/rename_attribute.rs', lines 56:0-56:27 *) + Source: 'tests/src/rename_attribute.rs', lines 56:0-62:1 *) let rec factfn (n : u64) : Tot (result u64) (decreases (factfn_decreases n)) = if n <= 1 then Ok 1 @@ -61,7 +61,7 @@ let rec no_borrows_sum_loop else u32_mul s 2 (** [rename_attribute::sum]: - Source: 'tests/src/rename_attribute.rs', lines 65:0-65:27 *) + Source: 'tests/src/rename_attribute.rs', lines 65:0-75:1 *) let no_borrows_sum (max : u32) : result u32 = no_borrows_sum_loop max 0 0 diff --git a/tests/fstar/rename_attribute/RenameAttribute.Types.fst b/tests/fstar/rename_attribute/RenameAttribute.Types.fst index a64127d56..a5408425c 100644 --- a/tests/fstar/rename_attribute/RenameAttribute.Types.fst +++ b/tests/fstar/rename_attribute/RenameAttribute.Types.fst @@ -6,17 +6,17 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** Trait declaration: [rename_attribute::BoolTrait] - Source: 'tests/src/rename_attribute.rs', lines 8:0-8:19 *) + Source: 'tests/src/rename_attribute.rs', lines 8:0-18:1 *) noeq type boolTest_t (self : Type0) = { getTest : self -> result bool; } (** [rename_attribute::SimpleEnum] - Source: 'tests/src/rename_attribute.rs', lines 36:0-36:15 *) + Source: 'tests/src/rename_attribute.rs', lines 36:0-41:1 *) type variantsTest_t = | VariantsTest_Variant1 : variantsTest_t | VariantsTest_SecondVariant : variantsTest_t | VariantsTest_ThirdVariant : variantsTest_t (** [rename_attribute::Foo] - Source: 'tests/src/rename_attribute.rs', lines 44:0-44:10 *) + Source: 'tests/src/rename_attribute.rs', lines 44:0-47:1 *) type structTest_t = { fieldTest : u32; } diff --git a/tests/fstar/traits/Traits.fst b/tests/fstar/traits/Traits.fst index 13e45500f..af444dbc9 100644 --- a/tests/fstar/traits/Traits.fst +++ b/tests/fstar/traits/Traits.fst @@ -6,20 +6,20 @@ open Primitives #set-options "--z3rlimit 50 --fuel 1 --ifuel 1" (** Trait declaration: [traits::BoolTrait] - Source: 'tests/src/traits.rs', lines 2:0-2:19 *) + Source: 'tests/src/traits.rs', lines 2:0-10:1 *) noeq type boolTrait_t (self : Type0) = { get_bool : self -> result bool; } (** [traits::{traits::BoolTrait for bool}::get_bool]: - Source: 'tests/src/traits.rs', lines 13:4-13:30 *) + Source: 'tests/src/traits.rs', lines 13:4-15:5 *) let boolTraitBool_get_bool (self : bool) : result bool = Ok self (** Trait implementation: [traits::{traits::BoolTrait for bool}] - Source: 'tests/src/traits.rs', lines 12:0-12:23 *) + Source: 'tests/src/traits.rs', lines 12:0-16:1 *) let boolTraitBool : boolTrait_t bool = { get_bool = boolTraitBool_get_bool; } (** [traits::BoolTrait::ret_true]: - Source: 'tests/src/traits.rs', lines 7:4-7:30 *) + Source: 'tests/src/traits.rs', lines 7:4-9:5 *) let boolTrait_ret_true (#self : Type0) (self_clause : boolTrait_t self) (self1 : self) : result bool @@ -27,49 +27,49 @@ let boolTrait_ret_true Ok true (** [traits::test_bool_trait_bool]: - Source: 'tests/src/traits.rs', lines 18:0-18:44 *) + Source: 'tests/src/traits.rs', lines 18:0-20:1 *) let test_bool_trait_bool (x : bool) : result bool = let* b = boolTraitBool_get_bool x in if b then boolTrait_ret_true boolTraitBool x else Ok false (** [traits::{traits::BoolTrait for core::option::Option}#1::get_bool]: - Source: 'tests/src/traits.rs', lines 24:4-24:30 *) + Source: 'tests/src/traits.rs', lines 24:4-29:5 *) let boolTraitOption_get_bool (t : Type0) (self : option t) : result bool = begin match self with | None -> Ok false | Some _ -> Ok true end (** Trait implementation: [traits::{traits::BoolTrait for core::option::Option}#1] - Source: 'tests/src/traits.rs', lines 23:0-23:31 *) + Source: 'tests/src/traits.rs', lines 23:0-30:1 *) let boolTraitOption (t : Type0) : boolTrait_t (option t) = { get_bool = boolTraitOption_get_bool t; } (** [traits::test_bool_trait_option]: - Source: 'tests/src/traits.rs', lines 32:0-32:54 *) + Source: 'tests/src/traits.rs', lines 32:0-34:1 *) let test_bool_trait_option (t : Type0) (x : option t) : result bool = let* b = boolTraitOption_get_bool t x in if b then boolTrait_ret_true (boolTraitOption t) x else Ok false (** [traits::test_bool_trait]: - Source: 'tests/src/traits.rs', lines 36:0-36:50 *) + Source: 'tests/src/traits.rs', lines 36:0-38:1 *) let test_bool_trait (t : Type0) (boolTraitInst : boolTrait_t t) (x : t) : result bool = boolTraitInst.get_bool x (** Trait declaration: [traits::ToU64] - Source: 'tests/src/traits.rs', lines 40:0-40:15 *) + Source: 'tests/src/traits.rs', lines 40:0-42:1 *) noeq type toU64_t (self : Type0) = { to_u64 : self -> result u64; } (** [traits::{traits::ToU64 for u64}#2::to_u64]: - Source: 'tests/src/traits.rs', lines 45:4-45:26 *) + Source: 'tests/src/traits.rs', lines 45:4-47:5 *) let toU64U64_to_u64 (self : u64) : result u64 = Ok self (** Trait implementation: [traits::{traits::ToU64 for u64}#2] - Source: 'tests/src/traits.rs', lines 44:0-44:18 *) + Source: 'tests/src/traits.rs', lines 44:0-48:1 *) let toU64U64 : toU64_t u64 = { to_u64 = toU64U64_to_u64; } (** [traits::{traits::ToU64 for (A, A)}#3::to_u64]: - Source: 'tests/src/traits.rs', lines 51:4-51:26 *) + Source: 'tests/src/traits.rs', lines 51:4-53:5 *) let toU64Pair_to_u64 (a : Type0) (toU64Inst : toU64_t a) (self : (a & a)) : result u64 = let (x, x1) = self in @@ -78,75 +78,75 @@ let toU64Pair_to_u64 u64_add i i1 (** Trait implementation: [traits::{traits::ToU64 for (A, A)}#3] - Source: 'tests/src/traits.rs', lines 50:0-50:31 *) + Source: 'tests/src/traits.rs', lines 50:0-54:1 *) let toU64Pair (a : Type0) (toU64Inst : toU64_t a) : toU64_t (a & a) = { to_u64 = toU64Pair_to_u64 a toU64Inst; } (** [traits::f]: - Source: 'tests/src/traits.rs', lines 56:0-56:36 *) + Source: 'tests/src/traits.rs', lines 56:0-58:1 *) let f (t : Type0) (toU64Inst : toU64_t t) (x : (t & t)) : result u64 = toU64Pair_to_u64 t toU64Inst x (** [traits::g]: - Source: 'tests/src/traits.rs', lines 60:0-62:18 *) + Source: 'tests/src/traits.rs', lines 60:0-65:1 *) let g (t : Type0) (toU64PairInst : toU64_t (t & t)) (x : (t & t)) : result u64 = toU64PairInst.to_u64 x (** [traits::h0]: - Source: 'tests/src/traits.rs', lines 67:0-67:24 *) + Source: 'tests/src/traits.rs', lines 67:0-69:1 *) let h0 (x : u64) : result u64 = toU64U64_to_u64 x (** [traits::Wrapper] - Source: 'tests/src/traits.rs', lines 71:0-71:21 *) + Source: 'tests/src/traits.rs', lines 71:0-73:1 *) type wrapper_t (t : Type0) = { x : t; } (** [traits::{traits::ToU64 for traits::Wrapper}#4::to_u64]: - Source: 'tests/src/traits.rs', lines 76:4-76:26 *) + Source: 'tests/src/traits.rs', lines 76:4-78:5 *) 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::ToU64 for traits::Wrapper}#4] - Source: 'tests/src/traits.rs', lines 75:0-75:35 *) + Source: 'tests/src/traits.rs', lines 75:0-79:1 *) let toU64traitsWrapper (t : Type0) (toU64Inst : toU64_t t) : toU64_t (wrapper_t t) = { to_u64 = toU64traitsWrapper_to_u64 t toU64Inst; } (** [traits::h1]: - Source: 'tests/src/traits.rs', lines 81:0-81:33 *) + Source: 'tests/src/traits.rs', lines 81:0-83:1 *) let h1 (x : wrapper_t u64) : result u64 = toU64traitsWrapper_to_u64 u64 toU64U64 x (** [traits::h2]: - Source: 'tests/src/traits.rs', lines 85:0-85:41 *) + Source: 'tests/src/traits.rs', lines 85:0-87:1 *) 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: 'tests/src/traits.rs', lines 89:0-89:19 *) + Source: 'tests/src/traits.rs', lines 89:0-91:1 *) noeq type toType_t (self t : Type0) = { to_type : self -> result t; } (** [traits::{traits::ToType for u64}#5::to_type]: - Source: 'tests/src/traits.rs', lines 94:4-94:28 *) + Source: 'tests/src/traits.rs', lines 94:4-96:5 *) let toTypeU64Bool_to_type (self : u64) : result bool = Ok (self > 0) (** Trait implementation: [traits::{traits::ToType for u64}#5] - Source: 'tests/src/traits.rs', lines 93:0-93:25 *) + Source: 'tests/src/traits.rs', lines 93:0-97:1 *) let toTypeU64Bool : toType_t u64 bool = { to_type = toTypeU64Bool_to_type; } (** Trait declaration: [traits::OfType] - Source: 'tests/src/traits.rs', lines 99:0-99:16 *) + Source: 'tests/src/traits.rs', lines 99:0-103:1 *) noeq type ofType_t (self : Type0) = { of_type : (t : Type0) -> (toTypeInst : toType_t t self) -> t -> result self; } (** [traits::h3]: - Source: 'tests/src/traits.rs', lines 105:0-105:50 *) + Source: 'tests/src/traits.rs', lines 105:0-107:1 *) let h3 (t1 t2 : Type0) (ofTypeInst : ofType_t t1) (toTypeInst : toType_t t2 t1) (y : t2) : @@ -155,14 +155,14 @@ let h3 ofTypeInst.of_type t2 toTypeInst y (** Trait declaration: [traits::OfTypeBis] - Source: 'tests/src/traits.rs', lines 110:0-110:36 *) + Source: 'tests/src/traits.rs', lines 110:0-117:1 *) noeq type ofTypeBis_t (self t : Type0) = { toTypeInst : toType_t t self; of_type : t -> result self; } (** [traits::h4]: - Source: 'tests/src/traits.rs', lines 119:0-119:57 *) + Source: 'tests/src/traits.rs', lines 119:0-121:1 *) let h4 (t1 t2 : Type0) (ofTypeBisInst : ofTypeBis_t t1 t2) (toTypeInst : toType_t t2 t1) (y : t2) : @@ -171,34 +171,34 @@ let h4 ofTypeBisInst.of_type y (** [traits::TestType] - Source: 'tests/src/traits.rs', lines 123:0-123:22 *) + Source: 'tests/src/traits.rs', lines 123:0-123:26 *) type testType_t (t : Type0) = t (** [traits::{traits::TestType}#6::test::TestType1] - Source: 'tests/src/traits.rs', lines 128:8-128:24 *) + Source: 'tests/src/traits.rs', lines 128:8-128:30 *) type testType_test_TestType1_t = u64 (** Trait declaration: [traits::{traits::TestType}#6::test::TestTrait] - Source: 'tests/src/traits.rs', lines 129:8-129:23 *) + Source: 'tests/src/traits.rs', lines 129:8-131:9 *) noeq type testType_test_TestTrait_t (self : Type0) = { test : self -> result bool; } (** [traits::{traits::TestType}#6::test::{traits::{traits::TestType}#6::test::TestTrait for traits::{traits::TestType}#6::test::TestType1}::test]: - Source: 'tests/src/traits.rs', lines 140:12-140:34 *) + Source: 'tests/src/traits.rs', lines 140:12-142:13 *) let testType_test_TestTraittraitsTestTypetestTestType1_test (self : testType_test_TestType1_t) : result bool = Ok (self > 1) (** Trait implementation: [traits::{traits::TestType}#6::test::{traits::{traits::TestType}#6::test::TestTrait for traits::{traits::TestType}#6::test::TestType1}] - Source: 'tests/src/traits.rs', lines 139:8-139:36 *) + Source: 'tests/src/traits.rs', lines 139:8-143:9 *) let testType_test_TestTraittraitsTestTypetestTestType1 : testType_test_TestTrait_t testType_test_TestType1_t = { test = testType_test_TestTraittraitsTestTypetestTestType1_test; } (** [traits::{traits::TestType}#6::test]: - Source: 'tests/src/traits.rs', lines 127:4-127:36 *) + Source: 'tests/src/traits.rs', lines 127:4-148:5 *) let testType_test (t : Type0) (toU64Inst : toU64_t t) (self : testType_t t) (x : t) : result bool @@ -209,11 +209,11 @@ let testType_test else Ok false (** [traits::BoolWrapper] - Source: 'tests/src/traits.rs', lines 151:0-151:22 *) + Source: 'tests/src/traits.rs', lines 151:0-151:33 *) type boolWrapper_t = bool (** [traits::{traits::ToType for traits::BoolWrapper}#7::to_type]: - Source: 'tests/src/traits.rs', lines 157:4-157:25 *) + Source: 'tests/src/traits.rs', lines 157:4-159:5 *) let toTypetraitsBoolWrapperT_to_type (t : Type0) (toTypeBoolTInst : toType_t bool t) (self : boolWrapper_t) : result t @@ -221,14 +221,14 @@ let toTypetraitsBoolWrapperT_to_type toTypeBoolTInst.to_type self (** Trait implementation: [traits::{traits::ToType for traits::BoolWrapper}#7] - Source: 'tests/src/traits.rs', lines 153:0-155:20 *) + Source: 'tests/src/traits.rs', lines 153:0-160:1 *) 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: 'tests/src/traits.rs', lines 165:4-165:21 *) + Source: 'tests/src/traits.rs', lines 165:4-165:27 *) let with_const_ty_len2_default_body (self : Type0) (len : usize) : result usize = Ok 32 @@ -236,7 +236,7 @@ let with_const_ty_len2_default (self : Type0) (len : usize) : usize = eval_global (with_const_ty_len2_default_body self len) (** Trait declaration: [traits::WithConstTy] - Source: 'tests/src/traits.rs', lines 162:0-162:39 *) + Source: 'tests/src/traits.rs', lines 162:0-173:1 *) noeq type withConstTy_t (self : Type0) (len : usize) = { cLEN1 : usize; cLEN2 : usize; @@ -247,18 +247,18 @@ noeq type withConstTy_t (self : Type0) (len : usize) = { } (** [traits::{traits::WithConstTy<32: usize> for bool}#8::LEN1] - Source: 'tests/src/traits.rs', lines 176:4-176:21 *) + Source: 'tests/src/traits.rs', lines 176:4-176:27 *) let with_const_ty_bool32_len1_body : result usize = Ok 12 let with_const_ty_bool32_len1 : usize = eval_global with_const_ty_bool32_len1_body (** [traits::{traits::WithConstTy<32: usize> for bool}#8::f]: - Source: 'tests/src/traits.rs', lines 181:4-181:39 *) + Source: 'tests/src/traits.rs', lines 181:4-181:42 *) let withConstTyBool32_f (i : u64) (a : array u8 32) : result u64 = Ok i (** Trait implementation: [traits::{traits::WithConstTy<32: usize> for bool}#8] - Source: 'tests/src/traits.rs', lines 175:0-175:29 *) + Source: 'tests/src/traits.rs', lines 175:0-182:1 *) let withConstTyBool32 : withConstTy_t bool 32 = { cLEN1 = with_const_ty_bool32_len1; cLEN2 = with_const_ty_len2_default bool 32; @@ -269,7 +269,7 @@ let withConstTyBool32 : withConstTy_t bool 32 = { } (** [traits::use_with_const_ty1]: - Source: 'tests/src/traits.rs', lines 184:0-184:75 *) + Source: 'tests/src/traits.rs', lines 184:0-186:1 *) let use_with_const_ty1 (h : Type0) (len : usize) (withConstTyInst : withConstTy_t h len) : result usize @@ -277,7 +277,7 @@ let use_with_const_ty1 Ok withConstTyInst.cLEN1 (** [traits::use_with_const_ty2]: - Source: 'tests/src/traits.rs', lines 188:0-188:73 *) + Source: 'tests/src/traits.rs', lines 188:0-188:76 *) let use_with_const_ty2 (h : Type0) (len : usize) (withConstTyInst : withConstTy_t h len) (w : withConstTyInst.tW) : @@ -286,7 +286,7 @@ let use_with_const_ty2 Ok () (** [traits::use_with_const_ty3]: - Source: 'tests/src/traits.rs', lines 190:0-190:80 *) + Source: 'tests/src/traits.rs', lines 190:0-192:1 *) let use_with_const_ty3 (h : Type0) (len : usize) (withConstTyInst : withConstTy_t h len) (x : withConstTyInst.tW) : @@ -295,12 +295,12 @@ let use_with_const_ty3 withConstTyInst.toU64traitsWithConstTyWInst.to_u64 x (** [traits::test_where1]: - Source: 'tests/src/traits.rs', lines 194:0-194:40 *) + Source: 'tests/src/traits.rs', lines 194:0-194:43 *) let test_where1 (t : Type0) (_x : t) : result unit = Ok () (** [traits::test_where2]: - Source: 'tests/src/traits.rs', lines 195:0-195:57 *) + Source: 'tests/src/traits.rs', lines 195:0-195:60 *) let test_where2 (t : Type0) (withConstTyT32Inst : withConstTy_t t 32) (_x : u32) : result unit @@ -308,7 +308,7 @@ let test_where2 Ok () (** Trait declaration: [traits::ParentTrait0] - Source: 'tests/src/traits.rs', lines 201:0-201:22 *) + Source: 'tests/src/traits.rs', lines 201:0-205:1 *) noeq type parentTrait0_t (self : Type0) = { tW : Type0; get_name : self -> result string; @@ -316,24 +316,24 @@ noeq type parentTrait0_t (self : Type0) = { } (** Trait declaration: [traits::ParentTrait1] - Source: 'tests/src/traits.rs', lines 206:0-206:22 *) + Source: 'tests/src/traits.rs', lines 206:0-206:25 *) type parentTrait1_t (self : Type0) = unit (** Trait declaration: [traits::ChildTrait] - Source: 'tests/src/traits.rs', lines 207:0-207:49 *) + Source: 'tests/src/traits.rs', lines 207:0-207:52 *) noeq type childTrait_t (self : Type0) = { parentTrait0Inst : parentTrait0_t self; parentTrait1Inst : parentTrait1_t self; } (** [traits::test_child_trait1]: - Source: 'tests/src/traits.rs', lines 210:0-210:56 *) + Source: 'tests/src/traits.rs', lines 210:0-212:1 *) let test_child_trait1 (t : Type0) (childTraitInst : childTrait_t t) (x : t) : result string = childTraitInst.parentTrait0Inst.get_name x (** [traits::test_child_trait2]: - Source: 'tests/src/traits.rs', lines 214:0-214:54 *) + Source: 'tests/src/traits.rs', lines 214:0-216:1 *) let test_child_trait2 (t : Type0) (childTraitInst : childTrait_t t) (x : t) : result childTraitInst.parentTrait0Inst.tW @@ -341,7 +341,7 @@ let test_child_trait2 childTraitInst.parentTrait0Inst.get_w x (** [traits::order1]: - Source: 'tests/src/traits.rs', lines 220:0-220:59 *) + Source: 'tests/src/traits.rs', lines 220:0-220:62 *) let order1 (t u : Type0) (parentTrait0Inst : parentTrait0_t t) (parentTrait0Inst1 : parentTrait0_t u) : @@ -350,27 +350,27 @@ let order1 Ok () (** Trait declaration: [traits::ChildTrait1] - Source: 'tests/src/traits.rs', lines 223:0-223:35 *) + Source: 'tests/src/traits.rs', lines 223:0-223:38 *) noeq type childTrait1_t (self : Type0) = { parentTrait1Inst : parentTrait1_t self; } (** Trait implementation: [traits::{traits::ParentTrait1 for usize}#9] - Source: 'tests/src/traits.rs', lines 225:0-225:27 *) + Source: 'tests/src/traits.rs', lines 225:0-225:30 *) let parentTrait1Usize : parentTrait1_t usize = () (** Trait implementation: [traits::{traits::ChildTrait1 for usize}#10] - Source: 'tests/src/traits.rs', lines 226:0-226:26 *) + Source: 'tests/src/traits.rs', lines 226:0-226:29 *) let childTrait1Usize : childTrait1_t usize = { parentTrait1Inst = parentTrait1Usize; } (** Trait declaration: [traits::Iterator] - Source: 'tests/src/traits.rs', lines 230:0-230:18 *) + Source: 'tests/src/traits.rs', lines 230:0-232:1 *) noeq type iterator_t (self : Type0) = { tItem : Type0; } (** Trait declaration: [traits::IntoIterator] - Source: 'tests/src/traits.rs', lines 234:0-234:22 *) + Source: 'tests/src/traits.rs', lines 234:0-240:1 *) noeq type intoIterator_t (self : Type0) = { tItem : Type0; tIntoIter : Type0; @@ -379,29 +379,29 @@ noeq type intoIterator_t (self : Type0) = { } (** Trait declaration: [traits::FromResidual] - Source: 'tests/src/traits.rs', lines 251:0-251:21 *) + Source: 'tests/src/traits.rs', lines 251:0-251:24 *) type fromResidual_t (self t : Type0) = unit (** Trait declaration: [traits::Try] - Source: 'tests/src/traits.rs', lines 247:0-247:48 *) + Source: 'tests/src/traits.rs', lines 247:0-249:1 *) noeq type try_t (self : Type0) = { tResidual : Type0; fromResidualSelftraitsTryResidualInst : fromResidual_t self tResidual; } (** Trait declaration: [traits::WithTarget] - Source: 'tests/src/traits.rs', lines 253:0-253:20 *) + Source: 'tests/src/traits.rs', lines 253:0-255:1 *) noeq type withTarget_t (self : Type0) = { tTarget : Type0; } (** Trait declaration: [traits::ParentTrait2] - Source: 'tests/src/traits.rs', lines 257:0-257:22 *) + Source: 'tests/src/traits.rs', lines 257:0-259:1 *) noeq type parentTrait2_t (self : Type0) = { tU : Type0; withTargettraitsParentTrait2UInst : withTarget_t tU; } (** Trait declaration: [traits::ChildTrait2] - Source: 'tests/src/traits.rs', lines 261:0-261:35 *) + Source: 'tests/src/traits.rs', lines 261:0-263:1 *) noeq type childTrait2_t (self : Type0) = { parentTrait2Inst : parentTrait2_t self; convert : parentTrait2Inst.tU -> result @@ -409,78 +409,78 @@ noeq type childTrait2_t (self : Type0) = { } (** Trait implementation: [traits::{traits::WithTarget for u32}#11] - Source: 'tests/src/traits.rs', lines 265:0-265:23 *) + Source: 'tests/src/traits.rs', lines 265:0-267:1 *) let withTargetU32 : withTarget_t u32 = { tTarget = u32; } (** Trait implementation: [traits::{traits::ParentTrait2 for u32}#12] - Source: 'tests/src/traits.rs', lines 269:0-269:25 *) + Source: 'tests/src/traits.rs', lines 269:0-271:1 *) let parentTrait2U32 : parentTrait2_t u32 = { tU = u32; withTargettraitsParentTrait2UInst = withTargetU32; } (** [traits::{traits::ChildTrait2 for u32}#13::convert]: - Source: 'tests/src/traits.rs', lines 274:4-274:29 *) + Source: 'tests/src/traits.rs', lines 274:4-276:5 *) let childTrait2U32_convert (x : u32) : result u32 = Ok x (** Trait implementation: [traits::{traits::ChildTrait2 for u32}#13] - Source: 'tests/src/traits.rs', lines 273:0-273:24 *) + Source: 'tests/src/traits.rs', lines 273:0-277:1 *) let childTrait2U32 : childTrait2_t u32 = { parentTrait2Inst = parentTrait2U32; convert = childTrait2U32_convert; } (** Trait declaration: [traits::CFnOnce] - Source: 'tests/src/traits.rs', lines 287:0-287:23 *) + Source: 'tests/src/traits.rs', lines 287:0-291:1 *) noeq type cFnOnce_t (self args : Type0) = { tOutput : Type0; call_once : self -> args -> result tOutput; } (** Trait declaration: [traits::CFnMut] - Source: 'tests/src/traits.rs', lines 293:0-293:37 *) + Source: 'tests/src/traits.rs', lines 293:0-295:1 *) noeq type cFnMut_t (self args : Type0) = { cFnOnceInst : cFnOnce_t self args; call_mut : self -> args -> result (cFnOnceInst.tOutput & self); } (** Trait declaration: [traits::CFn] - Source: 'tests/src/traits.rs', lines 297:0-297:33 *) + Source: 'tests/src/traits.rs', lines 297:0-299:1 *) noeq type cFn_t (self args : Type0) = { cFnMutInst : cFnMut_t self args; call : self -> args -> result cFnMutInst.cFnOnceInst.tOutput; } (** Trait declaration: [traits::GetTrait] - Source: 'tests/src/traits.rs', lines 301:0-301:18 *) + Source: 'tests/src/traits.rs', lines 301:0-304:1 *) noeq type getTrait_t (self : Type0) = { tW : Type0; get_w : self -> result tW; } (** [traits::test_get_trait]: - Source: 'tests/src/traits.rs', lines 306:0-306:49 *) + Source: 'tests/src/traits.rs', lines 306:0-308:1 *) let test_get_trait (t : Type0) (getTraitInst : getTrait_t t) (x : t) : result getTraitInst.tW = getTraitInst.get_w x (** Trait declaration: [traits::Trait] - Source: 'tests/src/traits.rs', lines 311:0-311:15 *) + Source: 'tests/src/traits.rs', lines 311:0-313:1 *) noeq type trait_t (self : Type0) = { cLEN : usize; } (** [traits::{traits::Trait for @Array}#14::LEN] - Source: 'tests/src/traits.rs', lines 316:4-316:20 *) + Source: 'tests/src/traits.rs', lines 316:4-316:25 *) let trait_array_len_body (t : Type0) (n : usize) : result usize = Ok n let trait_array_len (t : Type0) (n : usize) : usize = eval_global (trait_array_len_body t n) (** Trait implementation: [traits::{traits::Trait for @Array}#14] - Source: 'tests/src/traits.rs', lines 315:0-315:40 *) + Source: 'tests/src/traits.rs', lines 315:0-317:1 *) let traitArray (t : Type0) (n : usize) : trait_t (array t n) = { cLEN = trait_array_len t n; } (** [traits::{traits::Trait for traits::Wrapper}#15::LEN] - Source: 'tests/src/traits.rs', lines 320:4-320:20 *) + Source: 'tests/src/traits.rs', lines 320:4-320:25 *) let traittraits_wrapper_len_body (t : Type0) (traitInst : trait_t t) : result usize = Ok 0 @@ -488,19 +488,19 @@ let traittraits_wrapper_len (t : Type0) (traitInst : trait_t t) : usize = eval_global (traittraits_wrapper_len_body t traitInst) (** Trait implementation: [traits::{traits::Trait for traits::Wrapper}#15] - Source: 'tests/src/traits.rs', lines 319:0-319:35 *) + Source: 'tests/src/traits.rs', lines 319:0-321:1 *) let traittraitsWrapper (t : Type0) (traitInst : trait_t t) : trait_t (wrapper_t t) = { cLEN = traittraits_wrapper_len t traitInst; } (** [traits::use_wrapper_len]: - Source: 'tests/src/traits.rs', lines 323:0-323:43 *) + Source: 'tests/src/traits.rs', lines 323:0-325:1 *) let use_wrapper_len (t : Type0) (traitInst : trait_t t) : result usize = Ok (traittraitsWrapper t traitInst).cLEN (** [traits::Foo] - Source: 'tests/src/traits.rs', lines 327:0-327:20 *) + Source: 'tests/src/traits.rs', lines 327:0-330:1 *) type foo_t (t u : Type0) = { x : t; y : u; } (** [core::result::Result] @@ -511,7 +511,7 @@ type core_result_Result_t (t e : Type0) = | Core_result_Result_Err : e -> core_result_Result_t t e (** [traits::{traits::Foo}#16::FOO] - Source: 'tests/src/traits.rs', lines 333:4-333:33 *) + Source: 'tests/src/traits.rs', lines 333:4-333:43 *) let foo_foo_body (t u : Type0) (traitInst : trait_t t) : result (core_result_Result_t t i32) = Ok (Core_result_Result_Err 0) @@ -520,13 +520,13 @@ let foo_foo (t u : Type0) (traitInst : trait_t t) eval_global (foo_foo_body t u traitInst) (** [traits::use_foo1]: - Source: 'tests/src/traits.rs', lines 336:0-336:48 *) + Source: 'tests/src/traits.rs', lines 336:0-338:1 *) let use_foo1 (t u : Type0) (traitInst : trait_t t) : result (core_result_Result_t t i32) = Ok (foo_foo t u traitInst) (** [traits::use_foo2]: - Source: 'tests/src/traits.rs', lines 340:0-340:48 *) + Source: 'tests/src/traits.rs', lines 340:0-342:1 *) let use_foo2 (t u : Type0) (traitInst : trait_t u) : result (core_result_Result_t u i32) = Ok (foo_foo u t traitInst) diff --git a/tests/lean/Arrays.lean b/tests/lean/Arrays.lean index bdaa7380e..b18704c73 100644 --- a/tests/lean/Arrays.lean +++ b/tests/lean/Arrays.lean @@ -9,24 +9,24 @@ set_option linter.unusedVariables false namespace arrays /- [arrays::AB] - Source: 'tests/src/arrays.rs', lines 6:0-6:11 -/ + Source: 'tests/src/arrays.rs', lines 6:0-9:1 -/ inductive AB := | A : AB | B : AB /- [arrays::incr]: - Source: 'tests/src/arrays.rs', lines 11:0-11:24 -/ + Source: 'tests/src/arrays.rs', lines 11:0-13:1 -/ def incr (x : U32) : Result U32 := x + 1#u32 /- [arrays::array_to_shared_slice_]: - Source: 'tests/src/arrays.rs', lines 19:0-19:53 -/ + Source: 'tests/src/arrays.rs', lines 19:0-21:1 -/ def array_to_shared_slice_ (T : Type) (s : Array T 32#usize) : Result (Slice T) := Array.to_slice T 32#usize s /- [arrays::array_to_mut_slice_]: - Source: 'tests/src/arrays.rs', lines 24:0-24:58 -/ + Source: 'tests/src/arrays.rs', lines 24:0-26:1 -/ def array_to_mut_slice_ (T : Type) (s : Array T 32#usize) : Result ((Slice T) × (Slice T → Result (Array T 32#usize))) @@ -34,42 +34,42 @@ def array_to_mut_slice_ Array.to_slice_mut T 32#usize s /- [arrays::array_len]: - Source: 'tests/src/arrays.rs', lines 28:0-28:40 -/ + Source: 'tests/src/arrays.rs', lines 28:0-30:1 -/ def array_len (T : Type) (s : Array T 32#usize) : Result Usize := do let s1 ← Array.to_slice T 32#usize s Result.ok (Slice.len T s1) /- [arrays::shared_array_len]: - Source: 'tests/src/arrays.rs', lines 32:0-32:48 -/ + Source: 'tests/src/arrays.rs', lines 32:0-34:1 -/ def shared_array_len (T : Type) (s : Array T 32#usize) : Result Usize := do let s1 ← Array.to_slice T 32#usize s Result.ok (Slice.len T s1) /- [arrays::shared_slice_len]: - Source: 'tests/src/arrays.rs', lines 36:0-36:44 -/ + Source: 'tests/src/arrays.rs', lines 36:0-38:1 -/ def shared_slice_len (T : Type) (s : Slice T) : Result Usize := Result.ok (Slice.len T s) /- [arrays::index_array_shared]: - Source: 'tests/src/arrays.rs', lines 40:0-40:57 -/ + Source: 'tests/src/arrays.rs', lines 40:0-42:1 -/ def index_array_shared (T : Type) (s : Array T 32#usize) (i : Usize) : Result T := Array.index_usize T 32#usize s i /- [arrays::index_array_u32]: - Source: 'tests/src/arrays.rs', lines 47:0-47:53 -/ + Source: 'tests/src/arrays.rs', lines 47:0-49:1 -/ def index_array_u32 (s : Array U32 32#usize) (i : Usize) : Result U32 := Array.index_usize U32 32#usize s i /- [arrays::index_array_copy]: - Source: 'tests/src/arrays.rs', lines 51:0-51:45 -/ + Source: 'tests/src/arrays.rs', lines 51:0-53:1 -/ def index_array_copy (x : Array U32 32#usize) : Result U32 := Array.index_usize U32 32#usize x 0#usize /- [arrays::index_mut_array]: - Source: 'tests/src/arrays.rs', lines 55:0-55:62 -/ + Source: 'tests/src/arrays.rs', lines 55:0-57:1 -/ def index_mut_array (T : Type) (s : Array T 32#usize) (i : Usize) : Result (T × (T → Result (Array T 32#usize))) @@ -77,12 +77,12 @@ def index_mut_array Array.index_mut_usize T 32#usize s i /- [arrays::index_slice]: - Source: 'tests/src/arrays.rs', lines 59:0-59:46 -/ + Source: 'tests/src/arrays.rs', lines 59:0-61:1 -/ def index_slice (T : Type) (s : Slice T) (i : Usize) : Result T := Slice.index_usize T s i /- [arrays::index_mut_slice]: - Source: 'tests/src/arrays.rs', lines 63:0-63:58 -/ + Source: 'tests/src/arrays.rs', lines 63:0-65:1 -/ def index_mut_slice (T : Type) (s : Slice T) (i : Usize) : Result (T × (T → Result (Slice T))) @@ -90,7 +90,7 @@ def index_mut_slice Slice.index_mut_usize T s i /- [arrays::slice_subslice_shared_]: - Source: 'tests/src/arrays.rs', lines 67:0-67:70 -/ + Source: 'tests/src/arrays.rs', lines 67:0-69:1 -/ def slice_subslice_shared_ (x : Slice U32) (y : Usize) (z : Usize) : Result (Slice U32) := core.slice.index.Slice.index U32 (core.ops.range.Range Usize) @@ -98,7 +98,7 @@ def slice_subslice_shared_ { start := y, end_ := z } /- [arrays::slice_subslice_mut_]: - Source: 'tests/src/arrays.rs', lines 71:0-71:75 -/ + Source: 'tests/src/arrays.rs', lines 71:0-73:1 -/ def slice_subslice_mut_ (x : Slice U32) (y : Usize) (z : Usize) : Result ((Slice U32) × (Slice U32 → Result (Slice U32))) @@ -111,12 +111,12 @@ def slice_subslice_mut_ Result.ok (s, index_mut_back) /- [arrays::array_to_slice_shared_]: - Source: 'tests/src/arrays.rs', lines 75:0-75:54 -/ + Source: 'tests/src/arrays.rs', lines 75:0-77:1 -/ def array_to_slice_shared_ (x : Array U32 32#usize) : Result (Slice U32) := Array.to_slice U32 32#usize x /- [arrays::array_to_slice_mut_]: - Source: 'tests/src/arrays.rs', lines 79:0-79:59 -/ + Source: 'tests/src/arrays.rs', lines 79:0-81:1 -/ def array_to_slice_mut_ (x : Array U32 32#usize) : Result ((Slice U32) × (Slice U32 → Result (Array U32 32#usize))) @@ -124,7 +124,7 @@ def array_to_slice_mut_ Array.to_slice_mut U32 32#usize x /- [arrays::array_subslice_shared_]: - Source: 'tests/src/arrays.rs', lines 83:0-83:74 -/ + Source: 'tests/src/arrays.rs', lines 83:0-85:1 -/ def array_subslice_shared_ (x : Array U32 32#usize) (y : Usize) (z : Usize) : Result (Slice U32) := core.array.Array.index U32 (core.ops.range.Range Usize) 32#usize @@ -133,7 +133,7 @@ def array_subslice_shared_ { start := y, end_ := z } /- [arrays::array_subslice_mut_]: - Source: 'tests/src/arrays.rs', lines 87:0-87:79 -/ + Source: 'tests/src/arrays.rs', lines 87:0-89:1 -/ def array_subslice_mut_ (x : Array U32 32#usize) (y : Usize) (z : Usize) : Result ((Slice U32) × (Slice U32 → Result (Array U32 32#usize))) @@ -147,17 +147,17 @@ def array_subslice_mut_ Result.ok (s, index_mut_back) /- [arrays::index_slice_0]: - Source: 'tests/src/arrays.rs', lines 91:0-91:38 -/ + Source: 'tests/src/arrays.rs', lines 91:0-93:1 -/ def index_slice_0 (T : Type) (s : Slice T) : Result T := Slice.index_usize T s 0#usize /- [arrays::index_array_0]: - Source: 'tests/src/arrays.rs', lines 95:0-95:42 -/ + Source: 'tests/src/arrays.rs', lines 95:0-97:1 -/ def index_array_0 (T : Type) (s : Array T 32#usize) : Result T := Array.index_usize T 32#usize s 0#usize /- [arrays::index_index_array]: - Source: 'tests/src/arrays.rs', lines 106:0-106:71 -/ + Source: 'tests/src/arrays.rs', lines 106:0-108:1 -/ def index_index_array (s : Array (Array U32 32#usize) 32#usize) (i : Usize) (j : Usize) : Result U32 @@ -167,7 +167,7 @@ def index_index_array Array.index_usize U32 32#usize a j /- [arrays::update_update_array]: - Source: 'tests/src/arrays.rs', lines 117:0-117:70 -/ + Source: 'tests/src/arrays.rs', lines 117:0-119:1 -/ def update_update_array (s : Array (Array U32 32#usize) 32#usize) (i : Usize) (j : Usize) : Result Unit @@ -181,37 +181,37 @@ def update_update_array Result.ok () /- [arrays::array_local_deep_copy]: - Source: 'tests/src/arrays.rs', lines 121:0-121:43 -/ + Source: 'tests/src/arrays.rs', lines 121:0-123:1 -/ def array_local_deep_copy (x : Array U32 32#usize) : Result Unit := Result.ok () /- [arrays::take_array]: - Source: 'tests/src/arrays.rs', lines 125:0-125:30 -/ + Source: 'tests/src/arrays.rs', lines 125:0-125:33 -/ def take_array (a : Array U32 2#usize) : Result Unit := Result.ok () /- [arrays::take_array_borrow]: - Source: 'tests/src/arrays.rs', lines 126:0-126:38 -/ + Source: 'tests/src/arrays.rs', lines 126:0-126:41 -/ def take_array_borrow (a : Array U32 2#usize) : Result Unit := Result.ok () /- [arrays::take_slice]: - Source: 'tests/src/arrays.rs', lines 127:0-127:28 -/ + Source: 'tests/src/arrays.rs', lines 127:0-127:31 -/ def take_slice (s : Slice U32) : Result Unit := Result.ok () /- [arrays::take_mut_slice]: - Source: 'tests/src/arrays.rs', lines 128:0-128:36 -/ + Source: 'tests/src/arrays.rs', lines 128:0-128:39 -/ def take_mut_slice (s : Slice U32) : Result (Slice U32) := Result.ok s /- [arrays::const_array]: - Source: 'tests/src/arrays.rs', lines 130:0-130:32 -/ + Source: 'tests/src/arrays.rs', lines 130:0-132:1 -/ def const_array : Result (Array U32 2#usize) := Result.ok (Array.make U32 2#usize [ 0#u32, 0#u32 ]) /- [arrays::const_slice]: - Source: 'tests/src/arrays.rs', lines 134:0-134:20 -/ + Source: 'tests/src/arrays.rs', lines 134:0-136:1 -/ def const_slice : Result Unit := do let _ ← @@ -219,7 +219,7 @@ def const_slice : Result Unit := Result.ok () /- [arrays::take_all]: - Source: 'tests/src/arrays.rs', lines 144:0-144:17 -/ + Source: 'tests/src/arrays.rs', lines 144:0-156:1 -/ def take_all : Result Unit := do let _ ← take_array (Array.make U32 2#usize [ 0#u32, 0#u32 ]) @@ -235,29 +235,29 @@ def take_all : Result Unit := Result.ok () /- [arrays::index_array]: - Source: 'tests/src/arrays.rs', lines 158:0-158:38 -/ + Source: 'tests/src/arrays.rs', lines 158:0-160:1 -/ def index_array (x : Array U32 2#usize) : Result U32 := Array.index_usize U32 2#usize x 0#usize /- [arrays::index_array_borrow]: - Source: 'tests/src/arrays.rs', lines 161:0-161:46 -/ + Source: 'tests/src/arrays.rs', lines 161:0-163:1 -/ def index_array_borrow (x : Array U32 2#usize) : Result U32 := Array.index_usize U32 2#usize x 0#usize /- [arrays::index_slice_u32_0]: - Source: 'tests/src/arrays.rs', lines 165:0-165:42 -/ + Source: 'tests/src/arrays.rs', lines 165:0-167:1 -/ def index_slice_u32_0 (x : Slice U32) : Result U32 := Slice.index_usize U32 x 0#usize /- [arrays::index_mut_slice_u32_0]: - Source: 'tests/src/arrays.rs', lines 169:0-169:50 -/ + Source: 'tests/src/arrays.rs', lines 169:0-171:1 -/ def index_mut_slice_u32_0 (x : Slice U32) : Result (U32 × (Slice U32)) := do let i ← Slice.index_usize U32 x 0#usize Result.ok (i, x) /- [arrays::index_all]: - Source: 'tests/src/arrays.rs', lines 173:0-173:25 -/ + Source: 'tests/src/arrays.rs', lines 173:0-185:1 -/ def index_all : Result U32 := do let i ← index_array (Array.make U32 2#usize [ 0#u32, 0#u32 ]) @@ -277,7 +277,7 @@ def index_all : Result U32 := Result.ok i8 /- [arrays::update_array]: - Source: 'tests/src/arrays.rs', lines 187:0-187:36 -/ + Source: 'tests/src/arrays.rs', lines 187:0-189:1 -/ def update_array (x : Array U32 2#usize) : Result Unit := do let (_, index_mut_back) ← Array.index_mut_usize U32 2#usize x 0#usize @@ -285,7 +285,7 @@ def update_array (x : Array U32 2#usize) : Result Unit := Result.ok () /- [arrays::update_array_mut_borrow]: - Source: 'tests/src/arrays.rs', lines 190:0-190:48 -/ + Source: 'tests/src/arrays.rs', lines 190:0-192:1 -/ def update_array_mut_borrow (x : Array U32 2#usize) : Result (Array U32 2#usize) := do @@ -293,14 +293,14 @@ def update_array_mut_borrow index_mut_back 1#u32 /- [arrays::update_mut_slice]: - Source: 'tests/src/arrays.rs', lines 193:0-193:38 -/ + Source: 'tests/src/arrays.rs', lines 193:0-195:1 -/ def update_mut_slice (x : Slice U32) : Result (Slice U32) := do let (_, index_mut_back) ← Slice.index_mut_usize U32 x 0#usize index_mut_back 1#u32 /- [arrays::update_all]: - Source: 'tests/src/arrays.rs', lines 197:0-197:19 -/ + Source: 'tests/src/arrays.rs', lines 197:0-203:1 -/ def update_all : Result Unit := do let _ ← update_array (Array.make U32 2#usize [ 0#u32, 0#u32 ]) @@ -312,7 +312,7 @@ def update_all : Result Unit := Result.ok () /- [arrays::range_all]: - Source: 'tests/src/arrays.rs', lines 208:0-208:18 -/ + Source: 'tests/src/arrays.rs', lines 208:0-212:1 -/ def range_all : Result Unit := do let (s, index_mut_back) ← @@ -326,12 +326,12 @@ def range_all : Result Unit := Result.ok () /- [arrays::deref_array_borrow]: - Source: 'tests/src/arrays.rs', lines 217:0-217:46 -/ + Source: 'tests/src/arrays.rs', lines 217:0-220:1 -/ def deref_array_borrow (x : Array U32 2#usize) : Result U32 := Array.index_usize U32 2#usize x 0#usize /- [arrays::deref_array_mut_borrow]: - Source: 'tests/src/arrays.rs', lines 222:0-222:54 -/ + Source: 'tests/src/arrays.rs', lines 222:0-225:1 -/ def deref_array_mut_borrow (x : Array U32 2#usize) : Result (U32 × (Array U32 2#usize)) := do @@ -339,12 +339,12 @@ def deref_array_mut_borrow Result.ok (i, x) /- [arrays::take_array_t]: - Source: 'tests/src/arrays.rs', lines 230:0-230:31 -/ + Source: 'tests/src/arrays.rs', lines 230:0-230:34 -/ def take_array_t (a : Array AB 2#usize) : Result Unit := Result.ok () /- [arrays::non_copyable_array]: - Source: 'tests/src/arrays.rs', lines 232:0-232:27 -/ + Source: 'tests/src/arrays.rs', lines 232:0-240:1 -/ def non_copyable_array : Result Unit := take_array_t (Array.make AB 2#usize [ AB.A, AB.B ]) @@ -362,7 +362,7 @@ divergent def sum_loop (s : Slice U32) (sum1 : U32) (i : Usize) : Result U32 := else Result.ok sum1 /- [arrays::sum]: - Source: 'tests/src/arrays.rs', lines 245:0-245:28 -/ + Source: 'tests/src/arrays.rs', lines 245:0-253:1 -/ def sum (s : Slice U32) : Result U32 := sum_loop s 0#u32 0#usize @@ -383,7 +383,7 @@ divergent def sum2_loop else Result.ok sum1 /- [arrays::sum2]: - Source: 'tests/src/arrays.rs', lines 255:0-255:41 -/ + Source: 'tests/src/arrays.rs', lines 255:0-264:1 -/ def sum2 (s : Slice U32) (s2 : Slice U32) : Result U32 := let i := Slice.len U32 s let i1 := Slice.len U32 s2 @@ -392,7 +392,7 @@ def sum2 (s : Slice U32) (s2 : Slice U32) : Result U32 := else Result.fail .panic /- [arrays::f0]: - Source: 'tests/src/arrays.rs', lines 266:0-266:11 -/ + Source: 'tests/src/arrays.rs', lines 266:0-269:1 -/ def f0 : Result Unit := do let (s, to_slice_mut_back) ← @@ -403,7 +403,7 @@ def f0 : Result Unit := Result.ok () /- [arrays::f1]: - Source: 'tests/src/arrays.rs', lines 271:0-271:11 -/ + Source: 'tests/src/arrays.rs', lines 271:0-274:1 -/ def f1 : Result Unit := do let (_, index_mut_back) ← @@ -413,12 +413,12 @@ def f1 : Result Unit := Result.ok () /- [arrays::f2]: - Source: 'tests/src/arrays.rs', lines 276:0-276:17 -/ + Source: 'tests/src/arrays.rs', lines 276:0-276:20 -/ def f2 (i : U32) : Result Unit := Result.ok () /- [arrays::f4]: - Source: 'tests/src/arrays.rs', lines 285:0-285:54 -/ + Source: 'tests/src/arrays.rs', lines 285:0-287:1 -/ def f4 (x : Array U32 32#usize) (y : Usize) (z : Usize) : Result (Slice U32) := core.array.Array.index U32 (core.ops.range.Range Usize) 32#usize (core.ops.index.IndexSliceTIInst U32 (core.ops.range.Range Usize) @@ -426,7 +426,7 @@ def f4 (x : Array U32 32#usize) (y : Usize) (z : Usize) : Result (Slice U32) := { start := y, end_ := z } /- [arrays::f3]: - Source: 'tests/src/arrays.rs', lines 278:0-278:18 -/ + Source: 'tests/src/arrays.rs', lines 278:0-283:1 -/ def f3 : Result U32 := do let i ← @@ -440,17 +440,17 @@ def f3 : Result U32 := sum2 s s1 /- [arrays::SZ] - Source: 'tests/src/arrays.rs', lines 289:0-289:19 -/ + Source: 'tests/src/arrays.rs', lines 289:0-289:25 -/ def SZ_body : Result Usize := Result.ok 32#usize def SZ : Usize := eval_global SZ_body /- [arrays::f5]: - Source: 'tests/src/arrays.rs', lines 292:0-292:31 -/ + Source: 'tests/src/arrays.rs', lines 292:0-294:1 -/ def f5 (x : Array U32 32#usize) : Result U32 := Array.index_usize U32 32#usize x 0#usize /- [arrays::ite]: - Source: 'tests/src/arrays.rs', lines 297:0-297:12 -/ + Source: 'tests/src/arrays.rs', lines 297:0-304:1 -/ def ite : Result Unit := do let (s, to_slice_mut_back) ← @@ -477,7 +477,7 @@ divergent def zero_slice_loop else Result.ok a /- [arrays::zero_slice]: - Source: 'tests/src/arrays.rs', lines 306:0-306:31 -/ + Source: 'tests/src/arrays.rs', lines 306:0-313:1 -/ def zero_slice (a : Slice U8) : Result (Slice U8) := let len := Slice.len U8 a zero_slice_loop a 0#usize len @@ -492,7 +492,7 @@ divergent def iter_mut_slice_loop (len : Usize) (i : Usize) : Result Unit := else Result.ok () /- [arrays::iter_mut_slice]: - Source: 'tests/src/arrays.rs', lines 315:0-315:35 -/ + Source: 'tests/src/arrays.rs', lines 315:0-321:1 -/ def iter_mut_slice (a : Slice U8) : Result (Slice U8) := do let len := Slice.len U8 a @@ -514,7 +514,7 @@ divergent def sum_mut_slice_loop else Result.ok s /- [arrays::sum_mut_slice]: - Source: 'tests/src/arrays.rs', lines 323:0-323:42 -/ + Source: 'tests/src/arrays.rs', lines 323:0-331:1 -/ def sum_mut_slice (a : Slice U32) : Result (U32 × (Slice U32)) := do let i ← sum_mut_slice_loop a 0#usize 0#u32 diff --git a/tests/lean/Avl/Funs.lean b/tests/lean/Avl/Funs.lean index bb265ee76..b5a1e1929 100644 --- a/tests/lean/Avl/Funs.lean +++ b/tests/lean/Avl/Funs.lean @@ -10,7 +10,7 @@ set_option linter.unusedVariables false namespace avl /- [avl::{avl::Ord for i32}::cmp]: - Source: 'src/avl.rs', lines 8:4-8:43 -/ + Source: 'src/avl.rs', lines 8:4-16:5 -/ def OrdI32.cmp (self : I32) (other : I32) : Result Ordering := if self < other then Result.ok Ordering.Less @@ -20,14 +20,14 @@ def OrdI32.cmp (self : I32) (other : I32) : Result Ordering := else Result.ok Ordering.Greater /- Trait implementation: [avl::{avl::Ord for i32}] - Source: 'src/avl.rs', lines 7:0-7:16 -/ + Source: 'src/avl.rs', lines 7:0-17:1 -/ @[reducible] def OrdI32 : Ord I32 := { cmp := OrdI32.cmp } /- [avl::{avl::Node}#1::rotate_left]: - Source: 'src/avl.rs', lines 41:4-41:65 -/ + Source: 'src/avl.rs', lines 41:4-90:5 -/ def Node.rotate_left (T : Type) (root : Node T) (z : Node T) : Result (Node T) := let (b, o) := core.mem.replace (Option (Node T)) z.left none @@ -43,7 +43,7 @@ def Node.rotate_left root1.right 0#i8) /- [avl::{avl::Node}#1::rotate_right]: - Source: 'src/avl.rs', lines 92:4-92:66 -/ + Source: 'src/avl.rs', lines 92:4-136:5 -/ def Node.rotate_right (T : Type) (root : Node T) (z : Node T) : Result (Node T) := let (b, o) := core.mem.replace (Option (Node T)) z.right none @@ -59,7 +59,7 @@ def Node.rotate_right x.left x.right 0#i8)) 0#i8) /- [avl::{avl::Node}#1::rotate_left_right]: - Source: 'src/avl.rs', lines 138:4-138:72 -/ + Source: 'src/avl.rs', lines 138:4-186:5 -/ def Node.rotate_left_right (T : Type) (root : Node T) (z : Node T) : Result (Node T) := do @@ -84,7 +84,7 @@ def Node.rotate_left_right (some (Node.mk x.value x.left x.right 0#i8)) 0#i8) /- [avl::{avl::Node}#1::rotate_right_left]: - Source: 'src/avl.rs', lines 188:4-188:72 -/ + Source: 'src/avl.rs', lines 188:4-236:5 -/ def Node.rotate_right_left (T : Type) (root : Node T) (z : Node T) : Result (Node T) := do @@ -109,7 +109,7 @@ def Node.rotate_right_left 0#i8)) (some (Node.mk z.value a z.right 1#i8)) 0#i8) /- [avl::{avl::Node}#2::insert_in_left]: - Source: 'src/avl.rs', lines 240:4-240:64 -/ + Source: 'src/avl.rs', lines 240:4-275:5 -/ mutual divergent def Node.insert_in_left (T : Type) (OrdInst : Ord T) (node : Node T) (value : T) : Result (Bool × (Node T)) @@ -140,7 +140,7 @@ mutual divergent def Node.insert_in_left else Result.ok (false, Node.mk node.value o node.right node.balance_factor) /- [avl::{avl::Tree}#3::insert_in_opt_node]: - Source: 'src/avl.rs', lines 356:4-356:76 -/ + Source: 'src/avl.rs', lines 356:4-371:5 -/ divergent def Tree.insert_in_opt_node (T : Type) (OrdInst : Ord T) (node : Option (Node T)) (value : T) : Result (Bool × (Option (Node T))) @@ -154,7 +154,7 @@ divergent def Tree.insert_in_opt_node Result.ok (b, some node2) /- [avl::{avl::Node}#2::insert_in_right]: - Source: 'src/avl.rs', lines 277:4-277:65 -/ + Source: 'src/avl.rs', lines 277:4-315:5 -/ divergent def Node.insert_in_right (T : Type) (OrdInst : Ord T) (node : Node T) (value : T) : Result (Bool × (Node T)) @@ -185,7 +185,7 @@ divergent def Node.insert_in_right else Result.ok (false, Node.mk node.value node.left o node.balance_factor) /- [avl::{avl::Node}#2::insert]: - Source: 'src/avl.rs', lines 318:4-318:56 -/ + Source: 'src/avl.rs', lines 318:4-334:5 -/ divergent def Node.insert (T : Type) (OrdInst : Ord T) (node : Node T) (value : T) : Result (Bool × (Node T)) @@ -200,7 +200,7 @@ divergent def Node.insert end /- [avl::{avl::Tree}#3::new]: - Source: 'src/avl.rs', lines 338:4-338:24 -/ + Source: 'src/avl.rs', lines 338:4-340:5 -/ def Tree.new (T : Type) (OrdInst : Ord T) : Result (Tree T) := Result.ok { root := none } @@ -221,13 +221,13 @@ divergent def Tree.find_loop | Ordering.Greater => Tree.find_loop T OrdInst value current_node.left /- [avl::{avl::Tree}#3::find]: - Source: 'src/avl.rs', lines 342:4-342:40 -/ + Source: 'src/avl.rs', lines 342:4-354:5 -/ def Tree.find (T : Type) (OrdInst : Ord T) (self : Tree T) (value : T) : Result Bool := Tree.find_loop T OrdInst value self.root /- [avl::{avl::Tree}#3::insert]: - Source: 'src/avl.rs', lines 374:4-374:46 -/ + Source: 'src/avl.rs', lines 374:4-376:5 -/ def Tree.insert (T : Type) (OrdInst : Ord T) (self : Tree T) (value : T) : Result (Bool × (Tree T)) diff --git a/tests/lean/Avl/Types.lean b/tests/lean/Avl/Types.lean index f2820dcb9..aa65c9bdb 100644 --- a/tests/lean/Avl/Types.lean +++ b/tests/lean/Avl/Types.lean @@ -9,19 +9,19 @@ set_option linter.unusedVariables false namespace avl /- [avl::Ordering] - Source: 'src/avl.rs', lines 19:0-19:17 -/ + Source: 'src/avl.rs', lines 19:0-23:1 -/ inductive Ordering := | Less : Ordering | Equal : Ordering | Greater : Ordering /- Trait declaration: [avl::Ord] - Source: 'src/avl.rs', lines 25:0-25:13 -/ + Source: 'src/avl.rs', lines 25:0-27:1 -/ structure Ord (Self : Type) where cmp : Self → Self → Result Ordering /- [avl::Node] - Source: 'src/avl.rs', lines 29:0-29:14 -/ + Source: 'src/avl.rs', lines 29:0-34:1 -/ inductive Node (T : Type) := | mk : T → Option (Node T) → Option (Node T) → I8 → Node T @@ -63,7 +63,7 @@ theorem Node.balance_factor._simpLemma_ {T : Type} (value : T) (left : Option by rfl /- [avl::Tree] - Source: 'src/avl.rs', lines 36:0-36:18 -/ + Source: 'src/avl.rs', lines 36:0-38:1 -/ structure Tree (T : Type) where root : Option (Node T) diff --git a/tests/lean/Betree/Funs.lean b/tests/lean/Betree/Funs.lean index b78047421..0b43187f8 100644 --- a/tests/lean/Betree/Funs.lean +++ b/tests/lean/Betree/Funs.lean @@ -11,7 +11,7 @@ set_option linter.unusedVariables false namespace betree /- [betree::betree::load_internal_node]: - Source: 'src/betree.rs', lines 36:0-36:52 -/ + Source: 'src/betree.rs', lines 36:0-38:1 -/ def betree.load_internal_node (id : U64) (st : State) : Result (State × (betree.List (U64 × betree.Message))) @@ -19,7 +19,7 @@ def betree.load_internal_node betree_utils.load_internal_node id st /- [betree::betree::store_internal_node]: - Source: 'src/betree.rs', lines 41:0-41:60 -/ + Source: 'src/betree.rs', lines 41:0-43:1 -/ def betree.store_internal_node (id : U64) (content : betree.List (U64 × betree.Message)) (st : State) : Result (State × Unit) @@ -27,13 +27,13 @@ def betree.store_internal_node betree_utils.store_internal_node id content st /- [betree::betree::load_leaf_node]: - Source: 'src/betree.rs', lines 46:0-46:44 -/ + Source: 'src/betree.rs', lines 46:0-48:1 -/ def betree.load_leaf_node (id : U64) (st : State) : Result (State × (betree.List (U64 × U64))) := betree_utils.load_leaf_node id st /- [betree::betree::store_leaf_node]: - Source: 'src/betree.rs', lines 51:0-51:52 -/ + Source: 'src/betree.rs', lines 51:0-53:1 -/ def betree.store_leaf_node (id : U64) (content : betree.List (U64 × U64)) (st : State) : Result (State × Unit) @@ -41,19 +41,19 @@ def betree.store_leaf_node betree_utils.store_leaf_node id content st /- [betree::betree::fresh_node_id]: - Source: 'src/betree.rs', lines 55:0-55:48 -/ + Source: 'src/betree.rs', lines 55:0-59:1 -/ def betree.fresh_node_id (counter : U64) : Result (U64 × U64) := do let counter1 ← counter + 1#u64 Result.ok (counter, counter1) /- [betree::betree::{betree::betree::NodeIdCounter}::new]: - Source: 'src/betree.rs', lines 206:4-206:20 -/ + Source: 'src/betree.rs', lines 206:4-208:5 -/ def betree.NodeIdCounter.new : Result betree.NodeIdCounter := Result.ok { next_node_id := 0#u64 } /- [betree::betree::{betree::betree::NodeIdCounter}::fresh_id]: - Source: 'src/betree.rs', lines 210:4-210:36 -/ + Source: 'src/betree.rs', lines 210:4-214:5 -/ def betree.NodeIdCounter.fresh_id (self : betree.NodeIdCounter) : Result (U64 × betree.NodeIdCounter) := do @@ -61,7 +61,7 @@ def betree.NodeIdCounter.fresh_id Result.ok (self.next_node_id, { next_node_id := i }) /- [betree::betree::upsert_update]: - Source: 'src/betree.rs', lines 234:0-234:70 -/ + Source: 'src/betree.rs', lines 234:0-273:1 -/ def betree.upsert_update (prev : Option U64) (st : betree.UpsertFunState) : Result U64 := match prev with @@ -94,7 +94,7 @@ divergent def betree.List.len_loop | betree.List.Nil => Result.ok len /- [betree::betree::{betree::betree::List}#1::len]: - Source: 'src/betree.rs', lines 276:4-276:24 -/ + Source: 'src/betree.rs', lines 276:4-284:5 -/ def betree.List.len (T : Type) (self : betree.List T) : Result U64 := betree.List.len_loop T self 0#u64 @@ -110,7 +110,7 @@ divergent def betree.List.reverse_loop | betree.List.Nil => Result.ok out /- [betree::betree::{betree::betree::List}#1::reverse]: - Source: 'src/betree.rs', lines 304:4-304:32 -/ + Source: 'src/betree.rs', lines 304:4-312:5 -/ def betree.List.reverse (T : Type) (self : betree.List T) : Result (betree.List T) := betree.List.reverse_loop T self betree.List.Nil @@ -134,7 +134,7 @@ divergent def betree.List.split_at_loop Result.ok (l, self) /- [betree::betree::{betree::betree::List}#1::split_at]: - Source: 'src/betree.rs', lines 287:4-287:55 -/ + Source: 'src/betree.rs', lines 287:4-302:5 -/ def betree.List.split_at (T : Type) (self : betree.List T) (n : U64) : Result ((betree.List T) × (betree.List T)) @@ -142,14 +142,14 @@ def betree.List.split_at betree.List.split_at_loop T n betree.List.Nil self /- [betree::betree::{betree::betree::List}#1::push_front]: - Source: 'src/betree.rs', lines 315:4-315:34 -/ + Source: 'src/betree.rs', lines 315:4-319:5 -/ def betree.List.push_front (T : Type) (self : betree.List T) (x : T) : Result (betree.List T) := let (tl, _) := core.mem.replace (betree.List T) self betree.List.Nil Result.ok (betree.List.Cons x tl) /- [betree::betree::{betree::betree::List}#1::pop_front]: - Source: 'src/betree.rs', lines 322:4-322:32 -/ + Source: 'src/betree.rs', lines 322:4-332:5 -/ def betree.List.pop_front (T : Type) (self : betree.List T) : Result (T × (betree.List T)) := let (ls, _) := core.mem.replace (betree.List T) self betree.List.Nil @@ -158,14 +158,14 @@ def betree.List.pop_front | betree.List.Nil => Result.fail .panic /- [betree::betree::{betree::betree::List}#1::hd]: - Source: 'src/betree.rs', lines 334:4-334:22 -/ + Source: 'src/betree.rs', lines 334:4-339:5 -/ def betree.List.hd (T : Type) (self : betree.List T) : Result T := match self with | betree.List.Cons hd _ => Result.ok hd | betree.List.Nil => Result.fail .panic /- [betree::betree::{betree::betree::List<(u64, T)>}#2::head_has_key]: - Source: 'src/betree.rs', lines 343:4-343:44 -/ + Source: 'src/betree.rs', lines 343:4-348:5 -/ def betree.ListPairU64T.head_has_key (T : Type) (self : betree.List (U64 × T)) (key : U64) : Result Bool := match self with @@ -197,7 +197,7 @@ divergent def betree.ListPairU64T.partition_at_pivot_loop Result.ok (l, l1) /- [betree::betree::{betree::betree::List<(u64, T)>}#2::partition_at_pivot]: - Source: 'src/betree.rs', lines 355:4-355:73 -/ + Source: 'src/betree.rs', lines 355:4-370:5 -/ def betree.ListPairU64T.partition_at_pivot (T : Type) (self : betree.List (U64 × T)) (pivot : U64) : Result ((betree.List (U64 × T)) × (betree.List (U64 × T))) @@ -206,7 +206,7 @@ def betree.ListPairU64T.partition_at_pivot betree.List.Nil self /- [betree::betree::{betree::betree::Leaf}#3::split]: - Source: 'src/betree.rs', lines 378:4-383:17 -/ + Source: 'src/betree.rs', lines 378:4-409:5 -/ def betree.Leaf.split (self : betree.Leaf) (content : betree.List (U64 × U64)) (params : betree.Params) (node_id_cnt : betree.NodeIdCounter) (st : State) : @@ -250,7 +250,7 @@ divergent def betree.Node.lookup_first_message_for_key_loop | betree.List.Nil => Result.ok (betree.List.Nil, Result.ok) /- [betree::betree::{betree::betree::Node}#5::lookup_first_message_for_key]: - Source: 'src/betree.rs', lines 792:4-795:34 -/ + Source: 'src/betree.rs', lines 792:4-810:5 -/ @[reducible] def betree.Node.lookup_first_message_for_key (key : U64) (msgs : betree.List (U64 × betree.Message)) : @@ -289,7 +289,7 @@ divergent def betree.Node.apply_upserts_loop Result.ok (v, msgs1) /- [betree::betree::{betree::betree::Node}#5::apply_upserts]: - Source: 'src/betree.rs', lines 820:4-820:94 -/ + Source: 'src/betree.rs', lines 820:4-844:5 -/ @[reducible] def betree.Node.apply_upserts (msgs : betree.List (U64 × betree.Message)) (prev : Option U64) (key : U64) @@ -314,14 +314,14 @@ divergent def betree.Node.lookup_in_bindings_loop | betree.List.Nil => Result.ok none /- [betree::betree::{betree::betree::Node}#5::lookup_in_bindings]: - Source: 'src/betree.rs', lines 649:4-649:84 -/ + Source: 'src/betree.rs', lines 649:4-660:5 -/ @[reducible] def betree.Node.lookup_in_bindings (key : U64) (bindings : betree.List (U64 × U64)) : Result (Option U64) := betree.Node.lookup_in_bindings_loop key bindings /- [betree::betree::{betree::betree::Internal}#4::lookup_in_children]: - Source: 'src/betree.rs', lines 414:4-414:63 -/ + Source: 'src/betree.rs', lines 414:4-420:5 -/ mutual divergent def betree.Internal.lookup_in_children (self : betree.Internal) (key : U64) (st : State) : Result (State × ((Option U64) × betree.Internal)) @@ -337,7 +337,7 @@ mutual divergent def betree.Internal.lookup_in_children Result.ok (st1, (o, betree.Internal.mk self.id self.pivot self.left n)) /- [betree::betree::{betree::betree::Node}#5::lookup]: - Source: 'src/betree.rs', lines 712:4-712:58 -/ + Source: 'src/betree.rs', lines 712:4-785:5 -/ divergent def betree.Node.lookup (self : betree.Node) (key : U64) (st : State) : Result (State × ((Option U64) × betree.Node)) @@ -416,7 +416,7 @@ divergent def betree.Node.filter_messages_for_key_loop | betree.List.Nil => Result.ok betree.List.Nil /- [betree::betree::{betree::betree::Node}#5::filter_messages_for_key]: - Source: 'src/betree.rs', lines 683:4-683:77 -/ + Source: 'src/betree.rs', lines 683:4-692:5 -/ @[reducible] def betree.Node.filter_messages_for_key (key : U64) (msgs : betree.List (U64 × betree.Message)) : @@ -449,7 +449,7 @@ divergent def betree.Node.lookup_first_message_after_key_loop | betree.List.Nil => Result.ok (betree.List.Nil, Result.ok) /- [betree::betree::{betree::betree::Node}#5::lookup_first_message_after_key]: - Source: 'src/betree.rs', lines 694:4-697:34 -/ + Source: 'src/betree.rs', lines 694:4-706:5 -/ @[reducible] def betree.Node.lookup_first_message_after_key (key : U64) (msgs : betree.List (U64 × betree.Message)) : @@ -459,7 +459,7 @@ def betree.Node.lookup_first_message_after_key betree.Node.lookup_first_message_after_key_loop key msgs /- [betree::betree::{betree::betree::Node}#5::apply_to_internal]: - Source: 'src/betree.rs', lines 534:4-534:89 -/ + Source: 'src/betree.rs', lines 534:4-586:5 -/ def betree.Node.apply_to_internal (msgs : betree.List (U64 × betree.Message)) (key : U64) (new_msg : betree.Message) : @@ -538,7 +538,7 @@ divergent def betree.Node.apply_messages_to_internal_loop | betree.List.Nil => Result.ok msgs /- [betree::betree::{betree::betree::Node}#5::apply_messages_to_internal]: - Source: 'src/betree.rs', lines 518:4-521:5 -/ + Source: 'src/betree.rs', lines 518:4-526:5 -/ @[reducible] def betree.Node.apply_messages_to_internal (msgs : betree.List (U64 × betree.Message)) @@ -571,7 +571,7 @@ divergent def betree.Node.lookup_mut_in_bindings_loop | betree.List.Nil => Result.ok (betree.List.Nil, Result.ok) /- [betree::betree::{betree::betree::Node}#5::lookup_mut_in_bindings]: - Source: 'src/betree.rs', lines 664:4-667:32 -/ + Source: 'src/betree.rs', lines 664:4-677:5 -/ @[reducible] def betree.Node.lookup_mut_in_bindings (key : U64) (bindings : betree.List (U64 × U64)) : @@ -581,7 +581,7 @@ def betree.Node.lookup_mut_in_bindings betree.Node.lookup_mut_in_bindings_loop key bindings /- [betree::betree::{betree::betree::Node}#5::apply_to_leaf]: - Source: 'src/betree.rs', lines 476:4-476:87 -/ + Source: 'src/betree.rs', lines 476:4-515:5 -/ def betree.Node.apply_to_leaf (bindings : betree.List (U64 × U64)) (key : U64) (new_msg : betree.Message) : @@ -636,7 +636,7 @@ divergent def betree.Node.apply_messages_to_leaf_loop | betree.List.Nil => Result.ok bindings /- [betree::betree::{betree::betree::Node}#5::apply_messages_to_leaf]: - Source: 'src/betree.rs', lines 463:4-466:5 -/ + Source: 'src/betree.rs', lines 463:4-471:5 -/ @[reducible] def betree.Node.apply_messages_to_leaf (bindings : betree.List (U64 × U64)) @@ -646,7 +646,7 @@ def betree.Node.apply_messages_to_leaf betree.Node.apply_messages_to_leaf_loop bindings new_msgs /- [betree::betree::{betree::betree::Internal}#4::flush]: - Source: 'src/betree.rs', lines 429:4-434:26 -/ + Source: 'src/betree.rs', lines 429:4-458:5 -/ mutual divergent def betree.Internal.flush (self : betree.Internal) (params : betree.Params) (node_id_cnt : betree.NodeIdCounter) @@ -687,7 +687,7 @@ mutual divergent def betree.Internal.flush self.left n, node_id_cnt1))) /- [betree::betree::{betree::betree::Node}#5::apply_messages]: - Source: 'src/betree.rs', lines 601:4-606:5 -/ + Source: 'src/betree.rs', lines 601:4-645:5 -/ divergent def betree.Node.apply_messages (self : betree.Node) (params : betree.Params) (node_id_cnt : betree.NodeIdCounter) @@ -734,7 +734,7 @@ divergent def betree.Node.apply_messages end /- [betree::betree::{betree::betree::Node}#5::apply]: - Source: 'src/betree.rs', lines 589:4-595:5 -/ + Source: 'src/betree.rs', lines 589:4-598:5 -/ def betree.Node.apply (self : betree.Node) (params : betree.Params) (node_id_cnt : betree.NodeIdCounter) (key : U64) (new_msg : betree.Message) @@ -749,7 +749,7 @@ def betree.Node.apply Result.ok (st1, (self1, node_id_cnt1)) /- [betree::betree::{betree::betree::BeTree}#6::new]: - Source: 'src/betree.rs', lines 848:4-848:60 -/ + Source: 'src/betree.rs', lines 848:4-862:5 -/ def betree.BeTree.new (min_flush_size : U64) (split_size : U64) (st : State) : Result (State × betree.BeTree) @@ -766,7 +766,7 @@ def betree.BeTree.new }) /- [betree::betree::{betree::betree::BeTree}#6::apply]: - Source: 'src/betree.rs', lines 867:4-867:47 -/ + Source: 'src/betree.rs', lines 867:4-870:5 -/ def betree.BeTree.apply (self : betree.BeTree) (key : U64) (msg : betree.Message) (st : State) : Result (State × betree.BeTree) @@ -778,7 +778,7 @@ def betree.BeTree.apply Result.ok (st1, { self with node_id_cnt := nic, root := n }) /- [betree::betree::{betree::betree::BeTree}#6::insert]: - Source: 'src/betree.rs', lines 873:4-873:52 -/ + Source: 'src/betree.rs', lines 873:4-876:5 -/ def betree.BeTree.insert (self : betree.BeTree) (key : U64) (value : U64) (st : State) : Result (State × betree.BeTree) @@ -786,7 +786,7 @@ def betree.BeTree.insert betree.BeTree.apply self key (betree.Message.Insert value) st /- [betree::betree::{betree::betree::BeTree}#6::delete]: - Source: 'src/betree.rs', lines 879:4-879:38 -/ + Source: 'src/betree.rs', lines 879:4-882:5 -/ def betree.BeTree.delete (self : betree.BeTree) (key : U64) (st : State) : Result (State × betree.BeTree) @@ -794,7 +794,7 @@ def betree.BeTree.delete betree.BeTree.apply self key betree.Message.Delete st /- [betree::betree::{betree::betree::BeTree}#6::upsert]: - Source: 'src/betree.rs', lines 885:4-885:59 -/ + Source: 'src/betree.rs', lines 885:4-888:5 -/ def betree.BeTree.upsert (self : betree.BeTree) (key : U64) (upd : betree.UpsertFunState) (st : State) : @@ -803,7 +803,7 @@ def betree.BeTree.upsert betree.BeTree.apply self key (betree.Message.Upsert upd) st /- [betree::betree::{betree::betree::BeTree}#6::lookup]: - Source: 'src/betree.rs', lines 894:4-894:62 -/ + Source: 'src/betree.rs', lines 894:4-896:5 -/ def betree.BeTree.lookup (self : betree.BeTree) (key : U64) (st : State) : Result (State × ((Option U64) × betree.BeTree)) @@ -813,7 +813,7 @@ def betree.BeTree.lookup Result.ok (st1, (o, { self with root := n })) /- [betree::main]: - Source: 'src/main.rs', lines 4:0-4:9 -/ + Source: 'src/main.rs', lines 4:0-4:12 -/ def main : Result Unit := Result.ok () diff --git a/tests/lean/Betree/FunsExternal_Template.lean b/tests/lean/Betree/FunsExternal_Template.lean index 2fb40ebca..aba0e0485 100644 --- a/tests/lean/Betree/FunsExternal_Template.lean +++ b/tests/lean/Betree/FunsExternal_Template.lean @@ -10,24 +10,24 @@ set_option linter.unusedVariables false open betree /- [betree::betree_utils::load_internal_node]: - Source: 'src/betree_utils.rs', lines 98:0-98:63 -/ + Source: 'src/betree_utils.rs', lines 98:0-112:1 -/ axiom betree_utils.load_internal_node : U64 → State → Result (State × (betree.List (U64 × betree.Message))) /- [betree::betree_utils::store_internal_node]: - Source: 'src/betree_utils.rs', lines 115:0-115:71 -/ + Source: 'src/betree_utils.rs', lines 115:0-129:1 -/ axiom betree_utils.store_internal_node : U64 → betree.List (U64 × betree.Message) → State → Result (State × Unit) /- [betree::betree_utils::load_leaf_node]: - Source: 'src/betree_utils.rs', lines 132:0-132:55 -/ + Source: 'src/betree_utils.rs', lines 132:0-142:1 -/ axiom betree_utils.load_leaf_node : U64 → State → Result (State × (betree.List (U64 × U64))) /- [betree::betree_utils::store_leaf_node]: - Source: 'src/betree_utils.rs', lines 145:0-145:63 -/ + Source: 'src/betree_utils.rs', lines 145:0-155:1 -/ axiom betree_utils.store_leaf_node : U64 → betree.List (U64 × U64) → State → Result (State × Unit) diff --git a/tests/lean/Betree/Types.lean b/tests/lean/Betree/Types.lean index 9ae80f529..1075d1401 100644 --- a/tests/lean/Betree/Types.lean +++ b/tests/lean/Betree/Types.lean @@ -10,26 +10,26 @@ set_option linter.unusedVariables false namespace betree /- [betree::betree::List] - Source: 'src/betree.rs', lines 17:0-17:23 -/ + Source: 'src/betree.rs', lines 17:0-20:1 -/ inductive betree.List (T : Type) := | Cons : T → betree.List T → betree.List T | Nil : betree.List T /- [betree::betree::UpsertFunState] - Source: 'src/betree.rs', lines 63:0-63:23 -/ + Source: 'src/betree.rs', lines 63:0-66:1 -/ inductive betree.UpsertFunState := | Add : U64 → betree.UpsertFunState | Sub : U64 → betree.UpsertFunState /- [betree::betree::Message] - Source: 'src/betree.rs', lines 69:0-69:23 -/ + Source: 'src/betree.rs', lines 69:0-117:1 -/ inductive betree.Message := | Insert : U64 → betree.Message | Delete : betree.Message | Upsert : betree.UpsertFunState → betree.Message /- [betree::betree::Leaf] - Source: 'src/betree.rs', lines 167:0-167:11 -/ + Source: 'src/betree.rs', lines 167:0-171:1 -/ structure betree.Leaf where id : U64 size : U64 @@ -37,12 +37,12 @@ structure betree.Leaf where mutual /- [betree::betree::Internal] - Source: 'src/betree.rs', lines 156:0-156:15 -/ + Source: 'src/betree.rs', lines 156:0-161:1 -/ inductive betree.Internal := | mk : U64 → U64 → betree.Node → betree.Node → betree.Internal /- [betree::betree::Node] - Source: 'src/betree.rs', lines 179:0-179:9 -/ + Source: 'src/betree.rs', lines 179:0-184:1 -/ inductive betree.Node := | Internal : betree.Internal → betree.Node | Leaf : betree.Leaf → betree.Node @@ -86,18 +86,18 @@ theorem betree.Internal.right._simpLemma_ (id : U64) (pivot : U64) (left : (betree.Internal.mk id pivot left right).right = right := by rfl /- [betree::betree::Params] - Source: 'src/betree.rs', lines 187:0-187:13 -/ + Source: 'src/betree.rs', lines 187:0-199:1 -/ structure betree.Params where min_flush_size : U64 split_size : U64 /- [betree::betree::NodeIdCounter] - Source: 'src/betree.rs', lines 201:0-201:20 -/ + Source: 'src/betree.rs', lines 201:0-203:1 -/ structure betree.NodeIdCounter where next_node_id : U64 /- [betree::betree::BeTree] - Source: 'src/betree.rs', lines 218:0-218:17 -/ + Source: 'src/betree.rs', lines 218:0-225:1 -/ structure betree.BeTree where params : betree.Params node_id_cnt : betree.NodeIdCounter diff --git a/tests/lean/Bitwise.lean b/tests/lean/Bitwise.lean index 7f3476617..d9f204526 100644 --- a/tests/lean/Bitwise.lean +++ b/tests/lean/Bitwise.lean @@ -9,31 +9,31 @@ set_option linter.unusedVariables false namespace bitwise /- [bitwise::shift_u32]: - Source: 'tests/src/bitwise.rs', lines 5:0-5:31 -/ + Source: 'tests/src/bitwise.rs', lines 5:0-10:1 -/ def shift_u32 (a : U32) : Result U32 := do let t ← a >>> 16#usize t <<< 16#usize /- [bitwise::shift_i32]: - Source: 'tests/src/bitwise.rs', lines 12:0-12:31 -/ + Source: 'tests/src/bitwise.rs', lines 12:0-17:1 -/ def shift_i32 (a : I32) : Result I32 := do let t ← a >>> 16#isize t <<< 16#isize /- [bitwise::xor_u32]: - Source: 'tests/src/bitwise.rs', lines 19:0-19:37 -/ + Source: 'tests/src/bitwise.rs', lines 19:0-21:1 -/ def xor_u32 (a : U32) (b : U32) : Result U32 := Result.ok (a ^^^ b) /- [bitwise::or_u32]: - Source: 'tests/src/bitwise.rs', lines 23:0-23:36 -/ + Source: 'tests/src/bitwise.rs', lines 23:0-25:1 -/ def or_u32 (a : U32) (b : U32) : Result U32 := Result.ok (a ||| b) /- [bitwise::and_u32]: - Source: 'tests/src/bitwise.rs', lines 27:0-27:37 -/ + Source: 'tests/src/bitwise.rs', lines 27:0-29:1 -/ def and_u32 (a : U32) (b : U32) : Result U32 := Result.ok (a &&& b) diff --git a/tests/lean/Constants.lean b/tests/lean/Constants.lean index 8ba74ae65..ddf0ccc64 100644 --- a/tests/lean/Constants.lean +++ b/tests/lean/Constants.lean @@ -9,123 +9,123 @@ set_option linter.unusedVariables false namespace constants /- [constants::X0] - Source: 'tests/src/constants.rs', lines 8:0-8:17 -/ + Source: 'tests/src/constants.rs', lines 8:0-8:22 -/ def X0_body : Result U32 := Result.ok 0#u32 def X0 : U32 := eval_global X0_body /- [constants::X1] - Source: 'tests/src/constants.rs', lines 10:0-10:17 -/ + Source: 'tests/src/constants.rs', lines 10:0-10:29 -/ def X1_body : Result U32 := Result.ok core_u32_max def X1 : U32 := eval_global X1_body /- [constants::X2] - Source: 'tests/src/constants.rs', lines 13:0-13:17 -/ + Source: 'tests/src/constants.rs', lines 13:0-16:2 -/ def X2_body : Result U32 := Result.ok 3#u32 def X2 : U32 := eval_global X2_body /- [constants::incr]: - Source: 'tests/src/constants.rs', lines 20:0-20:32 -/ + Source: 'tests/src/constants.rs', lines 20:0-22:1 -/ def incr (n : U32) : Result U32 := n + 1#u32 /- [constants::X3] - Source: 'tests/src/constants.rs', lines 18:0-18:17 -/ + Source: 'tests/src/constants.rs', lines 18:0-18:29 -/ def X3_body : Result U32 := incr 32#u32 def X3 : U32 := eval_global X3_body /- [constants::mk_pair0]: - Source: 'tests/src/constants.rs', lines 26:0-26:51 -/ + Source: 'tests/src/constants.rs', lines 26:0-28:1 -/ def mk_pair0 (x : U32) (y : U32) : Result (U32 × U32) := Result.ok (x, y) /- [constants::Pair] - Source: 'tests/src/constants.rs', lines 39:0-39:23 -/ + Source: 'tests/src/constants.rs', lines 39:0-42:1 -/ structure Pair (T1 T2 : Type) where x : T1 y : T2 /- [constants::mk_pair1]: - Source: 'tests/src/constants.rs', lines 30:0-30:55 -/ + Source: 'tests/src/constants.rs', lines 30:0-32:1 -/ def mk_pair1 (x : U32) (y : U32) : Result (Pair U32 U32) := Result.ok { x := x, y := y } /- [constants::P0] - Source: 'tests/src/constants.rs', lines 34:0-34:24 -/ + Source: 'tests/src/constants.rs', lines 34:0-34:42 -/ def P0_body : Result (U32 × U32) := mk_pair0 0#u32 1#u32 def P0 : (U32 × U32) := eval_global P0_body /- [constants::P1] - Source: 'tests/src/constants.rs', lines 35:0-35:28 -/ + Source: 'tests/src/constants.rs', lines 35:0-35:46 -/ def P1_body : Result (Pair U32 U32) := mk_pair1 0#u32 1#u32 def P1 : Pair U32 U32 := eval_global P1_body /- [constants::P2] - Source: 'tests/src/constants.rs', lines 36:0-36:24 -/ + Source: 'tests/src/constants.rs', lines 36:0-36:34 -/ def P2_body : Result (U32 × U32) := Result.ok (0#u32, 1#u32) def P2 : (U32 × U32) := eval_global P2_body /- [constants::P3] - Source: 'tests/src/constants.rs', lines 37:0-37:28 -/ + Source: 'tests/src/constants.rs', lines 37:0-37:51 -/ def P3_body : Result (Pair U32 U32) := Result.ok { x := 0#u32, y := 1#u32 } def P3 : Pair U32 U32 := eval_global P3_body /- [constants::Wrap] - Source: 'tests/src/constants.rs', lines 52:0-52:18 -/ + Source: 'tests/src/constants.rs', lines 52:0-54:1 -/ structure Wrap (T : Type) where value : T /- [constants::{constants::Wrap}::new]: - Source: 'tests/src/constants.rs', lines 57:4-57:41 -/ + Source: 'tests/src/constants.rs', lines 57:4-59:5 -/ def Wrap.new (T : Type) (value : T) : Result (Wrap T) := Result.ok { value := value } /- [constants::Y] - Source: 'tests/src/constants.rs', lines 44:0-44:22 -/ + Source: 'tests/src/constants.rs', lines 44:0-44:38 -/ def Y_body : Result (Wrap I32) := Wrap.new I32 2#i32 def Y : Wrap I32 := eval_global Y_body /- [constants::unwrap_y]: - Source: 'tests/src/constants.rs', lines 46:0-46:30 -/ + Source: 'tests/src/constants.rs', lines 46:0-48:1 -/ def unwrap_y : Result I32 := Result.ok Y.value /- [constants::YVAL] - Source: 'tests/src/constants.rs', lines 50:0-50:19 -/ + Source: 'tests/src/constants.rs', lines 50:0-50:33 -/ def YVAL_body : Result I32 := unwrap_y def YVAL : I32 := eval_global YVAL_body /- [constants::get_z1::Z1] - Source: 'tests/src/constants.rs', lines 65:4-65:17 -/ + Source: 'tests/src/constants.rs', lines 65:4-65:22 -/ def get_z1.Z1_body : Result I32 := Result.ok 3#i32 def get_z1.Z1 : I32 := eval_global get_z1.Z1_body /- [constants::get_z1]: - Source: 'tests/src/constants.rs', lines 64:0-64:28 -/ + Source: 'tests/src/constants.rs', lines 64:0-67:1 -/ def get_z1 : Result I32 := Result.ok get_z1.Z1 /- [constants::add]: - Source: 'tests/src/constants.rs', lines 69:0-69:39 -/ + Source: 'tests/src/constants.rs', lines 69:0-71:1 -/ def add (a : I32) (b : I32) : Result I32 := a + b /- [constants::Q1] - Source: 'tests/src/constants.rs', lines 77:0-77:17 -/ + Source: 'tests/src/constants.rs', lines 77:0-77:22 -/ def Q1_body : Result I32 := Result.ok 5#i32 def Q1 : I32 := eval_global Q1_body /- [constants::Q2] - Source: 'tests/src/constants.rs', lines 78:0-78:17 -/ + Source: 'tests/src/constants.rs', lines 78:0-78:23 -/ def Q2_body : Result I32 := Result.ok Q1 def Q2 : I32 := eval_global Q2_body /- [constants::Q3] - Source: 'tests/src/constants.rs', lines 79:0-79:17 -/ + Source: 'tests/src/constants.rs', lines 79:0-79:31 -/ def Q3_body : Result I32 := add Q2 3#i32 def Q3 : I32 := eval_global Q3_body /- [constants::get_z2]: - Source: 'tests/src/constants.rs', lines 73:0-73:28 -/ + Source: 'tests/src/constants.rs', lines 73:0-75:1 -/ def get_z2 : Result I32 := do let i ← get_z1 @@ -133,37 +133,37 @@ def get_z2 : Result I32 := add Q1 i1 /- [constants::S1] - Source: 'tests/src/constants.rs', lines 83:0-83:18 -/ + Source: 'tests/src/constants.rs', lines 83:0-83:23 -/ def S1_body : Result U32 := Result.ok 6#u32 def S1 : U32 := eval_global S1_body /- [constants::S2] - Source: 'tests/src/constants.rs', lines 84:0-84:18 -/ + Source: 'tests/src/constants.rs', lines 84:0-84:30 -/ def S2_body : Result U32 := incr S1 def S2 : U32 := eval_global S2_body /- [constants::S3] - Source: 'tests/src/constants.rs', lines 85:0-85:29 -/ + Source: 'tests/src/constants.rs', lines 85:0-85:35 -/ def S3_body : Result (Pair U32 U32) := Result.ok P3 def S3 : Pair U32 U32 := eval_global S3_body /- [constants::S4] - Source: 'tests/src/constants.rs', lines 86:0-86:29 -/ + Source: 'tests/src/constants.rs', lines 86:0-86:47 -/ def S4_body : Result (Pair U32 U32) := mk_pair1 7#u32 8#u32 def S4 : Pair U32 U32 := eval_global S4_body /- [constants::V] - Source: 'tests/src/constants.rs', lines 89:0-89:31 -/ + Source: 'tests/src/constants.rs', lines 89:0-91:1 -/ structure V (T : Type) (N : Usize) where x : Array T N /- [constants::{constants::V}#1::LEN] - Source: 'tests/src/constants.rs', lines 94:4-94:24 -/ + Source: 'tests/src/constants.rs', lines 94:4-94:29 -/ def V.LEN_body (T : Type) (N : Usize) : Result Usize := Result.ok N def V.LEN (T : Type) (N : Usize) : Usize := eval_global (V.LEN_body T N) /- [constants::use_v]: - Source: 'tests/src/constants.rs', lines 97:0-97:42 -/ + Source: 'tests/src/constants.rs', lines 97:0-99:1 -/ def use_v (T : Type) (N : Usize) : Result Usize := Result.ok (V.LEN T N) diff --git a/tests/lean/Demo/Demo.lean b/tests/lean/Demo/Demo.lean index db02e68ca..2a792ea36 100644 --- a/tests/lean/Demo/Demo.lean +++ b/tests/lean/Demo/Demo.lean @@ -9,7 +9,7 @@ set_option linter.unusedVariables false namespace demo /- [demo::choose]: - Source: 'tests/src/demo.rs', lines 7:0-7:70 -/ + Source: 'tests/src/demo.rs', lines 7:0-13:1 -/ def choose (T : Type) (b : Bool) (x : T) (y : T) : Result (T × (T → Result (T × T))) @@ -21,26 +21,26 @@ def choose Result.ok (y, back) /- [demo::mul2_add1]: - Source: 'tests/src/demo.rs', lines 15:0-15:31 -/ + Source: 'tests/src/demo.rs', lines 15:0-17:1 -/ def mul2_add1 (x : U32) : Result U32 := do let i ← x + x i + 1#u32 /- [demo::use_mul2_add1]: - Source: 'tests/src/demo.rs', lines 19:0-19:43 -/ + Source: 'tests/src/demo.rs', lines 19:0-21:1 -/ def use_mul2_add1 (x : U32) (y : U32) : Result U32 := do let i ← mul2_add1 x i + y /- [demo::incr]: - Source: 'tests/src/demo.rs', lines 23:0-23:31 -/ + Source: 'tests/src/demo.rs', lines 23:0-25:1 -/ def incr (x : U32) : Result U32 := x + 1#u32 /- [demo::use_incr]: - Source: 'tests/src/demo.rs', lines 27:0-27:17 -/ + Source: 'tests/src/demo.rs', lines 27:0-32:1 -/ def use_incr : Result Unit := do let x ← incr 0#u32 @@ -49,13 +49,13 @@ def use_incr : Result Unit := Result.ok () /- [demo::CList] - Source: 'tests/src/demo.rs', lines 36:0-36:17 -/ + Source: 'tests/src/demo.rs', lines 36:0-39:1 -/ inductive CList (T : Type) := | CCons : T → CList T → CList T | CNil : CList T /- [demo::list_nth]: - Source: 'tests/src/demo.rs', lines 41:0-41:56 -/ + Source: 'tests/src/demo.rs', lines 41:0-54:1 -/ divergent def list_nth (T : Type) (l : CList T) (i : U32) : Result T := match l with | CList.CCons x tl => @@ -79,13 +79,13 @@ divergent def list_nth1_loop (T : Type) (l : CList T) (i : U32) : Result T := | CList.CNil => Result.fail .panic /- [demo::list_nth1]: - Source: 'tests/src/demo.rs', lines 56:0-56:65 -/ + Source: 'tests/src/demo.rs', lines 56:0-65:1 -/ @[reducible] def list_nth1 (T : Type) (l : CList T) (i : U32) : Result T := list_nth1_loop T l i /- [demo::list_nth_mut]: - Source: 'tests/src/demo.rs', lines 67:0-67:76 -/ + Source: 'tests/src/demo.rs', lines 67:0-80:1 -/ divergent def list_nth_mut (T : Type) (l : CList T) (i : U32) : Result (T × (T → Result (CList T))) @@ -109,7 +109,7 @@ divergent def list_nth_mut | CList.CNil => Result.fail .panic /- [demo::i32_id]: - Source: 'tests/src/demo.rs', lines 82:0-82:28 -/ + Source: 'tests/src/demo.rs', lines 82:0-88:1 -/ divergent def i32_id (i : I32) : Result I32 := if i = 0#i32 then Result.ok 0#i32 @@ -119,7 +119,7 @@ divergent def i32_id (i : I32) : Result I32 := i2 + 1#i32 /- [demo::list_tail]: - Source: 'tests/src/demo.rs', lines 90:0-90:64 -/ + Source: 'tests/src/demo.rs', lines 90:0-95:1 -/ divergent def list_tail (T : Type) (l : CList T) : Result ((CList T) × (CList T → Result (CList T))) @@ -137,26 +137,26 @@ divergent def list_tail | CList.CNil => Result.ok (CList.CNil, Result.ok) /- Trait declaration: [demo::Counter] - Source: 'tests/src/demo.rs', lines 99:0-99:17 -/ + Source: 'tests/src/demo.rs', lines 99:0-101:1 -/ structure Counter (Self : Type) where incr : Self → Result (Usize × Self) /- [demo::{demo::Counter for usize}::incr]: - Source: 'tests/src/demo.rs', lines 104:4-104:31 -/ + Source: 'tests/src/demo.rs', lines 104:4-108:5 -/ def CounterUsize.incr (self : Usize) : Result (Usize × Usize) := do let self1 ← self + 1#usize Result.ok (self, self1) /- Trait implementation: [demo::{demo::Counter for usize}] - Source: 'tests/src/demo.rs', lines 103:0-103:22 -/ + Source: 'tests/src/demo.rs', lines 103:0-109:1 -/ @[reducible] def CounterUsize : Counter Usize := { incr := CounterUsize.incr } /- [demo::use_counter]: - Source: 'tests/src/demo.rs', lines 111:0-111:59 -/ + Source: 'tests/src/demo.rs', lines 111:0-113:1 -/ def use_counter (T : Type) (CounterInst : Counter T) (cnt : T) : Result (Usize × T) := CounterInst.incr cnt diff --git a/tests/lean/External/Funs.lean b/tests/lean/External/Funs.lean index cf76ca2aa..54b8341e1 100644 --- a/tests/lean/External/Funs.lean +++ b/tests/lean/External/Funs.lean @@ -19,12 +19,12 @@ def core.marker.CopyU32 : core.marker.Copy U32 := { } /- [external::use_get]: - Source: 'tests/src/external.rs', lines 9:0-9:37 -/ + Source: 'tests/src/external.rs', lines 9:0-11:1 -/ def use_get (rc : core.cell.Cell U32) (st : State) : Result (State × U32) := core.cell.Cell.get U32 core.marker.CopyU32 rc st /- [external::incr]: - Source: 'tests/src/external.rs', lines 13:0-13:31 -/ + Source: 'tests/src/external.rs', lines 13:0-15:1 -/ def incr (rc : core.cell.Cell U32) (st : State) : Result (State × (core.cell.Cell U32)) diff --git a/tests/lean/Hashmap/Funs.lean b/tests/lean/Hashmap/Funs.lean index f01f1c4f0..c7c7f7fab 100644 --- a/tests/lean/Hashmap/Funs.lean +++ b/tests/lean/Hashmap/Funs.lean @@ -11,7 +11,7 @@ set_option linter.unusedVariables false namespace hashmap /- [hashmap::hash_key]: - Source: 'tests/src/hashmap.rs', lines 38:0-38:32 -/ + Source: 'tests/src/hashmap.rs', lines 38:0-43:1 -/ def hash_key (k : Usize) : Result Usize := Result.ok k @@ -30,7 +30,7 @@ divergent def HashMap.allocate_slots_loop else Result.ok slots /- [hashmap::{hashmap::HashMap}::allocate_slots]: - Source: 'tests/src/hashmap.rs', lines 63:4-63:78 -/ + Source: 'tests/src/hashmap.rs', lines 63:4-69:5 -/ @[reducible] def HashMap.allocate_slots (T : Type) (slots : alloc.vec.Vec (AList T)) (n : Usize) : @@ -39,7 +39,7 @@ def HashMap.allocate_slots HashMap.allocate_slots_loop T slots n /- [hashmap::{hashmap::HashMap}::new_with_capacity]: - Source: 'tests/src/hashmap.rs', lines 72:4-76:13 -/ + Source: 'tests/src/hashmap.rs', lines 72:4-87:5 -/ def HashMap.new_with_capacity (T : Type) (capacity : Usize) (max_load_dividend : Usize) (max_load_divisor : Usize) : @@ -59,7 +59,7 @@ def HashMap.new_with_capacity } /- [hashmap::{hashmap::HashMap}::new]: - Source: 'tests/src/hashmap.rs', lines 89:4-89:24 -/ + Source: 'tests/src/hashmap.rs', lines 89:4-92:5 -/ def HashMap.new (T : Type) : Result (HashMap T) := HashMap.new_with_capacity T 32#usize 4#usize 5#usize @@ -82,14 +82,14 @@ divergent def HashMap.clear_loop else Result.ok slots /- [hashmap::{hashmap::HashMap}::clear]: - Source: 'tests/src/hashmap.rs', lines 94:4-94:27 -/ + Source: 'tests/src/hashmap.rs', lines 94:4-102:5 -/ def HashMap.clear (T : Type) (self : HashMap T) : Result (HashMap T) := do let hm ← HashMap.clear_loop T self.slots 0#usize Result.ok { self with num_entries := 0#usize, slots := hm } /- [hashmap::{hashmap::HashMap}::len]: - Source: 'tests/src/hashmap.rs', lines 104:4-104:30 -/ + Source: 'tests/src/hashmap.rs', lines 104:4-106:5 -/ def HashMap.len (T : Type) (self : HashMap T) : Result Usize := Result.ok self.num_entries @@ -110,7 +110,7 @@ divergent def HashMap.insert_in_list_loop | AList.Nil => Result.ok (true, AList.Cons key value AList.Nil) /- [hashmap::{hashmap::HashMap}::insert_in_list]: - Source: 'tests/src/hashmap.rs', lines 111:4-111:72 -/ + Source: 'tests/src/hashmap.rs', lines 111:4-128:5 -/ @[reducible] def HashMap.insert_in_list (T : Type) (key : Usize) (value : T) (ls : AList T) : @@ -119,7 +119,7 @@ def HashMap.insert_in_list HashMap.insert_in_list_loop T key value ls /- [hashmap::{hashmap::HashMap}::insert_no_resize]: - Source: 'tests/src/hashmap.rs', lines 131:4-131:54 -/ + Source: 'tests/src/hashmap.rs', lines 131:4-139:5 -/ def HashMap.insert_no_resize (T : Type) (self : HashMap T) (key : Usize) (value : T) : Result (HashMap T) @@ -155,7 +155,7 @@ divergent def HashMap.move_elements_from_list_loop | AList.Nil => Result.ok ntable /- [hashmap::{hashmap::HashMap}::move_elements_from_list]: - Source: 'tests/src/hashmap.rs', lines 194:4-194:73 -/ + Source: 'tests/src/hashmap.rs', lines 194:4-207:5 -/ @[reducible] def HashMap.move_elements_from_list (T : Type) (ntable : HashMap T) (ls : AList T) : Result (HashMap T) := @@ -183,7 +183,7 @@ divergent def HashMap.move_elements_loop else Result.ok (ntable, slots) /- [hashmap::{hashmap::HashMap}::move_elements]: - Source: 'tests/src/hashmap.rs', lines 181:4-181:82 -/ + Source: 'tests/src/hashmap.rs', lines 181:4-191:5 -/ def HashMap.move_elements (T : Type) (ntable : HashMap T) (slots : alloc.vec.Vec (AList T)) : Result ((HashMap T) × (alloc.vec.Vec (AList T))) @@ -191,7 +191,7 @@ def HashMap.move_elements HashMap.move_elements_loop T ntable slots 0#usize /- [hashmap::{hashmap::HashMap}::try_resize]: - Source: 'tests/src/hashmap.rs', lines 154:4-154:28 -/ + Source: 'tests/src/hashmap.rs', lines 154:4-177:5 -/ def HashMap.try_resize (T : Type) (self : HashMap T) : Result (HashMap T) := do let capacity := alloc.vec.Vec.len (AList T) self.slots @@ -216,7 +216,7 @@ def HashMap.try_resize (T : Type) (self : HashMap T) : Result (HashMap T) := else Result.ok { self with max_load_factor := (i, i1), saturated := true } /- [hashmap::{hashmap::HashMap}::insert]: - Source: 'tests/src/hashmap.rs', lines 143:4-143:48 -/ + Source: 'tests/src/hashmap.rs', lines 143:4-150:5 -/ def HashMap.insert (T : Type) (self : HashMap T) (key : Usize) (value : T) : Result (HashMap T) @@ -243,14 +243,14 @@ divergent def HashMap.contains_key_in_list_loop | AList.Nil => Result.ok false /- [hashmap::{hashmap::HashMap}::contains_key_in_list]: - Source: 'tests/src/hashmap.rs', lines 217:4-217:69 -/ + Source: 'tests/src/hashmap.rs', lines 217:4-230:5 -/ @[reducible] def HashMap.contains_key_in_list (T : Type) (key : Usize) (ls : AList T) : Result Bool := HashMap.contains_key_in_list_loop T key ls /- [hashmap::{hashmap::HashMap}::contains_key]: - Source: 'tests/src/hashmap.rs', lines 210:4-210:49 -/ + Source: 'tests/src/hashmap.rs', lines 210:4-214:5 -/ def HashMap.contains_key (T : Type) (self : HashMap T) (key : Usize) : Result Bool := do @@ -275,13 +275,13 @@ divergent def HashMap.get_in_list_loop | AList.Nil => Result.fail .panic /- [hashmap::{hashmap::HashMap}::get_in_list]: - Source: 'tests/src/hashmap.rs', lines 235:4-235:71 -/ + Source: 'tests/src/hashmap.rs', lines 235:4-248:5 -/ @[reducible] def HashMap.get_in_list (T : Type) (key : Usize) (ls : AList T) : Result T := HashMap.get_in_list_loop T key ls /- [hashmap::{hashmap::HashMap}::get]: - Source: 'tests/src/hashmap.rs', lines 250:4-250:55 -/ + Source: 'tests/src/hashmap.rs', lines 250:4-254:5 -/ def HashMap.get (T : Type) (self : HashMap T) (key : Usize) : Result T := do let hash ← hash_key key @@ -317,7 +317,7 @@ divergent def HashMap.get_mut_in_list_loop | AList.Nil => Result.fail .panic /- [hashmap::{hashmap::HashMap}::get_mut_in_list]: - Source: 'tests/src/hashmap.rs', lines 256:4-256:87 -/ + Source: 'tests/src/hashmap.rs', lines 256:4-265:5 -/ @[reducible] def HashMap.get_mut_in_list (T : Type) (ls : AList T) (key : Usize) : @@ -326,7 +326,7 @@ def HashMap.get_mut_in_list HashMap.get_mut_in_list_loop T ls key /- [hashmap::{hashmap::HashMap}::get_mut]: - Source: 'tests/src/hashmap.rs', lines 268:4-268:67 -/ + Source: 'tests/src/hashmap.rs', lines 268:4-272:5 -/ def HashMap.get_mut (T : Type) (self : HashMap T) (key : Usize) : Result (T × (T → Result (HashMap T))) @@ -368,14 +368,14 @@ divergent def HashMap.remove_from_list_loop | AList.Nil => Result.ok (none, AList.Nil) /- [hashmap::{hashmap::HashMap}::remove_from_list]: - Source: 'tests/src/hashmap.rs', lines 276:4-276:70 -/ + Source: 'tests/src/hashmap.rs', lines 276:4-302:5 -/ @[reducible] def HashMap.remove_from_list (T : Type) (key : Usize) (ls : AList T) : Result ((Option T) × (AList T)) := HashMap.remove_from_list_loop T key ls /- [hashmap::{hashmap::HashMap}::remove]: - Source: 'tests/src/hashmap.rs', lines 305:4-305:52 -/ + Source: 'tests/src/hashmap.rs', lines 305:4-317:5 -/ def HashMap.remove (T : Type) (self : HashMap T) (key : Usize) : Result ((Option T) × (HashMap T)) @@ -401,7 +401,7 @@ def HashMap.remove Result.ok (some x1, { self with num_entries := i1, slots := v }) /- [hashmap::insert_on_disk]: - Source: 'tests/src/hashmap.rs', lines 336:0-336:43 -/ + Source: 'tests/src/hashmap.rs', lines 336:0-343:1 -/ def insert_on_disk (key : Usize) (value : U64) (st : State) : Result (State × Unit) := do @@ -410,7 +410,7 @@ def insert_on_disk utils.serialize hm1 st1 /- [hashmap::test1]: - Source: 'tests/src/hashmap.rs', lines 351:0-351:10 -/ + Source: 'tests/src/hashmap.rs', lines 351:0-383:1 -/ def test1 : Result Unit := do let hm ← HashMap.new U64 diff --git a/tests/lean/Hashmap/FunsExternal_Template.lean b/tests/lean/Hashmap/FunsExternal_Template.lean index ea5ceed34..6913195a7 100644 --- a/tests/lean/Hashmap/FunsExternal_Template.lean +++ b/tests/lean/Hashmap/FunsExternal_Template.lean @@ -10,10 +10,10 @@ set_option linter.unusedVariables false open hashmap /- [hashmap::utils::deserialize]: - Source: 'tests/src/hashmap.rs', lines 331:4-331:47 -/ + Source: 'tests/src/hashmap.rs', lines 331:4-333:5 -/ axiom utils.deserialize : State → Result (State × (HashMap U64)) /- [hashmap::utils::serialize]: - Source: 'tests/src/hashmap.rs', lines 326:4-326:46 -/ + Source: 'tests/src/hashmap.rs', lines 326:4-328:5 -/ axiom utils.serialize : HashMap U64 → State → Result (State × Unit) diff --git a/tests/lean/Hashmap/Types.lean b/tests/lean/Hashmap/Types.lean index 90d352c11..9d67c2f8a 100644 --- a/tests/lean/Hashmap/Types.lean +++ b/tests/lean/Hashmap/Types.lean @@ -10,13 +10,13 @@ set_option linter.unusedVariables false namespace hashmap /- [hashmap::AList] - Source: 'tests/src/hashmap.rs', lines 30:0-30:17 -/ + Source: 'tests/src/hashmap.rs', lines 30:0-33:1 -/ inductive AList (T : Type) := | Cons : Usize → T → AList T → AList T | Nil : AList T /- [hashmap::HashMap] - Source: 'tests/src/hashmap.rs', lines 46:0-46:21 -/ + Source: 'tests/src/hashmap.rs', lines 46:0-58:1 -/ structure HashMap (T : Type) where num_entries : Usize max_load_factor : (Usize × Usize) diff --git a/tests/lean/InfiniteLoop.lean b/tests/lean/InfiniteLoop.lean index b5986ed8c..7056d5ca5 100644 --- a/tests/lean/InfiniteLoop.lean +++ b/tests/lean/InfiniteLoop.lean @@ -9,7 +9,7 @@ set_option linter.unusedVariables false namespace infinite_loop /- [infinite_loop::bar]: - Source: 'tests/src/infinite-loop.rs', lines 4:0-4:8 -/ + Source: 'tests/src/infinite-loop.rs', lines 4:0-4:11 -/ def bar : Result Unit := Result.ok () @@ -21,7 +21,7 @@ divergent def foo_loop : Result Unit := foo_loop /- [infinite_loop::foo]: - Source: 'tests/src/infinite-loop.rs', lines 6:0-6:8 -/ + Source: 'tests/src/infinite-loop.rs', lines 6:0-10:1 -/ @[reducible] def foo : Result Unit := foo_loop diff --git a/tests/lean/Issue194RecursiveStructProjector.lean b/tests/lean/Issue194RecursiveStructProjector.lean index 5f96ff71e..8d65486fd 100644 --- a/tests/lean/Issue194RecursiveStructProjector.lean +++ b/tests/lean/Issue194RecursiveStructProjector.lean @@ -9,7 +9,7 @@ set_option linter.unusedVariables false namespace issue_194_recursive_struct_projector /- [issue_194_recursive_struct_projector::AVLNode] - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-2:17 -/ + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-6:1 -/ inductive AVLNode (T : Type) := | mk : T → Option (AVLNode T) → Option (AVLNode T) → AVLNode T @@ -41,12 +41,12 @@ theorem AVLNode.right._simpLemma_ {T : Type} (value : T) (left : Option (AVLNode.mk value left right).right = right := by rfl /- [issue_194_recursive_struct_projector::get_val]: - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-10:33 -/ + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-12:1 -/ def get_val (T : Type) (x : AVLNode T) : Result T := Result.ok x.value /- [issue_194_recursive_struct_projector::get_left]: - Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-14:43 -/ + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-16:1 -/ def get_left (T : Type) (x : AVLNode T) : Result (Option (AVLNode T)) := Result.ok x.left diff --git a/tests/lean/Loops.lean b/tests/lean/Loops.lean index 6435cabb9..e9f1ddb5e 100644 --- a/tests/lean/Loops.lean +++ b/tests/lean/Loops.lean @@ -19,7 +19,7 @@ divergent def sum_loop (max : U32) (i : U32) (s : U32) : Result U32 := else s * 2#u32 /- [loops::sum]: - Source: 'tests/src/loops.rs', lines 8:0-8:27 -/ + Source: 'tests/src/loops.rs', lines 8:0-18:1 -/ def sum (max : U32) : Result U32 := sum_loop max 0#u32 0#u32 @@ -36,7 +36,7 @@ divergent def sum_with_mut_borrows_loop else s * 2#u32 /- [loops::sum_with_mut_borrows]: - Source: 'tests/src/loops.rs', lines 23:0-23:44 -/ + Source: 'tests/src/loops.rs', lines 23:0-35:1 -/ def sum_with_mut_borrows (max : U32) : Result U32 := sum_with_mut_borrows_loop max 0#u32 0#u32 @@ -53,7 +53,7 @@ divergent def sum_with_shared_borrows_loop else s * 2#u32 /- [loops::sum_with_shared_borrows]: - Source: 'tests/src/loops.rs', lines 38:0-38:47 -/ + Source: 'tests/src/loops.rs', lines 38:0-52:1 -/ def sum_with_shared_borrows (max : U32) : Result U32 := sum_with_shared_borrows_loop max 0#u32 0#u32 @@ -71,7 +71,7 @@ divergent def sum_array_loop else Result.ok s /- [loops::sum_array]: - Source: 'tests/src/loops.rs', lines 54:0-54:52 -/ + Source: 'tests/src/loops.rs', lines 54:0-62:1 -/ def sum_array (N : Usize) (a : Array U32 N) : Result U32 := sum_array_loop N a 0#usize 0#u32 @@ -92,12 +92,12 @@ divergent def clear_loop else Result.ok v /- [loops::clear]: - Source: 'tests/src/loops.rs', lines 66:0-66:30 -/ + Source: 'tests/src/loops.rs', lines 66:0-72:1 -/ def clear (v : alloc.vec.Vec U32) : Result (alloc.vec.Vec U32) := clear_loop v 0#usize /- [loops::List] - Source: 'tests/src/loops.rs', lines 74:0-74:16 -/ + Source: 'tests/src/loops.rs', lines 74:0-77:1 -/ inductive List (T : Type) := | Cons : T → List T → List T | Nil : List T @@ -112,7 +112,7 @@ divergent def list_mem_loop (x : U32) (ls : List U32) : Result Bool := | List.Nil => Result.ok false /- [loops::list_mem]: - Source: 'tests/src/loops.rs', lines 80:0-80:52 -/ + Source: 'tests/src/loops.rs', lines 80:0-89:1 -/ @[reducible] def list_mem (x : U32) (ls : List U32) : Result Bool := list_mem_loop x ls @@ -139,7 +139,7 @@ divergent def list_nth_mut_loop_loop | List.Nil => Result.fail .panic /- [loops::list_nth_mut_loop]: - Source: 'tests/src/loops.rs', lines 92:0-92:71 -/ + Source: 'tests/src/loops.rs', lines 92:0-102:1 -/ @[reducible] def list_nth_mut_loop (T : Type) (ls : List T) (i : U32) : Result (T × (T → Result (List T))) := @@ -159,7 +159,7 @@ divergent def list_nth_shared_loop_loop | List.Nil => Result.fail .panic /- [loops::list_nth_shared_loop]: - Source: 'tests/src/loops.rs', lines 105:0-105:66 -/ + Source: 'tests/src/loops.rs', lines 105:0-115:1 -/ @[reducible] def list_nth_shared_loop (T : Type) (ls : List T) (i : U32) : Result T := list_nth_shared_loop_loop T ls i @@ -187,7 +187,7 @@ divergent def get_elem_mut_loop | List.Nil => Result.fail .panic /- [loops::get_elem_mut]: - Source: 'tests/src/loops.rs', lines 117:0-117:73 -/ + Source: 'tests/src/loops.rs', lines 117:0-131:1 -/ def get_elem_mut (slots : alloc.vec.Vec (List Usize)) (x : Usize) : Result (Usize × (Usize → Result (alloc.vec.Vec (List Usize)))) @@ -213,7 +213,7 @@ divergent def get_elem_shared_loop | List.Nil => Result.fail .panic /- [loops::get_elem_shared]: - Source: 'tests/src/loops.rs', lines 133:0-133:68 -/ + Source: 'tests/src/loops.rs', lines 133:0-147:1 -/ def get_elem_shared (slots : alloc.vec.Vec (List Usize)) (x : Usize) : Result Usize := do @@ -223,7 +223,7 @@ def get_elem_shared get_elem_shared_loop x ls /- [loops::id_mut]: - Source: 'tests/src/loops.rs', lines 149:0-149:50 -/ + Source: 'tests/src/loops.rs', lines 149:0-151:1 -/ def id_mut (T : Type) (ls : List T) : Result ((List T) × (List T → Result (List T))) @@ -231,7 +231,7 @@ def id_mut Result.ok (ls, Result.ok) /- [loops::id_shared]: - Source: 'tests/src/loops.rs', lines 153:0-153:45 -/ + Source: 'tests/src/loops.rs', lines 153:0-155:1 -/ def id_shared (T : Type) (ls : List T) : Result (List T) := Result.ok ls @@ -257,7 +257,7 @@ divergent def list_nth_mut_loop_with_id_loop | List.Nil => Result.fail .panic /- [loops::list_nth_mut_loop_with_id]: - Source: 'tests/src/loops.rs', lines 158:0-158:75 -/ + Source: 'tests/src/loops.rs', lines 158:0-169:1 -/ def list_nth_mut_loop_with_id (T : Type) (ls : List T) (i : U32) : Result (T × (T → Result (List T))) := do @@ -282,7 +282,7 @@ divergent def list_nth_shared_loop_with_id_loop | List.Nil => Result.fail .panic /- [loops::list_nth_shared_loop_with_id]: - Source: 'tests/src/loops.rs', lines 172:0-172:70 -/ + Source: 'tests/src/loops.rs', lines 172:0-183:1 -/ def list_nth_shared_loop_with_id (T : Type) (ls : List T) (i : U32) : Result T := do @@ -321,7 +321,7 @@ divergent def list_nth_mut_loop_pair_loop | List.Nil => Result.fail .panic /- [loops::list_nth_mut_loop_pair]: - Source: 'tests/src/loops.rs', lines 188:0-192:27 -/ + Source: 'tests/src/loops.rs', lines 188:0-209:1 -/ @[reducible] def list_nth_mut_loop_pair (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : @@ -346,7 +346,7 @@ divergent def list_nth_shared_loop_pair_loop | List.Nil => Result.fail .panic /- [loops::list_nth_shared_loop_pair]: - Source: 'tests/src/loops.rs', lines 212:0-216:19 -/ + Source: 'tests/src/loops.rs', lines 212:0-233:1 -/ @[reducible] def list_nth_shared_loop_pair (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : Result (T × T) := @@ -383,7 +383,7 @@ divergent def list_nth_mut_loop_pair_merge_loop | List.Nil => Result.fail .panic /- [loops::list_nth_mut_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 237:0-241:27 -/ + Source: 'tests/src/loops.rs', lines 237:0-252:1 -/ @[reducible] def list_nth_mut_loop_pair_merge (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : @@ -409,7 +409,7 @@ divergent def list_nth_shared_loop_pair_merge_loop | List.Nil => Result.fail .panic /- [loops::list_nth_shared_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 255:0-259:19 -/ + Source: 'tests/src/loops.rs', lines 255:0-270:1 -/ @[reducible] def list_nth_shared_loop_pair_merge (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : Result (T × T) := @@ -442,7 +442,7 @@ divergent def list_nth_mut_shared_loop_pair_loop | List.Nil => Result.fail .panic /- [loops::list_nth_mut_shared_loop_pair]: - Source: 'tests/src/loops.rs', lines 273:0-277:23 -/ + Source: 'tests/src/loops.rs', lines 273:0-288:1 -/ @[reducible] def list_nth_mut_shared_loop_pair (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : @@ -477,7 +477,7 @@ divergent def list_nth_mut_shared_loop_pair_merge_loop | List.Nil => Result.fail .panic /- [loops::list_nth_mut_shared_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 292:0-296:23 -/ + Source: 'tests/src/loops.rs', lines 292:0-307:1 -/ @[reducible] def list_nth_mut_shared_loop_pair_merge (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : @@ -512,7 +512,7 @@ divergent def list_nth_shared_mut_loop_pair_loop | List.Nil => Result.fail .panic /- [loops::list_nth_shared_mut_loop_pair]: - Source: 'tests/src/loops.rs', lines 311:0-315:23 -/ + Source: 'tests/src/loops.rs', lines 311:0-326:1 -/ @[reducible] def list_nth_shared_mut_loop_pair (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : @@ -547,7 +547,7 @@ divergent def list_nth_shared_mut_loop_pair_merge_loop | List.Nil => Result.fail .panic /- [loops::list_nth_shared_mut_loop_pair_merge]: - Source: 'tests/src/loops.rs', lines 330:0-334:23 -/ + Source: 'tests/src/loops.rs', lines 330:0-345:1 -/ @[reducible] def list_nth_shared_mut_loop_pair_merge (T : Type) (ls0 : List T) (ls1 : List T) (i : U32) : @@ -565,7 +565,7 @@ divergent def ignore_input_mut_borrow_loop (i : U32) : Result Unit := else Result.ok () /- [loops::ignore_input_mut_borrow]: - Source: 'tests/src/loops.rs', lines 349:0-349:56 -/ + Source: 'tests/src/loops.rs', lines 349:0-353:1 -/ def ignore_input_mut_borrow (_a : U32) (i : U32) : Result U32 := do let _ ← ignore_input_mut_borrow_loop i @@ -581,7 +581,7 @@ divergent def incr_ignore_input_mut_borrow_loop (i : U32) : Result Unit := else Result.ok () /- [loops::incr_ignore_input_mut_borrow]: - Source: 'tests/src/loops.rs', lines 357:0-357:60 -/ + Source: 'tests/src/loops.rs', lines 357:0-362:1 -/ def incr_ignore_input_mut_borrow (a : U32) (i : U32) : Result U32 := do let a1 ← a + 1#u32 @@ -598,7 +598,7 @@ divergent def ignore_input_shared_borrow_loop (i : U32) : Result Unit := else Result.ok () /- [loops::ignore_input_shared_borrow]: - Source: 'tests/src/loops.rs', lines 366:0-366:59 -/ + Source: 'tests/src/loops.rs', lines 366:0-370:1 -/ def ignore_input_shared_borrow (_a : U32) (i : U32) : Result U32 := do let _ ← ignore_input_shared_borrow_loop i diff --git a/tests/lean/Matches.lean b/tests/lean/Matches.lean index 8d592a85a..093abf746 100644 --- a/tests/lean/Matches.lean +++ b/tests/lean/Matches.lean @@ -9,7 +9,7 @@ set_option linter.unusedVariables false namespace matches /- [matches::match_u32]: - Source: 'tests/src/matches.rs', lines 4:0-4:27 -/ + Source: 'tests/src/matches.rs', lines 4:0-10:1 -/ def match_u32 (x : U32) : Result U32 := match x with | 0#scalar => Result.ok 0#u32 diff --git a/tests/lean/MiniTree.lean b/tests/lean/MiniTree.lean index 8ce962b9d..d7a474c40 100644 --- a/tests/lean/MiniTree.lean +++ b/tests/lean/MiniTree.lean @@ -9,7 +9,7 @@ set_option linter.unusedVariables false namespace mini_tree /- [mini_tree::Node] - Source: 'tests/src/mini_tree.rs', lines 3:0-3:11 -/ + Source: 'tests/src/mini_tree.rs', lines 3:0-5:1 -/ inductive Node := | mk : Option Node → Node @@ -21,7 +21,7 @@ theorem Node.child._simpLemma_ (child : Option Node) : (Node.mk child).child = child := by rfl /- [mini_tree::Tree] - Source: 'tests/src/mini_tree.rs', lines 9:0-9:11 -/ + Source: 'tests/src/mini_tree.rs', lines 9:0-11:1 -/ structure Tree where root : Option Node @@ -33,7 +33,7 @@ divergent def Tree.explore_loop (current_tree : Option Node) : Result Unit := | some current_node => Tree.explore_loop current_node.child /- [mini_tree::{mini_tree::Tree}::explore]: - Source: 'tests/src/mini_tree.rs', lines 14:4-14:25 -/ + Source: 'tests/src/mini_tree.rs', lines 14:4-20:5 -/ def Tree.explore (self : Tree) : Result Unit := Tree.explore_loop self.root diff --git a/tests/lean/NoNestedBorrows.lean b/tests/lean/NoNestedBorrows.lean index 03d812b80..d49faff14 100644 --- a/tests/lean/NoNestedBorrows.lean +++ b/tests/lean/NoNestedBorrows.lean @@ -9,60 +9,60 @@ set_option linter.unusedVariables false namespace no_nested_borrows /- [no_nested_borrows::Pair] - Source: 'tests/src/no_nested_borrows.rs', lines 7:0-7:23 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 7:0-10:1 -/ structure Pair (T1 T2 : Type) where x : T1 y : T2 /- [no_nested_borrows::List] - Source: 'tests/src/no_nested_borrows.rs', lines 12:0-12:16 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 12:0-15:1 -/ inductive List (T : Type) := | Cons : T → List T → List T | Nil : List T /- [no_nested_borrows::One] - Source: 'tests/src/no_nested_borrows.rs', lines 23:0-23:16 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 23:0-25:1 -/ inductive One (T1 : Type) := | One : T1 → One T1 /- [no_nested_borrows::EmptyEnum] - Source: 'tests/src/no_nested_borrows.rs', lines 29:0-29:18 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 29:0-31:1 -/ inductive EmptyEnum := | Empty : EmptyEnum /- [no_nested_borrows::Enum] - Source: 'tests/src/no_nested_borrows.rs', lines 35:0-35:13 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 35:0-38:1 -/ inductive Enum := | Variant1 : Enum | Variant2 : Enum /- [no_nested_borrows::EmptyStruct] - Source: 'tests/src/no_nested_borrows.rs', lines 42:0-42:22 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 42:0-42:25 -/ @[reducible] def EmptyStruct := Unit /- [no_nested_borrows::Sum] - Source: 'tests/src/no_nested_borrows.rs', lines 44:0-44:20 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 44:0-47:1 -/ inductive Sum (T1 T2 : Type) := | Left : T1 → Sum T1 T2 | Right : T2 → Sum T1 T2 /- [no_nested_borrows::cast_u32_to_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 49:0-49:37 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 49:0-51:1 -/ def cast_u32_to_i32 (x : U32) : Result I32 := Scalar.cast .I32 x /- [no_nested_borrows::cast_bool_to_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 53:0-53:39 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 53:0-55:1 -/ def cast_bool_to_i32 (x : Bool) : Result I32 := Scalar.cast_bool .I32 x /- [no_nested_borrows::cast_bool_to_bool]: - Source: 'tests/src/no_nested_borrows.rs', lines 58:0-58:41 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 58:0-60:1 -/ def cast_bool_to_bool (x : Bool) : Result Bool := Result.ok x /- [no_nested_borrows::test2]: - Source: 'tests/src/no_nested_borrows.rs', lines 63:0-63:14 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 63:0-73:1 -/ def test2 : Result Unit := do let _ ← 23#u32 + 44#u32 @@ -72,14 +72,14 @@ def test2 : Result Unit := #assert (test2 == Result.ok ()) /- [no_nested_borrows::get_max]: - Source: 'tests/src/no_nested_borrows.rs', lines 75:0-75:37 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 75:0-81:1 -/ def get_max (x : U32) (y : U32) : Result U32 := if x >= y then Result.ok x else Result.ok y /- [no_nested_borrows::test3]: - Source: 'tests/src/no_nested_borrows.rs', lines 83:0-83:14 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 83:0-88:1 -/ def test3 : Result Unit := do let x ← get_max 4#u32 3#u32 @@ -93,7 +93,7 @@ def test3 : Result Unit := #assert (test3 == Result.ok ()) /- [no_nested_borrows::test_neg1]: - Source: 'tests/src/no_nested_borrows.rs', lines 90:0-90:18 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 90:0-94:1 -/ def test_neg1 : Result Unit := do let y ← -. 3#i32 @@ -105,7 +105,7 @@ def test_neg1 : Result Unit := #assert (test_neg1 == Result.ok ()) /- [no_nested_borrows::refs_test1]: - Source: 'tests/src/no_nested_borrows.rs', lines 97:0-97:19 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 97:0-106:1 -/ def refs_test1 : Result Unit := if 1#i32 = 1#i32 then Result.ok () @@ -115,7 +115,7 @@ def refs_test1 : Result Unit := #assert (refs_test1 == Result.ok ()) /- [no_nested_borrows::refs_test2]: - Source: 'tests/src/no_nested_borrows.rs', lines 108:0-108:19 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 108:0-120:1 -/ def refs_test2 : Result Unit := if 2#i32 = 2#i32 then @@ -133,7 +133,7 @@ def refs_test2 : Result Unit := #assert (refs_test2 == Result.ok ()) /- [no_nested_borrows::test_list1]: - Source: 'tests/src/no_nested_borrows.rs', lines 124:0-124:19 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 124:0-126:1 -/ def test_list1 : Result Unit := Result.ok () @@ -141,7 +141,7 @@ def test_list1 : Result Unit := #assert (test_list1 == Result.ok ()) /- [no_nested_borrows::test_box1]: - Source: 'tests/src/no_nested_borrows.rs', lines 129:0-129:18 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 129:0-137:1 -/ def test_box1 : Result Unit := do let (_, deref_mut_back) ← alloc.boxed.Box.deref_mut I32 0#i32 @@ -155,33 +155,33 @@ def test_box1 : Result Unit := #assert (test_box1 == Result.ok ()) /- [no_nested_borrows::copy_int]: - Source: 'tests/src/no_nested_borrows.rs', lines 139:0-139:30 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 139:0-141:1 -/ def copy_int (x : I32) : Result I32 := Result.ok x /- [no_nested_borrows::test_unreachable]: - Source: 'tests/src/no_nested_borrows.rs', lines 145:0-145:32 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 145:0-149:1 -/ def test_unreachable (b : Bool) : Result Unit := if b then Result.fail .panic else Result.ok () /- [no_nested_borrows::test_panic]: - Source: 'tests/src/no_nested_borrows.rs', lines 152:0-152:26 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 152:0-156:1 -/ def test_panic (b : Bool) : Result Unit := if b then Result.fail .panic else Result.ok () /- [no_nested_borrows::test_panic_msg]: - Source: 'tests/src/no_nested_borrows.rs', lines 160:0-160:30 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 160:0-164:1 -/ def test_panic_msg (b : Bool) : Result Unit := if b then Result.fail .panic else Result.ok () /- [no_nested_borrows::test_copy_int]: - Source: 'tests/src/no_nested_borrows.rs', lines 167:0-167:22 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 167:0-172:1 -/ def test_copy_int : Result Unit := do let y ← copy_int 0#i32 @@ -193,14 +193,14 @@ def test_copy_int : Result Unit := #assert (test_copy_int == Result.ok ()) /- [no_nested_borrows::is_cons]: - Source: 'tests/src/no_nested_borrows.rs', lines 174:0-174:38 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 174:0-179:1 -/ def is_cons (T : Type) (l : List T) : Result Bool := match l with | List.Cons _ _ => Result.ok true | List.Nil => Result.ok false /- [no_nested_borrows::test_is_cons]: - Source: 'tests/src/no_nested_borrows.rs', lines 181:0-181:21 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 181:0-185:1 -/ def test_is_cons : Result Unit := do let b ← is_cons I32 (List.Cons 0#i32 List.Nil) @@ -212,14 +212,14 @@ def test_is_cons : Result Unit := #assert (test_is_cons == Result.ok ()) /- [no_nested_borrows::split_list]: - Source: 'tests/src/no_nested_borrows.rs', lines 187:0-187:48 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 187:0-192:1 -/ def split_list (T : Type) (l : List T) : Result (T × (List T)) := match l with | List.Cons hd tl => Result.ok (hd, tl) | List.Nil => Result.fail .panic /- [no_nested_borrows::test_split_list]: - Source: 'tests/src/no_nested_borrows.rs', lines 195:0-195:24 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 195:0-200:1 -/ def test_split_list : Result Unit := do let p ← split_list I32 (List.Cons 0#i32 List.Nil) @@ -232,7 +232,7 @@ def test_split_list : Result Unit := #assert (test_split_list == Result.ok ()) /- [no_nested_borrows::choose]: - Source: 'tests/src/no_nested_borrows.rs', lines 202:0-202:70 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 202:0-208:1 -/ def choose (T : Type) (b : Bool) (x : T) (y : T) : Result (T × (T → Result (T × T))) @@ -244,7 +244,7 @@ def choose Result.ok (y, back) /- [no_nested_borrows::choose_test]: - Source: 'tests/src/no_nested_borrows.rs', lines 210:0-210:20 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 210:0-219:1 -/ def choose_test : Result Unit := do let (z, choose_back) ← choose I32 true 0#i32 0#i32 @@ -264,25 +264,25 @@ def choose_test : Result Unit := #assert (choose_test == Result.ok ()) /- [no_nested_borrows::test_char]: - Source: 'tests/src/no_nested_borrows.rs', lines 222:0-222:26 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 222:0-224:1 -/ def test_char : Result Char := Result.ok 'a' /- [no_nested_borrows::panic_mut_borrow]: - Source: 'tests/src/no_nested_borrows.rs', lines 227:0-227:36 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 227:0-229:1 -/ def panic_mut_borrow (i : U32) : Result U32 := Result.fail .panic mutual /- [no_nested_borrows::Tree] - Source: 'tests/src/no_nested_borrows.rs', lines 232:0-232:16 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 232:0-235:1 -/ inductive Tree (T : Type) := | Leaf : T → Tree T | Node : T → NodeElem T → Tree T → Tree T /- [no_nested_borrows::NodeElem] - Source: 'tests/src/no_nested_borrows.rs', lines 237:0-237:20 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 237:0-240:1 -/ inductive NodeElem (T : Type) := | Cons : Tree T → NodeElem T → NodeElem T | Nil : NodeElem T @@ -290,7 +290,7 @@ inductive NodeElem (T : Type) := end /- [no_nested_borrows::list_length]: - Source: 'tests/src/no_nested_borrows.rs', lines 272:0-272:48 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 272:0-277:1 -/ divergent def list_length (T : Type) (l : List T) : Result U32 := match l with | List.Cons _ l1 => do @@ -299,7 +299,7 @@ divergent def list_length (T : Type) (l : List T) : Result U32 := | List.Nil => Result.ok 0#u32 /- [no_nested_borrows::list_nth_shared]: - Source: 'tests/src/no_nested_borrows.rs', lines 280:0-280:62 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 280:0-293:1 -/ divergent def list_nth_shared (T : Type) (l : List T) (i : U32) : Result T := match l with | List.Cons x tl => @@ -311,7 +311,7 @@ divergent def list_nth_shared (T : Type) (l : List T) (i : U32) : Result T := | List.Nil => Result.fail .panic /- [no_nested_borrows::list_nth_mut]: - Source: 'tests/src/no_nested_borrows.rs', lines 296:0-296:67 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 296:0-309:1 -/ divergent def list_nth_mut (T : Type) (l : List T) (i : U32) : Result (T × (T → Result (List T))) := match l with @@ -333,7 +333,7 @@ divergent def list_nth_mut | List.Nil => Result.fail .panic /- [no_nested_borrows::list_rev_aux]: - Source: 'tests/src/no_nested_borrows.rs', lines 312:0-312:63 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 312:0-322:1 -/ divergent def list_rev_aux (T : Type) (li : List T) (lo : List T) : Result (List T) := match li with @@ -341,13 +341,13 @@ divergent def list_rev_aux | List.Nil => Result.ok lo /- [no_nested_borrows::list_rev]: - Source: 'tests/src/no_nested_borrows.rs', lines 326:0-326:42 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 326:0-329:1 -/ def list_rev (T : Type) (l : List T) : Result (List T) := let (li, _) := core.mem.replace (List T) l List.Nil list_rev_aux T li List.Nil /- [no_nested_borrows::test_list_functions]: - Source: 'tests/src/no_nested_borrows.rs', lines 331:0-331:28 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 331:0-345:1 -/ def test_list_functions : Result Unit := do let l := List.Cons 2#i32 List.Nil @@ -394,7 +394,7 @@ def test_list_functions : Result Unit := #assert (test_list_functions == Result.ok ()) /- [no_nested_borrows::id_mut_pair1]: - Source: 'tests/src/no_nested_borrows.rs', lines 347:0-347:89 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 347:0-349:1 -/ def id_mut_pair1 (T1 T2 : Type) (x : T1) (y : T2) : Result ((T1 × T2) × ((T1 × T2) → Result (T1 × T2))) @@ -402,7 +402,7 @@ def id_mut_pair1 Result.ok ((x, y), Result.ok) /- [no_nested_borrows::id_mut_pair2]: - Source: 'tests/src/no_nested_borrows.rs', lines 351:0-351:88 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 351:0-353:1 -/ def id_mut_pair2 (T1 T2 : Type) (p : (T1 × T2)) : Result ((T1 × T2) × ((T1 × T2) → Result (T1 × T2))) @@ -411,7 +411,7 @@ def id_mut_pair2 Result.ok ((t, t1), Result.ok) /- [no_nested_borrows::id_mut_pair3]: - Source: 'tests/src/no_nested_borrows.rs', lines 355:0-355:93 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 355:0-357:1 -/ def id_mut_pair3 (T1 T2 : Type) (x : T1) (y : T2) : Result ((T1 × T2) × (T1 → Result T1) × (T2 → Result T2)) @@ -419,7 +419,7 @@ def id_mut_pair3 Result.ok ((x, y), Result.ok, Result.ok) /- [no_nested_borrows::id_mut_pair4]: - Source: 'tests/src/no_nested_borrows.rs', lines 359:0-359:92 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 359:0-361:1 -/ def id_mut_pair4 (T1 T2 : Type) (p : (T1 × T2)) : Result ((T1 × T2) × (T1 → Result T1) × (T2 → Result T2)) @@ -428,37 +428,37 @@ def id_mut_pair4 Result.ok ((t, t1), Result.ok, Result.ok) /- [no_nested_borrows::StructWithTuple] - Source: 'tests/src/no_nested_borrows.rs', lines 366:0-366:34 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 366:0-368:1 -/ structure StructWithTuple (T1 T2 : Type) where p : (T1 × T2) /- [no_nested_borrows::new_tuple1]: - Source: 'tests/src/no_nested_borrows.rs', lines 370:0-370:48 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 370:0-372:1 -/ def new_tuple1 : Result (StructWithTuple U32 U32) := Result.ok { p := (1#u32, 2#u32) } /- [no_nested_borrows::new_tuple2]: - Source: 'tests/src/no_nested_borrows.rs', lines 374:0-374:48 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 374:0-376:1 -/ def new_tuple2 : Result (StructWithTuple I16 I16) := Result.ok { p := (1#i16, 2#i16) } /- [no_nested_borrows::new_tuple3]: - Source: 'tests/src/no_nested_borrows.rs', lines 378:0-378:48 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 378:0-380:1 -/ def new_tuple3 : Result (StructWithTuple U64 I64) := Result.ok { p := (1#u64, 2#i64) } /- [no_nested_borrows::StructWithPair] - Source: 'tests/src/no_nested_borrows.rs', lines 383:0-383:33 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 383:0-385:1 -/ structure StructWithPair (T1 T2 : Type) where p : Pair T1 T2 /- [no_nested_borrows::new_pair1]: - Source: 'tests/src/no_nested_borrows.rs', lines 387:0-387:46 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 387:0-393:1 -/ def new_pair1 : Result (StructWithPair U32 U32) := Result.ok { p := { x := 1#u32, y := 2#u32 } } /- [no_nested_borrows::test_constants]: - Source: 'tests/src/no_nested_borrows.rs', lines 395:0-395:23 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 395:0-400:1 -/ def test_constants : Result Unit := do let swt ← new_tuple1 @@ -488,7 +488,7 @@ def test_constants : Result Unit := #assert (test_constants == Result.ok ()) /- [no_nested_borrows::test_weird_borrows1]: - Source: 'tests/src/no_nested_borrows.rs', lines 404:0-404:28 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 404:0-412:1 -/ def test_weird_borrows1 : Result Unit := Result.ok () @@ -496,7 +496,7 @@ def test_weird_borrows1 : Result Unit := #assert (test_weird_borrows1 == Result.ok ()) /- [no_nested_borrows::test_mem_replace]: - Source: 'tests/src/no_nested_borrows.rs', lines 414:0-414:37 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 414:0-418:1 -/ def test_mem_replace (px : U32) : Result U32 := let (y, _) := core.mem.replace U32 px 1#u32 if y = 0#u32 @@ -504,105 +504,105 @@ def test_mem_replace (px : U32) : Result U32 := else Result.fail .panic /- [no_nested_borrows::test_shared_borrow_bool1]: - Source: 'tests/src/no_nested_borrows.rs', lines 421:0-421:47 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 421:0-430:1 -/ def test_shared_borrow_bool1 (b : Bool) : Result U32 := if b then Result.ok 0#u32 else Result.ok 1#u32 /- [no_nested_borrows::test_shared_borrow_bool2]: - Source: 'tests/src/no_nested_borrows.rs', lines 434:0-434:40 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 434:0-444:1 -/ def test_shared_borrow_bool2 : Result U32 := Result.ok 0#u32 /- [no_nested_borrows::test_shared_borrow_enum1]: - Source: 'tests/src/no_nested_borrows.rs', lines 449:0-449:52 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 449:0-457:1 -/ def test_shared_borrow_enum1 (l : List U32) : Result U32 := match l with | List.Cons _ _ => Result.ok 1#u32 | List.Nil => Result.ok 0#u32 /- [no_nested_borrows::test_shared_borrow_enum2]: - Source: 'tests/src/no_nested_borrows.rs', lines 461:0-461:40 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 461:0-470:1 -/ def test_shared_borrow_enum2 : Result U32 := Result.ok 0#u32 /- [no_nested_borrows::incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 472:0-472:24 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 472:0-474:1 -/ def incr (x : U32) : Result U32 := x + 1#u32 /- [no_nested_borrows::call_incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 476:0-476:35 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 476:0-479:1 -/ def call_incr (x : U32) : Result U32 := incr x /- [no_nested_borrows::read_then_incr]: - Source: 'tests/src/no_nested_borrows.rs', lines 481:0-481:41 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 481:0-485:1 -/ def read_then_incr (x : U32) : Result (U32 × U32) := do let x1 ← x + 1#u32 Result.ok (x, x1) /- [no_nested_borrows::Tuple] - Source: 'tests/src/no_nested_borrows.rs', lines 487:0-487:24 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 487:0-487:33 -/ def Tuple (T1 T2 : Type) := T1 × T2 /- [no_nested_borrows::read_tuple]: - Source: 'tests/src/no_nested_borrows.rs', lines 489:0-489:40 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 489:0-491:1 -/ def read_tuple (x : (U32 × U32)) : Result U32 := let (i, _) := x Result.ok i /- [no_nested_borrows::update_tuple]: - Source: 'tests/src/no_nested_borrows.rs', lines 493:0-493:39 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 493:0-495:1 -/ def update_tuple (x : (U32 × U32)) : Result (U32 × U32) := let (_, i) := x Result.ok (1#u32, i) /- [no_nested_borrows::read_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 497:0-497:52 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 497:0-499:1 -/ def read_tuple_struct (x : Tuple U32 U32) : Result U32 := let (i, _) := x Result.ok i /- [no_nested_borrows::update_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 501:0-501:51 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 501:0-503:1 -/ def update_tuple_struct (x : Tuple U32 U32) : Result (Tuple U32 U32) := let (_, i) := x Result.ok (1#u32, i) /- [no_nested_borrows::create_tuple_struct]: - Source: 'tests/src/no_nested_borrows.rs', lines 505:0-505:61 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 505:0-507:1 -/ def create_tuple_struct (x : U32) (y : U64) : Result (Tuple U32 U64) := Result.ok (x, y) /- [no_nested_borrows::IdType] - Source: 'tests/src/no_nested_borrows.rs', lines 510:0-510:20 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 510:0-510:24 -/ @[reducible] def IdType (T : Type) := T /- [no_nested_borrows::use_id_type]: - Source: 'tests/src/no_nested_borrows.rs', lines 512:0-512:40 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 512:0-514:1 -/ def use_id_type (T : Type) (x : IdType T) : Result T := Result.ok x /- [no_nested_borrows::create_id_type]: - Source: 'tests/src/no_nested_borrows.rs', lines 516:0-516:43 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 516:0-518:1 -/ def create_id_type (T : Type) (x : T) : Result (IdType T) := Result.ok x /- [no_nested_borrows::not_bool]: - Source: 'tests/src/no_nested_borrows.rs', lines 520:0-520:32 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 520:0-522:1 -/ def not_bool (x : Bool) : Result Bool := Result.ok (¬ x) /- [no_nested_borrows::not_u32]: - Source: 'tests/src/no_nested_borrows.rs', lines 524:0-524:29 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 524:0-526:1 -/ def not_u32 (x : U32) : Result U32 := Result.ok (¬ x) /- [no_nested_borrows::not_i32]: - Source: 'tests/src/no_nested_borrows.rs', lines 528:0-528:29 -/ + Source: 'tests/src/no_nested_borrows.rs', lines 528:0-530:1 -/ def not_i32 (x : I32) : Result I32 := Result.ok (¬ x) diff --git a/tests/lean/Paper.lean b/tests/lean/Paper.lean index b1aef703e..61fcf59f2 100644 --- a/tests/lean/Paper.lean +++ b/tests/lean/Paper.lean @@ -9,12 +9,12 @@ set_option linter.unusedVariables false namespace paper /- [paper::ref_incr]: - Source: 'tests/src/paper.rs', lines 7:0-7:28 -/ + Source: 'tests/src/paper.rs', lines 7:0-9:1 -/ def ref_incr (x : I32) : Result I32 := x + 1#i32 /- [paper::test_incr]: - Source: 'tests/src/paper.rs', lines 11:0-11:18 -/ + Source: 'tests/src/paper.rs', lines 11:0-15:1 -/ def test_incr : Result Unit := do let x ← ref_incr 0#i32 @@ -26,7 +26,7 @@ def test_incr : Result Unit := #assert (test_incr == Result.ok ()) /- [paper::choose]: - Source: 'tests/src/paper.rs', lines 18:0-18:70 -/ + Source: 'tests/src/paper.rs', lines 18:0-24:1 -/ def choose (T : Type) (b : Bool) (x : T) (y : T) : Result (T × (T → Result (T × T))) @@ -38,7 +38,7 @@ def choose Result.ok (y, back) /- [paper::test_choose]: - Source: 'tests/src/paper.rs', lines 26:0-26:20 -/ + Source: 'tests/src/paper.rs', lines 26:0-34:1 -/ def test_choose : Result Unit := do let (z, choose_back) ← choose I32 true 0#i32 0#i32 @@ -58,13 +58,13 @@ def test_choose : Result Unit := #assert (test_choose == Result.ok ()) /- [paper::List] - Source: 'tests/src/paper.rs', lines 38:0-38:16 -/ + Source: 'tests/src/paper.rs', lines 38:0-41:1 -/ inductive List (T : Type) := | Cons : T → List T → List T | Nil : List T /- [paper::list_nth_mut]: - Source: 'tests/src/paper.rs', lines 45:0-45:67 -/ + Source: 'tests/src/paper.rs', lines 45:0-58:1 -/ divergent def list_nth_mut (T : Type) (l : List T) (i : U32) : Result (T × (T → Result (List T))) := match l with @@ -86,7 +86,7 @@ divergent def list_nth_mut | List.Nil => Result.fail .panic /- [paper::sum]: - Source: 'tests/src/paper.rs', lines 60:0-60:32 -/ + Source: 'tests/src/paper.rs', lines 60:0-69:1 -/ divergent def sum (l : List I32) : Result I32 := match l with | List.Cons x tl => do @@ -95,7 +95,7 @@ divergent def sum (l : List I32) : Result I32 := | List.Nil => Result.ok 0#i32 /- [paper::test_nth]: - Source: 'tests/src/paper.rs', lines 71:0-71:17 -/ + Source: 'tests/src/paper.rs', lines 71:0-76:1 -/ def test_nth : Result Unit := do let l := List.Cons 3#i32 List.Nil @@ -112,7 +112,7 @@ def test_nth : Result Unit := #assert (test_nth == Result.ok ()) /- [paper::call_choose]: - Source: 'tests/src/paper.rs', lines 79:0-79:44 -/ + Source: 'tests/src/paper.rs', lines 79:0-85:1 -/ def call_choose (p : (U32 × U32)) : Result U32 := do let (px, py) := p diff --git a/tests/lean/PoloniusList.lean b/tests/lean/PoloniusList.lean index 489871ba1..d9e59fd00 100644 --- a/tests/lean/PoloniusList.lean +++ b/tests/lean/PoloniusList.lean @@ -9,13 +9,13 @@ set_option linter.unusedVariables false namespace polonius_list /- [polonius_list::List] - Source: 'tests/src/polonius_list.rs', lines 6:0-6:16 -/ + Source: 'tests/src/polonius_list.rs', lines 6:0-9:1 -/ inductive List (T : Type) := | Cons : T → List T → List T | Nil : List T /- [polonius_list::get_list_at_x]: - Source: 'tests/src/polonius_list.rs', lines 16:0-16:76 -/ + Source: 'tests/src/polonius_list.rs', lines 16:0-30:1 -/ divergent def get_list_at_x (ls : List U32) (x : U32) : Result ((List U32) × (List U32 → Result (List U32))) diff --git a/tests/lean/RenameAttribute.lean b/tests/lean/RenameAttribute.lean index b5c5c977a..6a192f635 100644 --- a/tests/lean/RenameAttribute.lean +++ b/tests/lean/RenameAttribute.lean @@ -9,30 +9,30 @@ set_option linter.unusedVariables false namespace rename_attribute /- Trait declaration: [rename_attribute::BoolTrait] - Source: 'tests/src/rename_attribute.rs', lines 8:0-8:19 -/ + Source: 'tests/src/rename_attribute.rs', lines 8:0-18:1 -/ structure BoolTest (Self : Type) where getTest : Self → Result Bool /- [rename_attribute::{rename_attribute::BoolTrait for bool}::get_bool]: - Source: 'tests/src/rename_attribute.rs', lines 22:4-22:30 -/ + Source: 'tests/src/rename_attribute.rs', lines 22:4-24:5 -/ def BoolTraitBool.getTest (self : Bool) : Result Bool := Result.ok self /- Trait implementation: [rename_attribute::{rename_attribute::BoolTrait for bool}] - Source: 'tests/src/rename_attribute.rs', lines 21:0-21:23 -/ + Source: 'tests/src/rename_attribute.rs', lines 21:0-25:1 -/ @[reducible] def BoolImpl : BoolTest Bool := { getTest := BoolTraitBool.getTest } /- [rename_attribute::BoolTrait::ret_true]: - Source: 'tests/src/rename_attribute.rs', lines 15:4-15:30 -/ + Source: 'tests/src/rename_attribute.rs', lines 15:4-17:5 -/ def BoolTrait.retTest {Self : Type} (self_clause : BoolTest Self) (self : Self) : Result Bool := Result.ok true /- [rename_attribute::test_bool_trait]: - Source: 'tests/src/rename_attribute.rs', lines 28:0-28:42 -/ + Source: 'tests/src/rename_attribute.rs', lines 28:0-30:1 -/ def BoolFn (T : Type) (x : Bool) : Result Bool := do let b ← BoolTraitBool.getTest x @@ -41,31 +41,31 @@ def BoolFn (T : Type) (x : Bool) : Result Bool := else Result.ok false /- [rename_attribute::SimpleEnum] - Source: 'tests/src/rename_attribute.rs', lines 36:0-36:15 -/ + Source: 'tests/src/rename_attribute.rs', lines 36:0-41:1 -/ inductive VariantsTest := | Variant1 : VariantsTest | SecondVariant : VariantsTest | ThirdVariant : VariantsTest /- [rename_attribute::Foo] - Source: 'tests/src/rename_attribute.rs', lines 44:0-44:10 -/ + Source: 'tests/src/rename_attribute.rs', lines 44:0-47:1 -/ structure StructTest where FieldTest : U32 /- [rename_attribute::C] - Source: 'tests/src/rename_attribute.rs', lines 50:0-50:12 -/ + Source: 'tests/src/rename_attribute.rs', lines 50:0-50:28 -/ def Const_Test_body : Result U32 := do let i ← 100#u32 + 10#u32 i + 1#u32 def Const_Test : U32 := eval_global Const_Test_body /- [rename_attribute::CA] - Source: 'tests/src/rename_attribute.rs', lines 53:0-53:13 -/ + Source: 'tests/src/rename_attribute.rs', lines 53:0-53:23 -/ def Const_Aeneas11_body : Result U32 := 10#u32 + 1#u32 def Const_Aeneas11 : U32 := eval_global Const_Aeneas11_body /- [rename_attribute::factorial]: - Source: 'tests/src/rename_attribute.rs', lines 56:0-56:27 -/ + Source: 'tests/src/rename_attribute.rs', lines 56:0-62:1 -/ divergent def Factfn (n : U64) : Result U64 := if n <= 1#u64 then Result.ok 1#u64 @@ -86,7 +86,7 @@ divergent def No_borrows_sum_loop else s * 2#u32 /- [rename_attribute::sum]: - Source: 'tests/src/rename_attribute.rs', lines 65:0-65:27 -/ + Source: 'tests/src/rename_attribute.rs', lines 65:0-75:1 -/ def No_borrows_sum (max : U32) : Result U32 := No_borrows_sum_loop max 0#u32 0#u32 diff --git a/tests/lean/Traits.lean b/tests/lean/Traits.lean index 2df47cee5..086d64080 100644 --- a/tests/lean/Traits.lean +++ b/tests/lean/Traits.lean @@ -9,30 +9,30 @@ set_option linter.unusedVariables false namespace traits /- Trait declaration: [traits::BoolTrait] - Source: 'tests/src/traits.rs', lines 2:0-2:19 -/ + Source: 'tests/src/traits.rs', lines 2:0-10:1 -/ structure BoolTrait (Self : Type) where get_bool : Self → Result Bool /- [traits::{traits::BoolTrait for bool}::get_bool]: - Source: 'tests/src/traits.rs', lines 13:4-13:30 -/ + Source: 'tests/src/traits.rs', lines 13:4-15:5 -/ def BoolTraitBool.get_bool (self : Bool) : Result Bool := Result.ok self /- Trait implementation: [traits::{traits::BoolTrait for bool}] - Source: 'tests/src/traits.rs', lines 12:0-12:23 -/ + Source: 'tests/src/traits.rs', lines 12:0-16:1 -/ @[reducible] def BoolTraitBool : BoolTrait Bool := { get_bool := BoolTraitBool.get_bool } /- [traits::BoolTrait::ret_true]: - Source: 'tests/src/traits.rs', lines 7:4-7:30 -/ + Source: 'tests/src/traits.rs', lines 7:4-9:5 -/ def BoolTrait.ret_true {Self : Type} (self_clause : BoolTrait Self) (self : Self) : Result Bool := Result.ok true /- [traits::test_bool_trait_bool]: - Source: 'tests/src/traits.rs', lines 18:0-18:44 -/ + Source: 'tests/src/traits.rs', lines 18:0-20:1 -/ def test_bool_trait_bool (x : Bool) : Result Bool := do let b ← BoolTraitBool.get_bool x @@ -41,21 +41,21 @@ def test_bool_trait_bool (x : Bool) : Result Bool := else Result.ok false /- [traits::{traits::BoolTrait for core::option::Option}#1::get_bool]: - Source: 'tests/src/traits.rs', lines 24:4-24:30 -/ + Source: 'tests/src/traits.rs', lines 24:4-29:5 -/ def BoolTraitOption.get_bool (T : Type) (self : Option T) : Result Bool := match self with | none => Result.ok false | some _ => Result.ok true /- Trait implementation: [traits::{traits::BoolTrait for core::option::Option}#1] - Source: 'tests/src/traits.rs', lines 23:0-23:31 -/ + Source: 'tests/src/traits.rs', lines 23:0-30:1 -/ @[reducible] def BoolTraitOption (T : Type) : BoolTrait (Option T) := { get_bool := BoolTraitOption.get_bool T } /- [traits::test_bool_trait_option]: - Source: 'tests/src/traits.rs', lines 32:0-32:54 -/ + Source: 'tests/src/traits.rs', lines 32:0-34:1 -/ def test_bool_trait_option (T : Type) (x : Option T) : Result Bool := do let b ← BoolTraitOption.get_bool T x @@ -64,30 +64,30 @@ def test_bool_trait_option (T : Type) (x : Option T) : Result Bool := else Result.ok false /- [traits::test_bool_trait]: - Source: 'tests/src/traits.rs', lines 36:0-36:50 -/ + Source: 'tests/src/traits.rs', lines 36:0-38:1 -/ def test_bool_trait (T : Type) (BoolTraitInst : BoolTrait T) (x : T) : Result Bool := BoolTraitInst.get_bool x /- Trait declaration: [traits::ToU64] - Source: 'tests/src/traits.rs', lines 40:0-40:15 -/ + Source: 'tests/src/traits.rs', lines 40:0-42:1 -/ structure ToU64 (Self : Type) where to_u64 : Self → Result U64 /- [traits::{traits::ToU64 for u64}#2::to_u64]: - Source: 'tests/src/traits.rs', lines 45:4-45:26 -/ + Source: 'tests/src/traits.rs', lines 45:4-47:5 -/ def ToU64U64.to_u64 (self : U64) : Result U64 := Result.ok self /- Trait implementation: [traits::{traits::ToU64 for u64}#2] - Source: 'tests/src/traits.rs', lines 44:0-44:18 -/ + Source: 'tests/src/traits.rs', lines 44:0-48:1 -/ @[reducible] def ToU64U64 : ToU64 U64 := { to_u64 := ToU64U64.to_u64 } /- [traits::{traits::ToU64 for (A, A)}#3::to_u64]: - Source: 'tests/src/traits.rs', lines 51:4-51:26 -/ + Source: 'tests/src/traits.rs', lines 51:4-53:5 -/ def ToU64Pair.to_u64 (A : Type) (ToU64Inst : ToU64 A) (self : (A × A)) : Result U64 := do @@ -97,41 +97,41 @@ def ToU64Pair.to_u64 i + i1 /- Trait implementation: [traits::{traits::ToU64 for (A, A)}#3] - Source: 'tests/src/traits.rs', lines 50:0-50:31 -/ + Source: 'tests/src/traits.rs', lines 50:0-54:1 -/ @[reducible] def ToU64Pair (A : Type) (ToU64Inst : ToU64 A) : ToU64 (A × A) := { to_u64 := ToU64Pair.to_u64 A ToU64Inst } /- [traits::f]: - Source: 'tests/src/traits.rs', lines 56:0-56:36 -/ + Source: 'tests/src/traits.rs', lines 56:0-58:1 -/ def f (T : Type) (ToU64Inst : ToU64 T) (x : (T × T)) : Result U64 := ToU64Pair.to_u64 T ToU64Inst x /- [traits::g]: - Source: 'tests/src/traits.rs', lines 60:0-62:18 -/ + Source: 'tests/src/traits.rs', lines 60:0-65:1 -/ def g (T : Type) (ToU64PairInst : ToU64 (T × T)) (x : (T × T)) : Result U64 := ToU64PairInst.to_u64 x /- [traits::h0]: - Source: 'tests/src/traits.rs', lines 67:0-67:24 -/ + Source: 'tests/src/traits.rs', lines 67:0-69:1 -/ def h0 (x : U64) : Result U64 := ToU64U64.to_u64 x /- [traits::Wrapper] - Source: 'tests/src/traits.rs', lines 71:0-71:21 -/ + Source: 'tests/src/traits.rs', lines 71:0-73:1 -/ structure Wrapper (T : Type) where x : T /- [traits::{traits::ToU64 for traits::Wrapper}#4::to_u64]: - Source: 'tests/src/traits.rs', lines 76:4-76:26 -/ + Source: 'tests/src/traits.rs', lines 76:4-78:5 -/ def ToU64traitsWrapper.to_u64 (T : Type) (ToU64Inst : ToU64 T) (self : Wrapper T) : Result U64 := ToU64Inst.to_u64 self.x /- Trait implementation: [traits::{traits::ToU64 for traits::Wrapper}#4] - Source: 'tests/src/traits.rs', lines 75:0-75:35 -/ + Source: 'tests/src/traits.rs', lines 75:0-79:1 -/ @[reducible] def ToU64traitsWrapper (T : Type) (ToU64Inst : ToU64 T) : ToU64 (Wrapper T) := { @@ -139,39 +139,39 @@ def ToU64traitsWrapper (T : Type) (ToU64Inst : ToU64 T) : ToU64 (Wrapper T) } /- [traits::h1]: - Source: 'tests/src/traits.rs', lines 81:0-81:33 -/ + Source: 'tests/src/traits.rs', lines 81:0-83:1 -/ def h1 (x : Wrapper U64) : Result U64 := ToU64traitsWrapper.to_u64 U64 ToU64U64 x /- [traits::h2]: - Source: 'tests/src/traits.rs', lines 85:0-85:41 -/ + Source: 'tests/src/traits.rs', lines 85:0-87:1 -/ def h2 (T : Type) (ToU64Inst : ToU64 T) (x : Wrapper T) : Result U64 := ToU64traitsWrapper.to_u64 T ToU64Inst x /- Trait declaration: [traits::ToType] - Source: 'tests/src/traits.rs', lines 89:0-89:19 -/ + Source: 'tests/src/traits.rs', lines 89:0-91:1 -/ structure ToType (Self T : Type) where to_type : Self → Result T /- [traits::{traits::ToType for u64}#5::to_type]: - Source: 'tests/src/traits.rs', lines 94:4-94:28 -/ + Source: 'tests/src/traits.rs', lines 94:4-96:5 -/ def ToTypeU64Bool.to_type (self : U64) : Result Bool := Result.ok (self > 0#u64) /- Trait implementation: [traits::{traits::ToType for u64}#5] - Source: 'tests/src/traits.rs', lines 93:0-93:25 -/ + Source: 'tests/src/traits.rs', lines 93:0-97:1 -/ @[reducible] def ToTypeU64Bool : ToType U64 Bool := { to_type := ToTypeU64Bool.to_type } /- Trait declaration: [traits::OfType] - Source: 'tests/src/traits.rs', lines 99:0-99:16 -/ + Source: 'tests/src/traits.rs', lines 99:0-103:1 -/ structure OfType (Self : Type) where of_type : forall (T : Type) (ToTypeInst : ToType T Self), T → Result Self /- [traits::h3]: - Source: 'tests/src/traits.rs', lines 105:0-105:50 -/ + Source: 'tests/src/traits.rs', lines 105:0-107:1 -/ def h3 (T1 T2 : Type) (OfTypeInst : OfType T1) (ToTypeInst : ToType T2 T1) (y : T2) : @@ -180,13 +180,13 @@ def h3 OfTypeInst.of_type T2 ToTypeInst y /- Trait declaration: [traits::OfTypeBis] - Source: 'tests/src/traits.rs', lines 110:0-110:36 -/ + Source: 'tests/src/traits.rs', lines 110:0-117:1 -/ structure OfTypeBis (Self T : Type) where ToTypeInst : ToType T Self of_type : T → Result Self /- [traits::h4]: - Source: 'tests/src/traits.rs', lines 119:0-119:57 -/ + Source: 'tests/src/traits.rs', lines 119:0-121:1 -/ def h4 (T1 T2 : Type) (OfTypeBisInst : OfTypeBis T1 T2) (ToTypeInst : ToType T2 T1) (y : T2) : @@ -195,26 +195,26 @@ def h4 OfTypeBisInst.of_type y /- [traits::TestType] - Source: 'tests/src/traits.rs', lines 123:0-123:22 -/ + Source: 'tests/src/traits.rs', lines 123:0-123:26 -/ @[reducible] def TestType (T : Type) := T /- [traits::{traits::TestType}#6::test::TestType1] - Source: 'tests/src/traits.rs', lines 128:8-128:24 -/ + Source: 'tests/src/traits.rs', lines 128:8-128:30 -/ @[reducible] def TestType.test.TestType1 := U64 /- Trait declaration: [traits::{traits::TestType}#6::test::TestTrait] - Source: 'tests/src/traits.rs', lines 129:8-129:23 -/ + Source: 'tests/src/traits.rs', lines 129:8-131:9 -/ structure TestType.test.TestTrait (Self : Type) where test : Self → Result Bool /- [traits::{traits::TestType}#6::test::{traits::{traits::TestType}#6::test::TestTrait for traits::{traits::TestType}#6::test::TestType1}::test]: - Source: 'tests/src/traits.rs', lines 140:12-140:34 -/ + Source: 'tests/src/traits.rs', lines 140:12-142:13 -/ def TestType.test.TestTraittraitsTestTypetestTestType1.test (self : TestType.test.TestType1) : Result Bool := Result.ok (self > 1#u64) /- Trait implementation: [traits::{traits::TestType}#6::test::{traits::{traits::TestType}#6::test::TestTrait for traits::{traits::TestType}#6::test::TestType1}] - Source: 'tests/src/traits.rs', lines 139:8-139:36 -/ + Source: 'tests/src/traits.rs', lines 139:8-143:9 -/ @[reducible] def TestType.test.TestTraittraitsTestTypetestTestType1 : TestType.test.TestTrait TestType.test.TestType1 := { @@ -222,7 +222,7 @@ def TestType.test.TestTraittraitsTestTypetestTestType1 : } /- [traits::{traits::TestType}#6::test]: - Source: 'tests/src/traits.rs', lines 127:4-127:36 -/ + Source: 'tests/src/traits.rs', lines 127:4-148:5 -/ def TestType.test (T : Type) (ToU64Inst : ToU64 T) (self : TestType T) (x : T) : Result Bool := do @@ -232,11 +232,11 @@ def TestType.test else Result.ok false /- [traits::BoolWrapper] - Source: 'tests/src/traits.rs', lines 151:0-151:22 -/ + Source: 'tests/src/traits.rs', lines 151:0-151:33 -/ @[reducible] def BoolWrapper := Bool /- [traits::{traits::ToType for traits::BoolWrapper}#7::to_type]: - Source: 'tests/src/traits.rs', lines 157:4-157:25 -/ + Source: 'tests/src/traits.rs', lines 157:4-159:5 -/ def ToTypetraitsBoolWrapperT.to_type (T : Type) (ToTypeBoolTInst : ToType Bool T) (self : BoolWrapper) : Result T @@ -244,7 +244,7 @@ def ToTypetraitsBoolWrapperT.to_type ToTypeBoolTInst.to_type self /- Trait implementation: [traits::{traits::ToType for traits::BoolWrapper}#7] - Source: 'tests/src/traits.rs', lines 153:0-155:20 -/ + Source: 'tests/src/traits.rs', lines 153:0-160:1 -/ @[reducible] def ToTypetraitsBoolWrapperT (T : Type) (ToTypeBoolTInst : ToType Bool T) : ToType BoolWrapper T := { @@ -252,14 +252,14 @@ def ToTypetraitsBoolWrapperT (T : Type) (ToTypeBoolTInst : ToType Bool T) : } /- [traits::WithConstTy::LEN2] - Source: 'tests/src/traits.rs', lines 165:4-165:21 -/ + Source: 'tests/src/traits.rs', lines 165:4-165:27 -/ def WithConstTy.LEN2_default_body (Self : Type) (LEN : Usize) : Result Usize := Result.ok 32#usize def WithConstTy.LEN2_default (Self : Type) (LEN : Usize) : Usize := eval_global (WithConstTy.LEN2_default_body Self LEN) /- Trait declaration: [traits::WithConstTy] - Source: 'tests/src/traits.rs', lines 162:0-162:39 -/ + Source: 'tests/src/traits.rs', lines 162:0-173:1 -/ structure WithConstTy (Self : Type) (LEN : Usize) where LEN1 : Usize LEN2 : Usize @@ -269,17 +269,17 @@ structure WithConstTy (Self : Type) (LEN : Usize) where f : W → Array U8 LEN → Result W /- [traits::{traits::WithConstTy<32: usize> for bool}#8::LEN1] - Source: 'tests/src/traits.rs', lines 176:4-176:21 -/ + Source: 'tests/src/traits.rs', lines 176:4-176:27 -/ def WithConstTyBool32.LEN1_body : Result Usize := Result.ok 12#usize def WithConstTyBool32.LEN1 : Usize := eval_global WithConstTyBool32.LEN1_body /- [traits::{traits::WithConstTy<32: usize> for bool}#8::f]: - Source: 'tests/src/traits.rs', lines 181:4-181:39 -/ + Source: 'tests/src/traits.rs', lines 181:4-181:42 -/ def WithConstTyBool32.f (i : U64) (a : Array U8 32#usize) : Result U64 := Result.ok i /- Trait implementation: [traits::{traits::WithConstTy<32: usize> for bool}#8] - Source: 'tests/src/traits.rs', lines 175:0-175:29 -/ + Source: 'tests/src/traits.rs', lines 175:0-182:1 -/ @[reducible] def WithConstTyBool32 : WithConstTy Bool 32#usize := { LEN1 := WithConstTyBool32.LEN1 @@ -291,7 +291,7 @@ def WithConstTyBool32 : WithConstTy Bool 32#usize := { } /- [traits::use_with_const_ty1]: - Source: 'tests/src/traits.rs', lines 184:0-184:75 -/ + Source: 'tests/src/traits.rs', lines 184:0-186:1 -/ def use_with_const_ty1 (H : Type) (LEN : Usize) (WithConstTyInst : WithConstTy H LEN) : Result Usize @@ -299,7 +299,7 @@ def use_with_const_ty1 Result.ok WithConstTyInst.LEN1 /- [traits::use_with_const_ty2]: - Source: 'tests/src/traits.rs', lines 188:0-188:73 -/ + Source: 'tests/src/traits.rs', lines 188:0-188:76 -/ def use_with_const_ty2 (H : Type) (LEN : Usize) (WithConstTyInst : WithConstTy H LEN) (w : WithConstTyInst.W) : @@ -308,7 +308,7 @@ def use_with_const_ty2 Result.ok () /- [traits::use_with_const_ty3]: - Source: 'tests/src/traits.rs', lines 190:0-190:80 -/ + Source: 'tests/src/traits.rs', lines 190:0-192:1 -/ def use_with_const_ty3 (H : Type) (LEN : Usize) (WithConstTyInst : WithConstTy H LEN) (x : WithConstTyInst.W) : @@ -317,12 +317,12 @@ def use_with_const_ty3 WithConstTyInst.ToU64traitsWithConstTyWInst.to_u64 x /- [traits::test_where1]: - Source: 'tests/src/traits.rs', lines 194:0-194:40 -/ + Source: 'tests/src/traits.rs', lines 194:0-194:43 -/ def test_where1 (T : Type) (_x : T) : Result Unit := Result.ok () /- [traits::test_where2]: - Source: 'tests/src/traits.rs', lines 195:0-195:57 -/ + Source: 'tests/src/traits.rs', lines 195:0-195:60 -/ def test_where2 (T : Type) (WithConstTyT32Inst : WithConstTy T 32#usize) (_x : U32) : Result Unit @@ -330,30 +330,30 @@ def test_where2 Result.ok () /- Trait declaration: [traits::ParentTrait0] - Source: 'tests/src/traits.rs', lines 201:0-201:22 -/ + Source: 'tests/src/traits.rs', lines 201:0-205:1 -/ structure ParentTrait0 (Self : Type) where W : Type get_name : Self → Result String get_w : Self → Result W /- Trait declaration: [traits::ParentTrait1] - Source: 'tests/src/traits.rs', lines 206:0-206:22 -/ + Source: 'tests/src/traits.rs', lines 206:0-206:25 -/ structure ParentTrait1 (Self : Type) where /- Trait declaration: [traits::ChildTrait] - Source: 'tests/src/traits.rs', lines 207:0-207:49 -/ + Source: 'tests/src/traits.rs', lines 207:0-207:52 -/ structure ChildTrait (Self : Type) where ParentTrait0Inst : ParentTrait0 Self ParentTrait1Inst : ParentTrait1 Self /- [traits::test_child_trait1]: - Source: 'tests/src/traits.rs', lines 210:0-210:56 -/ + Source: 'tests/src/traits.rs', lines 210:0-212:1 -/ def test_child_trait1 (T : Type) (ChildTraitInst : ChildTrait T) (x : T) : Result String := ChildTraitInst.ParentTrait0Inst.get_name x /- [traits::test_child_trait2]: - Source: 'tests/src/traits.rs', lines 214:0-214:54 -/ + Source: 'tests/src/traits.rs', lines 214:0-216:1 -/ def test_child_trait2 (T : Type) (ChildTraitInst : ChildTrait T) (x : T) : Result ChildTraitInst.ParentTrait0Inst.W @@ -361,7 +361,7 @@ def test_child_trait2 ChildTraitInst.ParentTrait0Inst.get_w x /- [traits::order1]: - Source: 'tests/src/traits.rs', lines 220:0-220:59 -/ + Source: 'tests/src/traits.rs', lines 220:0-220:62 -/ def order1 (T U : Type) (ParentTrait0Inst : ParentTrait0 T) (ParentTrait0Inst1 : ParentTrait0 U) : @@ -370,30 +370,30 @@ def order1 Result.ok () /- Trait declaration: [traits::ChildTrait1] - Source: 'tests/src/traits.rs', lines 223:0-223:35 -/ + Source: 'tests/src/traits.rs', lines 223:0-223:38 -/ structure ChildTrait1 (Self : Type) where ParentTrait1Inst : ParentTrait1 Self /- Trait implementation: [traits::{traits::ParentTrait1 for usize}#9] - Source: 'tests/src/traits.rs', lines 225:0-225:27 -/ + Source: 'tests/src/traits.rs', lines 225:0-225:30 -/ @[reducible] def ParentTrait1Usize : ParentTrait1 Usize := { } /- Trait implementation: [traits::{traits::ChildTrait1 for usize}#10] - Source: 'tests/src/traits.rs', lines 226:0-226:26 -/ + Source: 'tests/src/traits.rs', lines 226:0-226:29 -/ @[reducible] def ChildTrait1Usize : ChildTrait1 Usize := { ParentTrait1Inst := ParentTrait1Usize } /- Trait declaration: [traits::Iterator] - Source: 'tests/src/traits.rs', lines 230:0-230:18 -/ + Source: 'tests/src/traits.rs', lines 230:0-232:1 -/ structure Iterator (Self : Type) where Item : Type /- Trait declaration: [traits::IntoIterator] - Source: 'tests/src/traits.rs', lines 234:0-234:22 -/ + Source: 'tests/src/traits.rs', lines 234:0-240:1 -/ structure IntoIterator (Self : Type) where Item : Type IntoIter : Type @@ -401,42 +401,42 @@ structure IntoIterator (Self : Type) where into_iter : Self → Result IntoIter /- Trait declaration: [traits::FromResidual] - Source: 'tests/src/traits.rs', lines 251:0-251:21 -/ + Source: 'tests/src/traits.rs', lines 251:0-251:24 -/ structure FromResidual (Self T : Type) where /- Trait declaration: [traits::Try] - Source: 'tests/src/traits.rs', lines 247:0-247:48 -/ + Source: 'tests/src/traits.rs', lines 247:0-249:1 -/ structure Try (Self : Type) where Residual : Type FromResidualSelftraitsTryResidualInst : FromResidual Self Residual /- Trait declaration: [traits::WithTarget] - Source: 'tests/src/traits.rs', lines 253:0-253:20 -/ + Source: 'tests/src/traits.rs', lines 253:0-255:1 -/ structure WithTarget (Self : Type) where Target : Type /- Trait declaration: [traits::ParentTrait2] - Source: 'tests/src/traits.rs', lines 257:0-257:22 -/ + Source: 'tests/src/traits.rs', lines 257:0-259:1 -/ structure ParentTrait2 (Self : Type) where U : Type WithTargettraitsParentTrait2UInst : WithTarget U /- Trait declaration: [traits::ChildTrait2] - Source: 'tests/src/traits.rs', lines 261:0-261:35 -/ + Source: 'tests/src/traits.rs', lines 261:0-263:1 -/ structure ChildTrait2 (Self : Type) where ParentTrait2Inst : ParentTrait2 Self convert : ParentTrait2Inst.U → Result ParentTrait2Inst.WithTargettraitsParentTrait2UInst.Target /- Trait implementation: [traits::{traits::WithTarget for u32}#11] - Source: 'tests/src/traits.rs', lines 265:0-265:23 -/ + Source: 'tests/src/traits.rs', lines 265:0-267:1 -/ @[reducible] def WithTargetU32 : WithTarget U32 := { Target := U32 } /- Trait implementation: [traits::{traits::ParentTrait2 for u32}#12] - Source: 'tests/src/traits.rs', lines 269:0-269:25 -/ + Source: 'tests/src/traits.rs', lines 269:0-271:1 -/ @[reducible] def ParentTrait2U32 : ParentTrait2 U32 := { U := U32 @@ -444,12 +444,12 @@ def ParentTrait2U32 : ParentTrait2 U32 := { } /- [traits::{traits::ChildTrait2 for u32}#13::convert]: - Source: 'tests/src/traits.rs', lines 274:4-274:29 -/ + Source: 'tests/src/traits.rs', lines 274:4-276:5 -/ def ChildTrait2U32.convert (x : U32) : Result U32 := Result.ok x /- Trait implementation: [traits::{traits::ChildTrait2 for u32}#13] - Source: 'tests/src/traits.rs', lines 273:0-273:24 -/ + Source: 'tests/src/traits.rs', lines 273:0-277:1 -/ @[reducible] def ChildTrait2U32 : ChildTrait2 U32 := { ParentTrait2Inst := ParentTrait2U32 @@ -457,55 +457,55 @@ def ChildTrait2U32 : ChildTrait2 U32 := { } /- Trait declaration: [traits::CFnOnce] - Source: 'tests/src/traits.rs', lines 287:0-287:23 -/ + Source: 'tests/src/traits.rs', lines 287:0-291:1 -/ structure CFnOnce (Self Args : Type) where Output : Type call_once : Self → Args → Result Output /- Trait declaration: [traits::CFnMut] - Source: 'tests/src/traits.rs', lines 293:0-293:37 -/ + Source: 'tests/src/traits.rs', lines 293:0-295:1 -/ structure CFnMut (Self Args : Type) where CFnOnceInst : CFnOnce Self Args call_mut : Self → Args → Result (CFnOnceInst.Output × Self) /- Trait declaration: [traits::CFn] - Source: 'tests/src/traits.rs', lines 297:0-297:33 -/ + Source: 'tests/src/traits.rs', lines 297:0-299:1 -/ structure CFn (Self Args : Type) where CFnMutInst : CFnMut Self Args call : Self → Args → Result CFnMutInst.CFnOnceInst.Output /- Trait declaration: [traits::GetTrait] - Source: 'tests/src/traits.rs', lines 301:0-301:18 -/ + Source: 'tests/src/traits.rs', lines 301:0-304:1 -/ structure GetTrait (Self : Type) where W : Type get_w : Self → Result W /- [traits::test_get_trait]: - Source: 'tests/src/traits.rs', lines 306:0-306:49 -/ + Source: 'tests/src/traits.rs', lines 306:0-308:1 -/ def test_get_trait (T : Type) (GetTraitInst : GetTrait T) (x : T) : Result GetTraitInst.W := GetTraitInst.get_w x /- Trait declaration: [traits::Trait] - Source: 'tests/src/traits.rs', lines 311:0-311:15 -/ + Source: 'tests/src/traits.rs', lines 311:0-313:1 -/ structure Trait (Self : Type) where LEN : Usize /- [traits::{traits::Trait for @Array}#14::LEN] - Source: 'tests/src/traits.rs', lines 316:4-316:20 -/ + Source: 'tests/src/traits.rs', lines 316:4-316:25 -/ def TraitArray.LEN_body (T : Type) (N : Usize) : Result Usize := Result.ok N def TraitArray.LEN (T : Type) (N : Usize) : Usize := eval_global (TraitArray.LEN_body T N) /- Trait implementation: [traits::{traits::Trait for @Array}#14] - Source: 'tests/src/traits.rs', lines 315:0-315:40 -/ + Source: 'tests/src/traits.rs', lines 315:0-317:1 -/ @[reducible] def TraitArray (T : Type) (N : Usize) : Trait (Array T N) := { LEN := TraitArray.LEN T N } /- [traits::{traits::Trait for traits::Wrapper}#15::LEN] - Source: 'tests/src/traits.rs', lines 320:4-320:20 -/ + Source: 'tests/src/traits.rs', lines 320:4-320:25 -/ def TraittraitsWrapper.LEN_body (T : Type) (TraitInst : Trait T) : Result Usize := Result.ok 0#usize @@ -513,7 +513,7 @@ def TraittraitsWrapper.LEN (T : Type) (TraitInst : Trait T) : Usize := eval_global (TraittraitsWrapper.LEN_body T TraitInst) /- Trait implementation: [traits::{traits::Trait for traits::Wrapper}#15] - Source: 'tests/src/traits.rs', lines 319:0-319:35 -/ + Source: 'tests/src/traits.rs', lines 319:0-321:1 -/ @[reducible] def TraittraitsWrapper (T : Type) (TraitInst : Trait T) : Trait (Wrapper T) := { @@ -521,12 +521,12 @@ def TraittraitsWrapper (T : Type) (TraitInst : Trait T) : Trait (Wrapper T) } /- [traits::use_wrapper_len]: - Source: 'tests/src/traits.rs', lines 323:0-323:43 -/ + Source: 'tests/src/traits.rs', lines 323:0-325:1 -/ def use_wrapper_len (T : Type) (TraitInst : Trait T) : Result Usize := Result.ok (TraittraitsWrapper T TraitInst).LEN /- [traits::Foo] - Source: 'tests/src/traits.rs', lines 327:0-327:20 -/ + Source: 'tests/src/traits.rs', lines 327:0-330:1 -/ structure Foo (T U : Type) where x : T y : U @@ -539,7 +539,7 @@ inductive core.result.Result (T E : Type) := | Err : E → core.result.Result T E /- [traits::{traits::Foo}#16::FOO] - Source: 'tests/src/traits.rs', lines 333:4-333:33 -/ + Source: 'tests/src/traits.rs', lines 333:4-333:43 -/ def Foo.FOO_body (T U : Type) (TraitInst : Trait T) : Result (core.result.Result T I32) := Result.ok (core.result.Result.Err 0#i32) @@ -547,13 +547,13 @@ def Foo.FOO (T U : Type) (TraitInst : Trait T) : core.result.Result T I32 := eval_global (Foo.FOO_body T U TraitInst) /- [traits::use_foo1]: - Source: 'tests/src/traits.rs', lines 336:0-336:48 -/ + Source: 'tests/src/traits.rs', lines 336:0-338:1 -/ def use_foo1 (T U : Type) (TraitInst : Trait T) : Result (core.result.Result T I32) := Result.ok (Foo.FOO T U TraitInst) /- [traits::use_foo2]: - Source: 'tests/src/traits.rs', lines 340:0-340:48 -/ + Source: 'tests/src/traits.rs', lines 340:0-342:1 -/ def use_foo2 (T U : Type) (TraitInst : Trait U) : Result (core.result.Result U I32) := Result.ok (Foo.FOO U T TraitInst) diff --git a/tests/lean/Tutorial/Tutorial.lean b/tests/lean/Tutorial/Tutorial.lean index 2f006ac0a..153229f0f 100644 --- a/tests/lean/Tutorial/Tutorial.lean +++ b/tests/lean/Tutorial/Tutorial.lean @@ -9,7 +9,7 @@ set_option linter.unusedVariables false namespace tutorial /- [tutorial::choose]: - Source: 'src/lib.rs', lines 1:0-1:70 -/ + Source: 'src/lib.rs', lines 1:0-7:1 -/ def choose (T : Type) (b : Bool) (x : T) (y : T) : Result (T × (T → Result (T × T))) @@ -21,26 +21,26 @@ def choose Result.ok (y, back) /- [tutorial::mul2_add1]: - Source: 'src/lib.rs', lines 9:0-9:31 -/ + Source: 'src/lib.rs', lines 9:0-11:1 -/ def mul2_add1 (x : U32) : Result U32 := do let i ← x + x i + 1#u32 /- [tutorial::mul2_add1_add]: - Source: 'src/lib.rs', lines 13:0-13:43 -/ + Source: 'src/lib.rs', lines 13:0-15:1 -/ def mul2_add1_add (x : U32) (y : U32) : Result U32 := do let i ← mul2_add1 x i + y /- [tutorial::incr]: - Source: 'src/lib.rs', lines 17:0-17:31 -/ + Source: 'src/lib.rs', lines 17:0-19:1 -/ def incr (x : U32) : Result U32 := x + 1#u32 /- [tutorial::use_incr]: - Source: 'src/lib.rs', lines 21:0-21:17 -/ + Source: 'src/lib.rs', lines 21:0-26:1 -/ def use_incr : Result Unit := do let x ← incr 0#u32 @@ -49,13 +49,13 @@ def use_incr : Result Unit := Result.ok () /- [tutorial::CList] - Source: 'src/lib.rs', lines 30:0-30:17 -/ + Source: 'src/lib.rs', lines 30:0-33:1 -/ inductive CList (T : Type) := | CCons : T → CList T → CList T | CNil : CList T /- [tutorial::list_nth]: - Source: 'src/lib.rs', lines 35:0-35:56 -/ + Source: 'src/lib.rs', lines 35:0-48:1 -/ divergent def list_nth (T : Type) (l : CList T) (i : U32) : Result T := match l with | CList.CCons x tl => @@ -67,7 +67,7 @@ divergent def list_nth (T : Type) (l : CList T) (i : U32) : Result T := | CList.CNil => Result.fail .panic /- [tutorial::list_nth_mut]: - Source: 'src/lib.rs', lines 50:0-50:68 -/ + Source: 'src/lib.rs', lines 50:0-63:1 -/ divergent def list_nth_mut (T : Type) (l : CList T) (i : U32) : Result (T × (T → Result (CList T))) @@ -103,13 +103,13 @@ divergent def list_nth1_loop (T : Type) (l : CList T) (i : U32) : Result T := | CList.CNil => Result.fail .panic /- [tutorial::list_nth1]: - Source: 'src/lib.rs', lines 65:0-65:65 -/ + Source: 'src/lib.rs', lines 65:0-74:1 -/ @[reducible] def list_nth1 (T : Type) (l : CList T) (i : U32) : Result T := list_nth1_loop T l i /- [tutorial::i32_id]: - Source: 'src/lib.rs', lines 76:0-76:29 -/ + Source: 'src/lib.rs', lines 76:0-83:1 -/ divergent def i32_id (i : I32) : Result I32 := if i = 0#i32 then Result.ok 0#i32 @@ -119,7 +119,7 @@ divergent def i32_id (i : I32) : Result I32 := i2 + 1#i32 /- [tutorial::even]: - Source: 'src/lib.rs', lines 85:0-85:28 -/ + Source: 'src/lib.rs', lines 85:0-92:1 -/ mutual divergent def even (i : U32) : Result Bool := if i = 0#u32 then Result.ok true @@ -128,7 +128,7 @@ mutual divergent def even (i : U32) : Result Bool := odd i1 /- [tutorial::odd]: - Source: 'src/lib.rs', lines 94:0-94:27 -/ + Source: 'src/lib.rs', lines 94:0-101:1 -/ divergent def odd (i : U32) : Result Bool := if i = 0#u32 then Result.ok false @@ -139,26 +139,26 @@ divergent def odd (i : U32) : Result Bool := end /- Trait declaration: [tutorial::Counter] - Source: 'src/lib.rs', lines 105:0-105:17 -/ + Source: 'src/lib.rs', lines 105:0-107:1 -/ structure Counter (Self : Type) where incr : Self → Result (Usize × Self) /- [tutorial::{tutorial::Counter for usize}::incr]: - Source: 'src/lib.rs', lines 110:4-110:31 -/ + Source: 'src/lib.rs', lines 110:4-114:5 -/ def CounterUsize.incr (self : Usize) : Result (Usize × Usize) := do let self1 ← self + 1#usize Result.ok (self, self1) /- Trait implementation: [tutorial::{tutorial::Counter for usize}] - Source: 'src/lib.rs', lines 109:0-109:22 -/ + Source: 'src/lib.rs', lines 109:0-115:1 -/ @[reducible] def CounterUsize : Counter Usize := { incr := CounterUsize.incr } /- [tutorial::use_counter]: - Source: 'src/lib.rs', lines 117:0-117:59 -/ + Source: 'src/lib.rs', lines 117:0-119:1 -/ def use_counter (T : Type) (CounterInst : Counter T) (cnt : T) : Result (Usize × T) := CounterInst.incr cnt @@ -187,7 +187,7 @@ divergent def list_nth_mut1_loop | CList.CNil => Result.fail .panic /- [tutorial::list_nth_mut1]: - Source: 'src/lib.rs', lines 123:0-123:77 -/ + Source: 'src/lib.rs', lines 123:0-132:1 -/ @[reducible] def list_nth_mut1 (T : Type) (l : CList T) (i : U32) : @@ -213,7 +213,7 @@ divergent def list_tail_loop | CList.CNil => Result.ok (CList.CNil, Result.ok) /- [tutorial::list_tail]: - Source: 'src/lib.rs', lines 134:0-134:68 -/ + Source: 'src/lib.rs', lines 134:0-139:1 -/ @[reducible] def list_tail (T : Type) (l : CList T) : @@ -222,7 +222,7 @@ def list_tail list_tail_loop T l /- [tutorial::append_in_place]: - Source: 'src/lib.rs', lines 141:0-141:67 -/ + Source: 'src/lib.rs', lines 141:0-144:1 -/ def append_in_place (T : Type) (l0 : CList T) (l1 : CList T) : Result (CList T) := do @@ -246,7 +246,7 @@ divergent def zero_loop else Result.ok x /- [tutorial::zero]: - Source: 'src/lib.rs', lines 151:0-151:28 -/ + Source: 'src/lib.rs', lines 151:0-157:1 -/ def zero (x : alloc.vec.Vec U32) : Result (alloc.vec.Vec U32) := zero_loop x 0#usize @@ -273,7 +273,7 @@ divergent def add_no_overflow_loop else Result.ok x /- [tutorial::add_no_overflow]: - Source: 'src/lib.rs', lines 164:0-164:50 -/ + Source: 'src/lib.rs', lines 164:0-170:1 -/ def add_no_overflow (x : alloc.vec.Vec U32) (y : alloc.vec.Vec U32) : Result (alloc.vec.Vec U32) @@ -313,7 +313,7 @@ divergent def add_with_carry_loop else Result.ok (c0, x) /- [tutorial::add_with_carry]: - Source: 'src/lib.rs', lines 175:0-175:55 -/ + Source: 'src/lib.rs', lines 175:0-188:1 -/ def add_with_carry (x : alloc.vec.Vec U32) (y : alloc.vec.Vec U32) : Result (U8 × (alloc.vec.Vec U32)) @@ -321,14 +321,14 @@ def add_with_carry add_with_carry_loop x y 0#u8 0#usize /- [tutorial::max]: - Source: 'src/lib.rs', lines 190:0-190:37 -/ + Source: 'src/lib.rs', lines 190:0-192:1 -/ def max (x : Usize) (y : Usize) : Result Usize := if x > y then Result.ok x else Result.ok y /- [tutorial::get_or_zero]: - Source: 'src/lib.rs', lines 194:0-194:45 -/ + Source: 'src/lib.rs', lines 194:0-196:1 -/ def get_or_zero (y : alloc.vec.Vec U32) (i : Usize) : Result U32 := let i1 := alloc.vec.Vec.len U32 y if i < i1 @@ -373,7 +373,7 @@ divergent def add_loop else Result.ok x /- [tutorial::add]: - Source: 'src/lib.rs', lines 203:0-203:38 -/ + Source: 'src/lib.rs', lines 203:0-224:1 -/ def add (x : alloc.vec.Vec U32) (y : alloc.vec.Vec U32) : Result (alloc.vec.Vec U32) diff --git a/tests/src/borrow-check-negative.borrow-check.out b/tests/src/borrow-check-negative.borrow-check.out index dc9dd5a77..03d41b1d9 100644 --- a/tests/src/borrow-check-negative.borrow-check.out +++ b/tests/src/borrow-check-negative.borrow-check.out @@ -2,7 +2,7 @@ [Error] Can not apply a projection to the ⊥ value Source: 'tests/src/borrow-check-negative.rs', lines 17:4-24:1 [Error] Can't end abstraction 8 as it is set as non-endable -Source: 'tests/src/borrow-check-negative.rs', lines 26:0-26:76 +Source: 'tests/src/borrow-check-negative.rs', lines 26:0-32:1 [Error] Can not apply a projection to the ⊥ value Source: 'tests/src/borrow-check-negative.rs', lines 37:4-41:1 [Error] Can not apply a projection to the ⊥ value diff --git a/tests/src/loops-borrow-check-negative.borrow-check.out b/tests/src/loops-borrow-check-negative.borrow-check.out index 093d8b8ac..8112e2922 100644 --- a/tests/src/loops-borrow-check-negative.borrow-check.out +++ b/tests/src/loops-borrow-check-negative.borrow-check.out @@ -1,3 +1,3 @@ [Info ] Imported: tests/llbc/loops_borrow_check_negative.llbc [Error] Can't end abstraction 16 as it is set as non-endable -Source: 'tests/src/loops-borrow-check-negative.rs', lines 18:0-18:66 +Source: 'tests/src/loops-borrow-check-negative.rs', lines 18:0-28:1