aboutsummaryrefslogtreecommitdiff
path: root/src/vec/ft_veciter_ret.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vec/ft_veciter_ret.c')
-rw-r--r--src/vec/ft_veciter_ret.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/vec/ft_veciter_ret.c b/src/vec/ft_veciter_ret.c
new file mode 100644
index 0000000..ddeedcf
--- /dev/null
+++ b/src/vec/ft_veciter_ret.c
@@ -0,0 +1,33 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* ft_veciter_ret.c :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2020/05/12 18:33:34 by charles #+# #+# */
+/* Updated: 2020/05/12 18:35:48 by charles ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#include "libft_vec.h"
+
+/*
+** \brief Iterate a function over elements of a vector,
+** pointer can be changed
+** \param vec Iterated vector
+** \param f Function applied to each elements,
+** returned value is the new pointer value
+*/
+
+void ft_veciter_ret(t_ftvec *vec, void *(*f)(void *elem))
+{
+ size_t i;
+
+ i = 0;
+ while (i < vec->size)
+ {
+ vec->data[i] = f(vec->data[i]);
+ i++;
+ }
+}