Add the ft_tree_set_data function
authorLukáš Jiřiště <gymnazium.jiriste@gmail.com>
Thu, 31 Jul 2025 11:28:51 +0000 (13:28 +0200)
committerLukáš Jiřiště <gymnazium.jiriste@gmail.com>
Thu, 31 Jul 2025 11:28:51 +0000 (13:28 +0200)
Makefile
ft_struct/ft_tree_set_data.c [new file with mode: 0644]
inc/ft_struct.h

index 95d82d85404a803f917804892e41591ac3b2ff40..e2964d529f92b57d5fb6013d477b49777da7d964 100644 (file)
--- 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 (file)
index 0000000..f71992f
--- /dev/null
@@ -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 ;
+}
index 21c8f38efde5ee28ee94e648faad5d0e8759eddc..23ff7a325efcfb6f46f874db9286a6aebaabcf92 100644 (file)
@@ -6,7 +6,7 @@
 /*   By: ljiriste <marvin@42.fr>                    +#+  +:+       +#+        */
 /*                                                +#+#+#+#+#+   +#+           */
 /*   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);