feat!: make all functions have return values
This commit is contained in:
38
ds.c
38
ds.c
@@ -27,33 +27,45 @@ ds_dll_t
|
||||
return node;
|
||||
}
|
||||
|
||||
void
|
||||
int
|
||||
ds_sll_insert(ds_sll_t *ll, void *data)
|
||||
{
|
||||
if (!ll) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
ds_ll_foreach(ds_sll_t, ll) {
|
||||
if (!cur->data) {
|
||||
cur->data = data;
|
||||
return;
|
||||
return 0;
|
||||
} else if (!cur->next) {
|
||||
cur->next = ds_sll_new_node(data);
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
void
|
||||
int
|
||||
ds_dll_insert(ds_dll_t *ll, void *data)
|
||||
{
|
||||
if (!ll) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
ds_ll_foreach(ds_dll_t, ll) {
|
||||
if (!cur->data) {
|
||||
cur->data = data;
|
||||
return;
|
||||
return 0;
|
||||
} else if (!cur->next) {
|
||||
cur->next = ds_dll_new_node(data);
|
||||
cur->next->prev = cur;
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
void
|
||||
@@ -152,7 +164,7 @@ ds_hmp_t
|
||||
return hmp;
|
||||
}
|
||||
|
||||
void
|
||||
int
|
||||
ds_hmp_free(ds_hmp_t **hmp, void kv_callback(_ds_hmp_kv_t *kv))
|
||||
{
|
||||
int i;
|
||||
@@ -160,7 +172,7 @@ ds_hmp_free(ds_hmp_t **hmp, void kv_callback(_ds_hmp_kv_t *kv))
|
||||
ds_sll_t *ll;
|
||||
|
||||
if (!hmp || !*hmp) {
|
||||
return;
|
||||
return -1;
|
||||
}
|
||||
|
||||
for (i = 0; i < (*hmp)->data_len; i++) {
|
||||
@@ -179,6 +191,8 @@ ds_hmp_free(ds_hmp_t **hmp, void kv_callback(_ds_hmp_kv_t *kv))
|
||||
}
|
||||
free((*hmp)->data);
|
||||
free(*hmp);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -194,13 +208,17 @@ _ds_hmp_gen_hash(char *str)
|
||||
return hash;
|
||||
}
|
||||
|
||||
void
|
||||
int
|
||||
ds_hmp_insert(ds_hmp_t *hmp, char *key, void *data)
|
||||
{
|
||||
_ds_hmp_kv_t *kv;
|
||||
ds_sll_t *ll;
|
||||
unsigned hash_pos;
|
||||
|
||||
if (!hmp || !key || !data) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
kv = malloc(sizeof(_ds_hmp_kv_t));
|
||||
kv->key = key;
|
||||
kv->val = data;
|
||||
@@ -213,6 +231,8 @@ ds_hmp_insert(ds_hmp_t *hmp, char *key, void *data)
|
||||
/* get the ll and put the data into it */
|
||||
ll = hmp->data[hash_pos];
|
||||
ds_sll_insert(ll, kv);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
|
Reference in New Issue
Block a user