1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "ll.h"
typedef struct node {
entry_t entry;
struct node *next;
} node_t;
typedef struct ll_map {
size_t length;
node_t *head;
} ll_map_t;
/**
* Initialize a new node with the given key and value.
*
* The returned node should be heap-allocated with malloc and it takes ownership
* of the arguments so the caller should not modify or free them afterward.
*/
static node_t *node_init(char *key, char* value);
/**
* Frees a linked list node and all following nodes.
*
* Also frees the keys and values since they are owned by the node.
*
* Passing NULL to this function is valid (and will do nothing).
*/
static void node_free(node_t *curr);
static node_t *node_init(char *key, char* value) {
(void) key;
(void) value;
return NULL;
}
static void node_free(node_t *curr) {
(void) curr;
}
ll_map_t *ll_init(void) {
return NULL;
}
void ll_free(ll_map_t *dict) {
(void) dict;
}
char *ll_put(ll_map_t *dict, char *key, char *value) {
(void) dict;
(void) key;
(void) value;
return NULL;
}
char *ll_get(ll_map_t *dict, char *key) {
(void) dict;
(void) key;
return NULL;
}
strarray_t *ll_get_keys(ll_map_t *dict) {
(void) dict;
return NULL;
}