Commit 5629d8c

mo khan <mo.khan@gmail.com>
2020-08-02 18:32:55
pass value as **void
1 parent a09ab21
Changed files (3)
src/02/04/hash.c
@@ -61,7 +61,7 @@ void *hash_get(Hash *hash, int key)
   return node->value;
 }
 
-void hash_set(Hash *hash, int key, void *value)
+void hash_set(Hash *hash, int key, void **value)
 {
   node_inspect(hash->head);
   int bucket = to_hash(key);
src/02/04/hash.h
@@ -3,10 +3,15 @@ typedef struct node {
   void *value;
 } Node;
 
+typedef struct {
+  int key;
+  void *value;
+} Tuple;
+
 typedef struct {
   Node *head;
 } Hash;
 
 Hash *hash_init(int buckets);
 void *hash_get(Hash *hash, int key);
-void hash_set(Hash *hash, int key, void *value);
+void hash_set(Hash *hash, int key, void **value);
src/02/04/hash_test.c
@@ -23,7 +23,7 @@ Ensure(HashTable, when_getting_a_values_for_a_key_that_has_been_inserted) {
   int value = 100;
   Hash *hash = hash_init(13);
 
-  hash_set(hash, key, &value);
+  hash_set(hash, key, value);
   assert_that(*(int *)hash_get(hash, key), is_equal_to(value));
 }