/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_lstmap.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: mdenys +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/11/04 21:25:01 by mdenys #+# #+# */ /* Updated: 2020/11/05 16:46:12 by mdenys ### ########.fr */ /* */ /* ************************************************************************** */ #include "libft.h" t_list *ft_lstmap(t_list *lst, void *(*f)(void *), void (*del)(void *)) { t_list *nlst; t_list *new; if (!lst) return (NULL); nlst = NULL; while (lst) { new = ft_lstnew(f(lst->content)); if (!new) { ft_lstclear(&nlst, del); return (NULL); } ft_lstadd_back(&nlst, new); lst = lst->next; } return (nlst); }