From aa9613efb6fb39bd96fc4836b5d38c3746af1b15 Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 30 Jan 2020 10:36:49 +0100 Subject: hash table draft --- src/ht/ft_htset.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/ht/ft_htset.c (limited to 'src/ht/ft_htset.c') diff --git a/src/ht/ft_htset.c b/src/ht/ft_htset.c new file mode 100644 index 0000000..32aa448 --- /dev/null +++ b/src/ht/ft_htset.c @@ -0,0 +1,33 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_htset.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/01/30 08:41:52 by cacharle #+# #+# */ +/* Updated: 2020/01/30 08:50:48 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +t_ftht_content *ft_htset(t_ftht *ht, char *key, void *value) +{ + t_ftht_digest digest; + t_ftht_content *content; + t_ftht_entry entry; + + if (ht == NULL || key == NULL) + return (NULL) + if ((content = ft_htcontent_new(key, value)) == NULL) + return (NULL); + if ((entry = ft_lstnew(content)) = NULL) + { + free(content); + return (NULL); + } + digest = ft_hthash(ht, key); + ft_lstadd_front(ht->entries + digest, entry); + return (content); +} -- cgit