diff options
Diffstat (limited to 'libft/libft.h')
-rw-r--r-- | libft/libft.h | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/libft/libft.h b/libft/libft.h new file mode 100644 index 0000000..3ce9b07 --- /dev/null +++ b/libft/libft.h @@ -0,0 +1,99 @@ +/* ************************************************************************** */ +/* LE - / */ +/* / */ +/* libft.h .:: .:/ . .:: */ +/* +:+:+ +: +: +:+:+ */ +/* By: rbousset <marvin@le-101.fr> +:+ +: +: +:+ */ +/* #+# #+ #+ #+# */ +/* Created: 2019/10/07 18:15:13 by rbousset #+# ## ## #+# */ +/* Updated: 2019/10/13 14:17:02 by rbousset ### #+. /#+ ###.fr */ +/* / */ +/* / */ +/* ************************************************************************** */ + +# ifndef LIBFT_H +# define LIBFT_H + +#include <stddef.h> +#include <inttypes.h> + +/* +** Part 1 +*/ + +void *ft_memset(void *b, int c, size_t len); +void ft_bzero(void *s, size_t n); +void *ft_memcpy(void *dst, const void *src, size_t n); +void *ft_memccpy(void *dst, const void *src, + int c, size_t n); +void *ft_memmove(void *dst, const void *src, size_t len); +void *ft_memchr(const void *s, int c, size_t n); +int ft_memcmp(const void *s1, const void *s2, size_t n); +size_t ft_strlen(const char *s); +int ft_isalpha(int c); +int ft_isdigit(int c); +int ft_isalnum(int c); +int ft_isascii(int c); +int ft_isprint(int c); +int ft_toupper(int c); +int ft_tolower(int c); +char *ft_strchr(const char *s, int c); +char *ft_strrchr(const char *s, int c); +int ft_strncmp(const char *s1, const char *s2, size_t n); +size_t ft_strlcpy(char *dst, const char *src, size_t size); +size_t ft_strlcat(char *dst, const char *src, size_t size); +char *ft_strnstr(const char *haystack, const char *needle, + size_t len); +int ft_atoi(const char *str); +void *ft_calloc(size_t count, size_t size); +char *ft_strdup(const char *s1); + +/* +** Part 2 +*/ + +char *ft_substr(const char *s, unsigned int start, + size_t len); +char *ft_strjoin(const char *s1, const char *s2); +char *ft_strtrim(const char *s1, const char *set); +char **ft_split(const char *s, char c); +char *ft_itoa(int n); +char *ft_strmapi(const char *s, + char (*f)(unsigned int, char)); +void ft_putchar_fd(char c, int fd); +void ft_putstr_fd(char *s, int fd); +void ft_putendl_fd(char *s, int fd); +void ft_putnbr_fd(int n, int fd); + +/* +** Bonus +*/ + +typedef struct s_list +{ + void *content; + struct s_list *next; +} t_list; + +# define BUFFER_SIZE 30 + +t_list *ft_lstnew(void *content); +void ft_lstadd_front(t_list **alst, t_list *new); +int ft_lstsize(t_list *lst); +t_list *ft_lstlast(t_list *lst); +void ft_lstadd_back(t_list **alst, t_list *new); +void ft_lstdelone(t_list *lst, void (*del)(void *)); +void ft_lstclear(t_list **lst, void (*del)(void *)); +void ft_lstiter(t_list *lst, void (*f)(void *)); +t_list *ft_lstmap(t_list *lst, void *(*f)(void *), + void (*del)(void *)); +int ft_putchar(int c); +int ft_putstr(const char *s); +int ft_putendl(const char *s); +int ft_putnbr(int nb); +char *ft_strcat(char *s1, const char *s2); +uint8_t ft_isspace(int c); +int ft_strcmp(const char *s1, const char *s2); +double ft_sqrt(double x); + +# endif |