summaryrefslogtreecommitdiff
path: root/tests/coq/hashmap
diff options
context:
space:
mode:
Diffstat (limited to 'tests/coq/hashmap')
-rw-r--r--tests/coq/hashmap/Hashmap_Funs.v250
-rw-r--r--tests/coq/hashmap/Hashmap_FunsExternal_Template.v4
-rw-r--r--tests/coq/hashmap/Hashmap_Types.v18
3 files changed, 136 insertions, 136 deletions
diff --git a/tests/coq/hashmap/Hashmap_Funs.v b/tests/coq/hashmap/Hashmap_Funs.v
index 02aa0269..d63c6f72 100644
--- a/tests/coq/hashmap/Hashmap_Funs.v
+++ b/tests/coq/hashmap/Hashmap_Funs.v
@@ -13,22 +13,22 @@ Include Hashmap_FunsExternal.
Module Hashmap_Funs.
(** [hashmap::hash_key]:
- Source: 'tests/src/hashmap.rs', lines 37:0-37:32 *)
+ Source: 'tests/src/hashmap.rs', lines 38:0-38:32 *)
Definition hash_key (k : usize) : result usize :=
Ok k.
(** [hashmap::{hashmap::HashMap<T>}::allocate_slots]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 60:4-66:5 *)
+ Source: 'tests/src/hashmap.rs', lines 61:4-67:5 *)
Fixpoint hashMap_allocate_slots_loop
- (T : Type) (n : nat) (slots : alloc_vec_Vec (List_t T)) (n1 : usize) :
- result (alloc_vec_Vec (List_t T))
+ (T : Type) (n : nat) (slots : alloc_vec_Vec (AList_t T)) (n1 : usize) :
+ result (alloc_vec_Vec (AList_t T))
:=
match n with
| O => Fail_ OutOfFuel
| S n2 =>
if n1 s> 0%usize
then (
- slots1 <- alloc_vec_Vec_push (List_t T) slots List_Nil;
+ slots1 <- alloc_vec_Vec_push (AList_t T) slots AList_Nil;
n3 <- usize_sub n1 1%usize;
hashMap_allocate_slots_loop T n2 slots1 n3)
else Ok slots
@@ -36,22 +36,22 @@ Fixpoint hashMap_allocate_slots_loop
.
(** [hashmap::{hashmap::HashMap<T>}::allocate_slots]:
- Source: 'tests/src/hashmap.rs', lines 60:4-60:76 *)
+ Source: 'tests/src/hashmap.rs', lines 61:4-61:78 *)
Definition hashMap_allocate_slots
- (T : Type) (n : nat) (slots : alloc_vec_Vec (List_t T)) (n1 : usize) :
- result (alloc_vec_Vec (List_t T))
+ (T : Type) (n : nat) (slots : alloc_vec_Vec (AList_t T)) (n1 : usize) :
+ result (alloc_vec_Vec (AList_t T))
:=
hashMap_allocate_slots_loop T n slots n1
.
(** [hashmap::{hashmap::HashMap<T>}::new_with_capacity]:
- Source: 'tests/src/hashmap.rs', lines 69:4-73:13 *)
+ Source: 'tests/src/hashmap.rs', lines 70:4-74:13 *)
Definition hashMap_new_with_capacity
(T : Type) (n : nat) (capacity : usize) (max_load_dividend : usize)
(max_load_divisor : usize) :
result (HashMap_t T)
:=
- slots <- hashMap_allocate_slots T n (alloc_vec_Vec_new (List_t T)) capacity;
+ slots <- hashMap_allocate_slots T n (alloc_vec_Vec_new (AList_t T)) capacity;
i <- usize_mul capacity max_load_dividend;
i1 <- usize_div i max_load_divisor;
Ok
@@ -64,36 +64,36 @@ Definition hashMap_new_with_capacity
.
(** [hashmap::{hashmap::HashMap<T>}::new]:
- Source: 'tests/src/hashmap.rs', lines 85:4-85:24 *)
+ Source: 'tests/src/hashmap.rs', lines 86:4-86:24 *)
Definition hashMap_new (T : Type) (n : nat) : result (HashMap_t T) :=
hashMap_new_with_capacity T n 32%usize 4%usize 5%usize
.
(** [hashmap::{hashmap::HashMap<T>}::clear]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 90:4-98:5 *)
+ Source: 'tests/src/hashmap.rs', lines 91:4-99:5 *)
Fixpoint hashMap_clear_loop
- (T : Type) (n : nat) (slots : alloc_vec_Vec (List_t T)) (i : usize) :
- result (alloc_vec_Vec (List_t T))
+ (T : Type) (n : nat) (slots : alloc_vec_Vec (AList_t T)) (i : usize) :
+ result (alloc_vec_Vec (AList_t T))
:=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
- let i1 := alloc_vec_Vec_len (List_t T) slots in
+ let i1 := alloc_vec_Vec_len (AList_t T) slots in
if i s< i1
then (
p <-
- alloc_vec_Vec_index_mut (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T)) slots i;
+ alloc_vec_Vec_index_mut (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T)) slots i;
let (_, index_mut_back) := p in
i2 <- usize_add i 1%usize;
- slots1 <- index_mut_back List_Nil;
+ slots1 <- index_mut_back AList_Nil;
hashMap_clear_loop T n1 slots1 i2)
else Ok slots
end
.
(** [hashmap::{hashmap::HashMap<T>}::clear]:
- Source: 'tests/src/hashmap.rs', lines 90:4-90:27 *)
+ Source: 'tests/src/hashmap.rs', lines 91:4-91:27 *)
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;
@@ -107,62 +107,62 @@ Definition hashMap_clear
.
(** [hashmap::{hashmap::HashMap<T>}::len]:
- Source: 'tests/src/hashmap.rs', lines 100:4-100:30 *)
+ Source: 'tests/src/hashmap.rs', lines 101:4-101:30 *)
Definition hashMap_len (T : Type) (self : HashMap_t T) : result usize :=
Ok self.(hashMap_num_entries)
.
(** [hashmap::{hashmap::HashMap<T>}::insert_in_list]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 107:4-124:5 *)
+ Source: 'tests/src/hashmap.rs', lines 108:4-125:5 *)
Fixpoint hashMap_insert_in_list_loop
- (T : Type) (n : nat) (key : usize) (value : T) (ls : List_t T) :
- result (bool * (List_t T))
+ (T : Type) (n : nat) (key : usize) (value : T) (ls : AList_t T) :
+ result (bool * (AList_t T))
:=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
match ls with
- | List_Cons ckey cvalue tl =>
+ | AList_Cons ckey cvalue tl =>
if ckey s= key
- then Ok (false, List_Cons ckey value tl)
+ then Ok (false, AList_Cons ckey value tl)
else (
p <- hashMap_insert_in_list_loop T n1 key value tl;
let (b, tl1) := p in
- Ok (b, List_Cons ckey cvalue tl1))
- | List_Nil => Ok (true, List_Cons key value List_Nil)
+ Ok (b, AList_Cons ckey cvalue tl1))
+ | AList_Nil => Ok (true, AList_Cons key value AList_Nil)
end
end
.
(** [hashmap::{hashmap::HashMap<T>}::insert_in_list]:
- Source: 'tests/src/hashmap.rs', lines 107:4-107:71 *)
+ Source: 'tests/src/hashmap.rs', lines 108:4-108:72 *)
Definition hashMap_insert_in_list
- (T : Type) (n : nat) (key : usize) (value : T) (ls : List_t T) :
- result (bool * (List_t T))
+ (T : Type) (n : nat) (key : usize) (value : T) (ls : AList_t T) :
+ result (bool * (AList_t T))
:=
hashMap_insert_in_list_loop T n key value ls
.
(** [hashmap::{hashmap::HashMap<T>}::insert_no_resize]:
- Source: 'tests/src/hashmap.rs', lines 127:4-127:54 *)
+ Source: 'tests/src/hashmap.rs', lines 128:4-128:54 *)
Definition hashMap_insert_no_resize
(T : Type) (n : nat) (self : HashMap_t T) (key : usize) (value : T) :
result (HashMap_t T)
:=
hash <- hash_key key;
- let i := alloc_vec_Vec_len (List_t T) self.(hashMap_slots) in
+ let i := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in
hash_mod <- usize_rem hash i;
p <-
- alloc_vec_Vec_index_mut (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T))
+ alloc_vec_Vec_index_mut (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T))
self.(hashMap_slots) hash_mod;
- let (l, index_mut_back) := p in
- p1 <- hashMap_insert_in_list T n key value l;
- let (inserted, l1) := p1 in
+ let (a, index_mut_back) := p in
+ p1 <- hashMap_insert_in_list T n key value a;
+ let (inserted, a1) := p1 in
if inserted
then (
i1 <- usize_add self.(hashMap_num_entries) 1%usize;
- v <- index_mut_back l1;
+ v <- index_mut_back a1;
Ok
{|
hashMap_num_entries := i1;
@@ -171,7 +171,7 @@ Definition hashMap_insert_no_resize
hashMap_slots := v
|})
else (
- v <- index_mut_back l1;
+ v <- index_mut_back a1;
Ok
{|
hashMap_num_entries := self.(hashMap_num_entries);
@@ -182,74 +182,74 @@ Definition hashMap_insert_no_resize
.
(** [hashmap::{hashmap::HashMap<T>}::move_elements_from_list]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 193:4-206:5 *)
+ Source: 'tests/src/hashmap.rs', lines 194:4-207:5 *)
Fixpoint hashMap_move_elements_from_list_loop
- (T : Type) (n : nat) (ntable : HashMap_t T) (ls : List_t T) :
+ (T : Type) (n : nat) (ntable : HashMap_t T) (ls : AList_t T) :
result (HashMap_t T)
:=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
match ls with
- | List_Cons k v tl =>
+ | AList_Cons k v tl =>
ntable1 <- hashMap_insert_no_resize T n1 ntable k v;
hashMap_move_elements_from_list_loop T n1 ntable1 tl
- | List_Nil => Ok ntable
+ | AList_Nil => Ok ntable
end
end
.
(** [hashmap::{hashmap::HashMap<T>}::move_elements_from_list]:
- Source: 'tests/src/hashmap.rs', lines 193:4-193:72 *)
+ Source: 'tests/src/hashmap.rs', lines 194:4-194:73 *)
Definition hashMap_move_elements_from_list
- (T : Type) (n : nat) (ntable : HashMap_t T) (ls : List_t T) :
+ (T : Type) (n : nat) (ntable : HashMap_t T) (ls : AList_t T) :
result (HashMap_t T)
:=
hashMap_move_elements_from_list_loop T n ntable ls
.
(** [hashmap::{hashmap::HashMap<T>}::move_elements]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 181:4-190:5 *)
+ Source: 'tests/src/hashmap.rs', lines 182:4-191:5 *)
Fixpoint hashMap_move_elements_loop
(T : Type) (n : nat) (ntable : HashMap_t T)
- (slots : alloc_vec_Vec (List_t T)) (i : usize) :
- result ((HashMap_t T) * (alloc_vec_Vec (List_t T)))
+ (slots : alloc_vec_Vec (AList_t T)) (i : usize) :
+ result ((HashMap_t T) * (alloc_vec_Vec (AList_t T)))
:=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
- let i1 := alloc_vec_Vec_len (List_t T) slots in
+ let i1 := alloc_vec_Vec_len (AList_t T) slots in
if i s< i1
then (
p <-
- alloc_vec_Vec_index_mut (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T)) slots i;
- let (l, index_mut_back) := p in
- let (ls, l1) := core_mem_replace (List_t T) l List_Nil in
+ alloc_vec_Vec_index_mut (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T)) slots i;
+ let (a, index_mut_back) := p in
+ let (ls, a1) := core_mem_replace (AList_t T) a AList_Nil in
ntable1 <- hashMap_move_elements_from_list T n1 ntable ls;
i2 <- usize_add i 1%usize;
- slots1 <- index_mut_back l1;
+ slots1 <- index_mut_back a1;
hashMap_move_elements_loop T n1 ntable1 slots1 i2)
else Ok (ntable, slots)
end
.
(** [hashmap::{hashmap::HashMap<T>}::move_elements]:
- Source: 'tests/src/hashmap.rs', lines 181:4-181:95 *)
+ Source: 'tests/src/hashmap.rs', lines 182:4-182:96 *)
Definition hashMap_move_elements
(T : Type) (n : nat) (ntable : HashMap_t T)
- (slots : alloc_vec_Vec (List_t T)) (i : usize) :
- result ((HashMap_t T) * (alloc_vec_Vec (List_t T)))
+ (slots : alloc_vec_Vec (AList_t T)) (i : usize) :
+ result ((HashMap_t T) * (alloc_vec_Vec (AList_t T)))
:=
hashMap_move_elements_loop T n ntable slots i
.
(** [hashmap::{hashmap::HashMap<T>}::try_resize]:
- Source: 'tests/src/hashmap.rs', lines 150:4-150:28 *)
+ Source: 'tests/src/hashmap.rs', lines 151:4-151:28 *)
Definition hashMap_try_resize
(T : Type) (n : nat) (self : HashMap_t T) : result (HashMap_t T) :=
max_usize <- scalar_cast U32 Usize core_u32_max;
- let capacity := alloc_vec_Vec_len (List_t T) self.(hashMap_slots) in
+ let capacity := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in
n1 <- usize_div max_usize 2%usize;
let (i, i1) := self.(hashMap_max_load_factor) in
i2 <- usize_div n1 i;
@@ -277,7 +277,7 @@ Definition hashMap_try_resize
.
(** [hashmap::{hashmap::HashMap<T>}::insert]:
- Source: 'tests/src/hashmap.rs', lines 139:4-139:48 *)
+ Source: 'tests/src/hashmap.rs', lines 140:4-140:48 *)
Definition hashMap_insert
(T : Type) (n : nat) (self : HashMap_t T) (key : usize) (value : T) :
result (HashMap_t T)
@@ -290,134 +290,134 @@ Definition hashMap_insert
.
(** [hashmap::{hashmap::HashMap<T>}::contains_key_in_list]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 216:4-229:5 *)
+ Source: 'tests/src/hashmap.rs', lines 217:4-230:5 *)
Fixpoint hashMap_contains_key_in_list_loop
- (T : Type) (n : nat) (key : usize) (ls : List_t T) : result bool :=
+ (T : Type) (n : nat) (key : usize) (ls : AList_t T) : result bool :=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
match ls with
- | List_Cons ckey _ tl =>
+ | AList_Cons ckey _ tl =>
if ckey s= key
then Ok true
else hashMap_contains_key_in_list_loop T n1 key tl
- | List_Nil => Ok false
+ | AList_Nil => Ok false
end
end
.
(** [hashmap::{hashmap::HashMap<T>}::contains_key_in_list]:
- Source: 'tests/src/hashmap.rs', lines 216:4-216:68 *)
+ Source: 'tests/src/hashmap.rs', lines 217:4-217:69 *)
Definition hashMap_contains_key_in_list
- (T : Type) (n : nat) (key : usize) (ls : List_t T) : result bool :=
+ (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<T>}::contains_key]:
- Source: 'tests/src/hashmap.rs', lines 209:4-209:49 *)
+ Source: 'tests/src/hashmap.rs', lines 210:4-210:49 *)
Definition hashMap_contains_key
(T : Type) (n : nat) (self : HashMap_t T) (key : usize) : result bool :=
hash <- hash_key key;
- let i := alloc_vec_Vec_len (List_t T) self.(hashMap_slots) in
+ let i := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in
hash_mod <- usize_rem hash i;
- l <-
- alloc_vec_Vec_index (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T))
+ a <-
+ alloc_vec_Vec_index (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T))
self.(hashMap_slots) hash_mod;
- hashMap_contains_key_in_list T n key l
+ hashMap_contains_key_in_list T n key a
.
(** [hashmap::{hashmap::HashMap<T>}::get_in_list]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 234:4-247:5 *)
+ Source: 'tests/src/hashmap.rs', lines 235:4-248:5 *)
Fixpoint hashMap_get_in_list_loop
- (T : Type) (n : nat) (key : usize) (ls : List_t T) : result T :=
+ (T : Type) (n : nat) (key : usize) (ls : AList_t T) : result T :=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
match ls with
- | List_Cons ckey cvalue tl =>
+ | AList_Cons ckey cvalue tl =>
if ckey s= key then Ok cvalue else hashMap_get_in_list_loop T n1 key tl
- | List_Nil => Fail_ Failure
+ | AList_Nil => Fail_ Failure
end
end
.
(** [hashmap::{hashmap::HashMap<T>}::get_in_list]:
- Source: 'tests/src/hashmap.rs', lines 234:4-234:70 *)
+ Source: 'tests/src/hashmap.rs', lines 235:4-235:71 *)
Definition hashMap_get_in_list
- (T : Type) (n : nat) (key : usize) (ls : List_t T) : result T :=
+ (T : Type) (n : nat) (key : usize) (ls : AList_t T) : result T :=
hashMap_get_in_list_loop T n key ls
.
(** [hashmap::{hashmap::HashMap<T>}::get]:
- Source: 'tests/src/hashmap.rs', lines 249:4-249:55 *)
+ Source: 'tests/src/hashmap.rs', lines 250:4-250:55 *)
Definition hashMap_get
(T : Type) (n : nat) (self : HashMap_t T) (key : usize) : result T :=
hash <- hash_key key;
- let i := alloc_vec_Vec_len (List_t T) self.(hashMap_slots) in
+ let i := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in
hash_mod <- usize_rem hash i;
- l <-
- alloc_vec_Vec_index (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T))
+ a <-
+ alloc_vec_Vec_index (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T))
self.(hashMap_slots) hash_mod;
- hashMap_get_in_list T n key l
+ hashMap_get_in_list T n key a
.
(** [hashmap::{hashmap::HashMap<T>}::get_mut_in_list]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 255:4-264:5 *)
+ Source: 'tests/src/hashmap.rs', lines 256:4-265:5 *)
Fixpoint hashMap_get_mut_in_list_loop
- (T : Type) (n : nat) (ls : List_t T) (key : usize) :
- result (T * (T -> result (List_t T)))
+ (T : Type) (n : nat) (ls : AList_t T) (key : usize) :
+ result (T * (T -> result (AList_t T)))
:=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
match ls with
- | List_Cons ckey cvalue tl =>
+ | AList_Cons ckey cvalue tl =>
if ckey s= key
then
- let back := fun (ret : T) => Ok (List_Cons ckey ret tl) in
+ let back := fun (ret : T) => Ok (AList_Cons ckey ret tl) in
Ok (cvalue, back)
else (
p <- hashMap_get_mut_in_list_loop T n1 tl key;
let (t, back) := p in
let back1 :=
- fun (ret : T) => tl1 <- back ret; Ok (List_Cons ckey cvalue tl1) in
+ fun (ret : T) => tl1 <- back ret; Ok (AList_Cons ckey cvalue tl1) in
Ok (t, back1))
- | List_Nil => Fail_ Failure
+ | AList_Nil => Fail_ Failure
end
end
.
(** [hashmap::{hashmap::HashMap<T>}::get_mut_in_list]:
- Source: 'tests/src/hashmap.rs', lines 255:4-255:86 *)
+ Source: 'tests/src/hashmap.rs', lines 256:4-256:87 *)
Definition hashMap_get_mut_in_list
- (T : Type) (n : nat) (ls : List_t T) (key : usize) :
- result (T * (T -> result (List_t T)))
+ (T : Type) (n : nat) (ls : AList_t T) (key : usize) :
+ result (T * (T -> result (AList_t T)))
:=
hashMap_get_mut_in_list_loop T n ls key
.
(** [hashmap::{hashmap::HashMap<T>}::get_mut]:
- Source: 'tests/src/hashmap.rs', lines 267:4-267:67 *)
+ Source: 'tests/src/hashmap.rs', lines 268:4-268:67 *)
Definition hashMap_get_mut
(T : Type) (n : nat) (self : HashMap_t T) (key : usize) :
result (T * (T -> result (HashMap_t T)))
:=
hash <- hash_key key;
- let i := alloc_vec_Vec_len (List_t T) self.(hashMap_slots) in
+ let i := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in
hash_mod <- usize_rem hash i;
p <-
- alloc_vec_Vec_index_mut (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T))
+ alloc_vec_Vec_index_mut (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T))
self.(hashMap_slots) hash_mod;
- let (l, index_mut_back) := p in
- p1 <- hashMap_get_mut_in_list T n l key;
+ let (a, index_mut_back) := p in
+ p1 <- hashMap_get_mut_in_list T n a key;
let (t, get_mut_in_list_back) := p1 in
let back :=
fun (ret : T) =>
- l1 <- get_mut_in_list_back ret;
- v <- index_mut_back l1;
+ a1 <- get_mut_in_list_back ret;
+ v <- index_mut_back a1;
Ok
{|
hashMap_num_entries := self.(hashMap_num_entries);
@@ -429,61 +429,61 @@ Definition hashMap_get_mut
.
(** [hashmap::{hashmap::HashMap<T>}::remove_from_list]: loop 0:
- Source: 'tests/src/hashmap.rs', lines 275:4-301:5 *)
+ Source: 'tests/src/hashmap.rs', lines 276:4-302:5 *)
Fixpoint hashMap_remove_from_list_loop
- (T : Type) (n : nat) (key : usize) (ls : List_t T) :
- result ((option T) * (List_t T))
+ (T : Type) (n : nat) (key : usize) (ls : AList_t T) :
+ result ((option T) * (AList_t T))
:=
match n with
| O => Fail_ OutOfFuel
| S n1 =>
match ls with
- | List_Cons ckey t tl =>
+ | AList_Cons ckey t tl =>
if ckey s= key
then
let (mv_ls, _) :=
- core_mem_replace (List_t T) (List_Cons ckey t tl) List_Nil in
+ core_mem_replace (AList_t T) (AList_Cons ckey t tl) AList_Nil in
match mv_ls with
- | List_Cons _ cvalue tl1 => Ok (Some cvalue, tl1)
- | List_Nil => Fail_ Failure
+ | AList_Cons _ cvalue tl1 => Ok (Some cvalue, tl1)
+ | AList_Nil => Fail_ Failure
end
else (
p <- hashMap_remove_from_list_loop T n1 key tl;
let (o, tl1) := p in
- Ok (o, List_Cons ckey t tl1))
- | List_Nil => Ok (None, List_Nil)
+ Ok (o, AList_Cons ckey t tl1))
+ | AList_Nil => Ok (None, AList_Nil)
end
end
.
(** [hashmap::{hashmap::HashMap<T>}::remove_from_list]:
- Source: 'tests/src/hashmap.rs', lines 275:4-275:69 *)
+ Source: 'tests/src/hashmap.rs', lines 276:4-276:70 *)
Definition hashMap_remove_from_list
- (T : Type) (n : nat) (key : usize) (ls : List_t T) :
- result ((option T) * (List_t T))
+ (T : Type) (n : nat) (key : usize) (ls : AList_t T) :
+ result ((option T) * (AList_t T))
:=
hashMap_remove_from_list_loop T n key ls
.
(** [hashmap::{hashmap::HashMap<T>}::remove]:
- Source: 'tests/src/hashmap.rs', lines 304:4-304:52 *)
+ Source: 'tests/src/hashmap.rs', lines 305:4-305:52 *)
Definition hashMap_remove
(T : Type) (n : nat) (self : HashMap_t T) (key : usize) :
result ((option T) * (HashMap_t T))
:=
hash <- hash_key key;
- let i := alloc_vec_Vec_len (List_t T) self.(hashMap_slots) in
+ let i := alloc_vec_Vec_len (AList_t T) self.(hashMap_slots) in
hash_mod <- usize_rem hash i;
p <-
- alloc_vec_Vec_index_mut (List_t T) usize
- (core_slice_index_SliceIndexUsizeSliceTInst (List_t T))
+ alloc_vec_Vec_index_mut (AList_t T) usize
+ (core_slice_index_SliceIndexUsizeSliceTInst (AList_t T))
self.(hashMap_slots) hash_mod;
- let (l, index_mut_back) := p in
- p1 <- hashMap_remove_from_list T n key l;
- let (x, l1) := p1 in
+ let (a, index_mut_back) := p in
+ p1 <- hashMap_remove_from_list T n key a;
+ let (x, a1) := p1 in
match x with
| None =>
- v <- index_mut_back l1;
+ v <- index_mut_back a1;
Ok (None,
{|
hashMap_num_entries := self.(hashMap_num_entries);
@@ -493,7 +493,7 @@ Definition hashMap_remove
|})
| Some x1 =>
i1 <- usize_sub self.(hashMap_num_entries) 1%usize;
- v <- index_mut_back l1;
+ v <- index_mut_back a1;
Ok (Some x1,
{|
hashMap_num_entries := i1;
@@ -505,7 +505,7 @@ Definition hashMap_remove
.
(** [hashmap::insert_on_disk]:
- Source: 'tests/src/hashmap.rs', lines 335:0-335:43 *)
+ Source: 'tests/src/hashmap.rs', lines 336:0-336:43 *)
Definition insert_on_disk
(n : nat) (key : usize) (value : u64) (st : state) : result (state * unit) :=
p <- utils_deserialize st;
@@ -515,7 +515,7 @@ Definition insert_on_disk
.
(** [hashmap::test1]:
- Source: 'tests/src/hashmap.rs', lines 350:0-350:10 *)
+ Source: 'tests/src/hashmap.rs', lines 351:0-351:10 *)
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 c58b021d..ca198a8d 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 330:4-330:47 *)
+ Source: 'tests/src/hashmap.rs', lines 331:4-331:47 *)
Axiom utils_deserialize : state -> result (state * (HashMap_t u64)).
(** [hashmap::utils::serialize]:
- Source: 'tests/src/hashmap.rs', lines 325:4-325:46 *)
+ Source: 'tests/src/hashmap.rs', lines 326:4-326:46 *)
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 452d56f8..070d6dfb 100644
--- a/tests/coq/hashmap/Hashmap_Types.v
+++ b/tests/coq/hashmap/Hashmap_Types.v
@@ -10,24 +10,24 @@ Require Import Hashmap_TypesExternal.
Include Hashmap_TypesExternal.
Module Hashmap_Types.
-(** [hashmap::List]
- Source: 'tests/src/hashmap.rs', lines 29:0-29:16 *)
-Inductive List_t (T : Type) :=
-| List_Cons : usize -> T -> List_t T -> List_t T
-| List_Nil : List_t T
+(** [hashmap::AList]
+ Source: 'tests/src/hashmap.rs', lines 30:0-30:17 *)
+Inductive AList_t (T : Type) :=
+| AList_Cons : usize -> T -> AList_t T -> AList_t T
+| AList_Nil : AList_t T
.
-Arguments List_Cons { _ }.
-Arguments List_Nil { _ }.
+Arguments AList_Cons { _ }.
+Arguments AList_Nil { _ }.
(** [hashmap::HashMap]
- Source: 'tests/src/hashmap.rs', lines 45:0-45:21 *)
+ Source: 'tests/src/hashmap.rs', lines 46:0-46:21 *)
Record HashMap_t (T : Type) :=
mkHashMap_t {
hashMap_num_entries : usize;
hashMap_max_load_factor : (usize * usize);
hashMap_max_load : usize;
- hashMap_slots : alloc_vec_Vec (List_t T);
+ hashMap_slots : alloc_vec_Vec (AList_t T);
}
.