From: Lukáš Jiřiště Date: Thu, 31 Jul 2025 11:28:51 +0000 (+0200) Subject: Add the ft_tree_set_data function X-Git-Url: https://git.ljiriste.work/?a=commitdiff_plain;h=c5bdc376a5f60fd9ed96aa69f78bc4f073215254;p=Libft.git Add the ft_tree_set_data function --- diff --git a/Makefile b/Makefile index 95d82d8..e2964d5 100644 --- a/Makefile +++ b/Makefile @@ -25,6 +25,7 @@ SRCstruct:= ft_stack_free.c \ ft_tree_append_child.c \ ft_tree_access_child.c \ ft_tree_access_data.c \ + ft_tree_set_data.c \ ft_tree_erase_subtree.c \ ft_tree_replace_with_child.c \ ft_tree_forget_child.c \ diff --git a/ft_struct/ft_tree_set_data.c b/ft_struct/ft_tree_set_data.c new file mode 100644 index 0000000..f71992f --- /dev/null +++ b/ft_struct/ft_tree_set_data.c @@ -0,0 +1,8 @@ +#include "ft_struct.h" +#include "libft.h" + +void ft_tree_set_data(t_tree_node *tree_node, void *element) +{ + ft_memcpy(&tree_node->data, element, tree_node->children.el_size - sizeof(t_tree_node)); + return ; +} diff --git a/inc/ft_struct.h b/inc/ft_struct.h index 21c8f38..23ff7a3 100644 --- a/inc/ft_struct.h +++ b/inc/ft_struct.h @@ -6,7 +6,7 @@ /* By: ljiriste +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/06/20 16:59:43 by ljiriste #+# #+# */ -/* Updated: 2025/07/31 12:15:01 by ljiriste ### ########.fr */ +/* Updated: 2025/07/31 13:25:53 by ljiriste ### ########.fr */ /* */ /* ************************************************************************** */ @@ -53,6 +53,7 @@ t_ft_stat ft_tree_init(t_tree *tree, size_t el_size); t_ft_stat ft_tree_append_child(t_tree_node *tree_node, void *element); t_tree_node *ft_tree_access_child(t_tree_node *tree_node, size_t i); void *ft_tree_access_data(t_tree_node *tree_node); +void ft_tree_set_data(t_tree_node *tree_node, void *element); t_ft_stat ft_tree_erase_subtree(t_tree_node *tree_node, size_t i, void (*free_el)(void *)); t_ft_stat ft_tree_replace_with_child(t_tree_node *tree_node, size_t i, void (*free_el)(void *)); t_ft_stat ft_tree_forget_child(t_tree_node *tree_node, size_t i);