libft
Loading...
Searching...
No Matches
vec_from.c
Go to the documentation of this file.
1/* ************************************************************************** */
2/* */
3/* ::: :::::::: */
4/* vec_from.c :+: :+: :+: */
5/* +:+ +:+ +:+ */
6/* By: tspoof <tspoof@student.hive.fi> +#+ +:+ +#+ */
7/* +#+#+#+#+#+ +#+ */
8/* Created: 2022/12/12 22:48:37 by tspoof #+# #+# */
9/* Updated: 2022/12/15 21:48:30 by tspoof ### ########.fr */
10/* */
11/* ************************************************************************** */
12
13#include "vec.h"
14
15int vec_from(t_vec *dst, void *src, size_t len, size_t elem_size)
16{
17 if (!dst || !src || !len || !elem_size)
18 return (-1);
19 if (vec_new(dst, len, elem_size) < 0)
20 return (-1);
21 ft_memcpy(dst->memory, src, dst->alloc_size);
22 dst->len = len;
23 return (1);
24}
void * ft_memcpy(void *dst, const void *src, size_t n)
Copies memory to destination.
Definition ft_memcpy.c:15
Definition vec.h:20
size_t alloc_size
Definition vec.h:23
size_t len
Definition vec.h:24
unsigned char * memory
Definition vec.h:21
int vec_new(t_vec *dst, size_t init_len, size_t elem_size)
Creates a new vector.
Definition vec_new.c:16
int vec_from(t_vec *dst, void *src, size_t len, size_t elem_size)
Creates a new vector from src.
Definition vec_from.c:15