diff --git a/libft/src/btree/btree_map.c b/libft/src/btree/btree_map.c new file mode 100644 index 00000000..bdf27e07 --- /dev/null +++ b/libft/src/btree/btree_map.c @@ -0,0 +1,14 @@ +#include "btree.h" + +t_btree *btree_map(t_btree *root, void *(*f)(void *item)) +{ + t_btree *new; + + if (!root) + return (NULL); + new = btree_create_node(root->item, root->content_size); + new->item = (*f)(root->item); + new->left = btree_map(root->left, f); + new->right = btree_map(root->right, f); + return (new); +}