From 4d0e4feacf52064aac57ab0a8476c03f5b89c131 Mon Sep 17 00:00:00 2001 From: Jack Halford Date: Sat, 18 Feb 2017 13:21:38 +0100 Subject: [PATCH] made new header files cleanup --- libft/Makefile | 22 ++-- libft/includes/ft_printf.h | 9 +- libft/includes/{ft_xattr.h => ft_sys.h} | 23 ++-- libft/includes/libft.h | 106 ++---------------- libft/includes/math.h | 37 ++++++ libft/includes/mytime.h | 2 +- .../{src/misc/ft_debug.c => includes/sstr.h} | 26 +++-- libft/includes/str.h | 70 ++++++++++++ libft/src/ft_printf/ft_printf.c | 2 +- libft/src/ft_printf/ft_printf_parse.c | 47 ++++---- libft/src/ft_printf/lib_pad.c | 2 +- libft/src/{env => sys}/ft_getenv.c | 0 libft/src/{xattr => sys}/ft_xattr_count.c | 0 libft/src/{xattr => sys}/ft_xattr_print.c | 0 libft/src/time/ft_mytime_free.c | 2 +- 15 files changed, 191 insertions(+), 157 deletions(-) rename libft/includes/{ft_xattr.h => ft_sys.h} (59%) create mode 100644 libft/includes/math.h rename libft/{src/misc/ft_debug.c => includes/sstr.h} (50%) create mode 100644 libft/includes/str.h rename libft/src/{env => sys}/ft_getenv.c (100%) rename libft/src/{xattr => sys}/ft_xattr_count.c (100%) rename libft/src/{xattr => sys}/ft_xattr_print.c (100%) diff --git a/libft/Makefile b/libft/Makefile index b0276568..34840305 100644 --- a/libft/Makefile +++ b/libft/Makefile @@ -6,7 +6,7 @@ # By: jhalford +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2017/02/07 16:09:36 by jhalford #+# #+# # -# Updated: 2017/02/17 17:31:38 by jhalford ### ########.fr # +# Updated: 2017/02/18 13:05:19 by jhalford ### ########.fr # # # # **************************************************************************** # @@ -16,8 +16,11 @@ CC = gcc AR = ar -rc MKDIR = mkdir -p RM = /bin/rm -rf -FLAGS = -Wall -Wextra -Werror -D_FLAGS = -g + +W_FLAGS = -Wall -Wextra -Werror +D_FLAGS = +V_FLAGS = +FLAGS = $(W_FLAGS) $(D_FLAGS) $(V_FLAGS) DELTA = $$(echo "$$(tput cols)-47"|bc) @@ -56,7 +59,6 @@ dlst/ft_dlstlast.c\ dlst/ft_dlstnew.c\ dlst/ft_dlstrtostr.c\ dlst/ft_dlstsize.c\ -env/ft_getenv.c\ ft_printf/ft_conversion.c\ ft_printf/ft_fmt_simplify.c\ ft_printf/ft_fmt_validate_conv.c\ @@ -122,7 +124,6 @@ mem/ft_memdel.c\ mem/ft_memmove.c\ mem/ft_memset.c\ mem/ft_realloc.c\ -misc/ft_debug.c\ path/ft_path_notdir.c\ printing/ft_putaddr.c\ printing/ft_putchar.c\ @@ -181,11 +182,12 @@ str/ft_strsub.c\ str/ft_strtok.c\ str/ft_strtrim.c\ sys/dup2_close.c\ +sys/ft_getenv.c\ +sys/ft_xattr_count.c\ +sys/ft_xattr_print.c\ time/ft_mytime_free.c\ time/ft_mytime_get.c\ -time/ft_time_isrecent.c\ -xattr/ft_xattr_count.c\ -xattr/ft_xattr_print.c +time/ft_time_isrecent.c SRCS = $(addprefix $(SRC_DIR), $(SRC_BASE)) OBJS = $(addprefix $(OBJ_DIR), $(SRC_BASE:.c=.o)) @@ -198,6 +200,7 @@ all: $(NAME): $(OBJ_DIR) $(OBJS) @$(AR) $(NAME) $(OBJS) @ranlib $(NAME) + @strip -x $(NAME) @printf "\r\e[48;5;15;38;5;25m✅ MAKE $(NAME)\e[0m\e[K\n" $(OBJ_DIR)%.o: $(SRC_DIR)%.c | $(OBJ_DIR) @@ -206,8 +209,7 @@ $(OBJ_DIR)%.o: $(SRC_DIR)%.c | $(OBJ_DIR) @$(eval COLOR=$(shell echo $$(($(PERCENT)%35+196)))) @$(eval TO_DO=$(shell echo $$((20-$(INDEX)*20/$(NB))))) @printf "\r\e[38;5;11m⌛ MAKE %10.10s : %2d%% \e[48;5;%dm%*s\e[0m%*s\e[48;5;255m \e[0m \e[38;5;11m %*s\e[0m\e[K" $(NAME) $(PERCENT) $(COLOR) $(DONE) "" $(TO_DO) "" $(DELTA) "$@" - @$(MKDIR) $(OBJ_DIR) - @$(CC) $(FLAGS) $(D_FLAGS) -MMD -c $< -o $@\ + @$(CC) $(FLAGS) -MMD -c $< -o $@\ -I $(INC_DIR) @$(eval INDEX=$(shell echo $$(($(INDEX)+1)))) diff --git a/libft/includes/ft_printf.h b/libft/includes/ft_printf.h index 6db739f4..13a7ca51 100644 --- a/libft/includes/ft_printf.h +++ b/libft/includes/ft_printf.h @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/07 13:22:54 by jhalford #+# #+# */ -/* Updated: 2016/12/15 15:29:22 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:21:03 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,6 +14,7 @@ # define FT_PRINTF_H # include "libft.h" # include + # define ALL_FLAGS "#0- +" # define ALL_CONVERSIONS "sSpdDioOuUxXcCb" @@ -50,12 +51,7 @@ extern t_conv g_convs[]; t_fmt *ft_fmt_init(void); void ft_fmt_print(t_fmt *fmt); void ft_printf_color(int fd, char **final, char **str); - t_fmt *ft_printf_parse(char **format, va_list ap); -void ft_printf_parse_flags(t_fmt *fmt, char **format); -void ft_printf_parse_width(t_fmt *fmt, char **format, va_list ap); -void ft_printf_parse_precision(t_fmt *fmt, char **format, va_list ap); -void ft_printf_parse_modifiers(t_fmt *fmt, char **format); char *ft_transform(t_fmt *fmt, va_list ap); @@ -78,4 +74,5 @@ void ft_pad_sharp_o(char *str, t_fmt *fmt); void ft_pad_sharp_xb(char *str, t_fmt *fmt); void ft_pad_left(char *str, t_fmt *fmt); void ft_pad_right(char *str, t_fmt *fmt); + #endif diff --git a/libft/includes/ft_xattr.h b/libft/includes/ft_sys.h similarity index 59% rename from libft/includes/ft_xattr.h rename to libft/includes/ft_sys.h index 9afadc18..5f057611 100644 --- a/libft/includes/ft_xattr.h +++ b/libft/includes/ft_sys.h @@ -1,21 +1,30 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* ftxattr.h :+: :+: :+: */ +/* ft_sys.h :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: jhalford +#+ +:+ +#+ */ +/* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2016/11/07 13:24:05 by jhalford #+# #+# */ -/* Updated: 2016/11/07 13:24:05 by jhalford ### ########.fr */ +/* Created: 2017/02/18 13:09:02 by jhalford #+# #+# */ +/* Updated: 2017/02/18 13:19:06 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ -#ifndef FT_XATTR_H -# define FT_XATTR_H -# define FT_XATTR_SIZE 10000 +#ifndef FT_SYS_H +# define FT_SYS_H + +# define FT_XATTR_SIZE 10000 +# define STDIN STDIN_FILENO +# define STDOUT STDOUT_FILENO +# define STDERR STDERR_FILENO +# define STDBUG 3 + # include # include int ft_xattr_print(char *path); int ft_xattr_count(char *path); +char *ft_getenv(char **env, char *key); +int dup2_close(int fd1, int fd2); + #endif diff --git a/libft/includes/libft.h b/libft/includes/libft.h index 60eaf250..2ea48e6c 100644 --- a/libft/includes/libft.h +++ b/libft/includes/libft.h @@ -6,18 +6,13 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/07 13:49:04 by jhalford #+# #+# */ -/* Updated: 2017/02/10 00:27:21 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:21:14 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ #ifndef LIBFT_H # define LIBFT_H -# define STDIN STDIN_FILENO -# define STDOUT STDOUT_FILENO -# define STDERR STDERR_FILENO -# define STDBUG 3 - # define DG_MSG0 "{inv}{yel}%21s {bol}{blu}%-3d{eoc}" # define DG_MSG1 ft_path_notdir(__FILE__), __LINE__ # define DG(f, ...) ft_dprintf(STDBUG, DG_MSG0 f "{eoc}\n", DG_MSG1, ##__VA_ARGS__) @@ -31,20 +26,15 @@ # include # include "lst.h" -# include "get_next_line.h" -# include "ft_xattr.h" -# include "mytime.h" # include "dlst.h" +# include "str.h" +# include "sstr.h" +# include "math.h" # include "btree.h" +# include "mytime.h" +# include "get_next_line.h" # include "color.h" - -# define FT_WS(x) (x == ' ' || x == '\t' || x == '\n') -# define FT_ABS(x) (((x) < 0) ? -(x) : (x)) -# define FT_NEG(x) ((x) < 0) -# define FT_POS(x) ((x) > 0) -# define FT_MIN(a, b) ((a) < (b) ? (a) : (b)) -# define FT_MAX(a, b) ((a) > (b) ? (a) : (b)) -# define FT_DIST(a, b) FT_ABS((a) - (b)) +# include "ft_sys.h" typedef struct s_stof t_stof; typedef struct s_stos t_stos; @@ -61,7 +51,8 @@ struct s_stof int (*f)(); }; -void ft_debug(void); +int ft_printf(const char *format, ...); +int ft_dprintf(int fd, const char *format, ...); void *ft_memset(void *b, int c, size_t len); void ft_bzero(void *s, size_t n); @@ -70,44 +61,9 @@ 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); -char *ft_strdup(const char *s1); -char *ft_strcpy(char *dst, const char *src); -char *ft_strncpy(char *dst, const char *src, size_t len); -char *ft_strcat(char *s1, const char *s2); -char *ft_strncat(char *s1, const char *s2, size_t n); -size_t ft_strlcat(char *dst, const char *src, size_t size); -char *ft_strchr(const char *s, int c); -char *ft_strrchr(const char *s, int c); -char *ft_strstr(const char *big, const char *little); -char *ft_strnstr(const char *big, const char *little, size_t len); -int ft_strcmp(const char *s1, const char *s2); -int ft_strncmp(const char *s1, const char *s2, size_t n); -int ft_atoi(const char *str); -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); - void *ft_memalloc(size_t size); void ft_memdel(void **ap); -char *ft_strnew(size_t size); -void ft_strdel(char **as); -void ft_strclr(char *s); -void ft_striter(char *s, void (*f)(char *)); -void ft_striteri(char *s, void (*f)(unsigned int, char *)); -char *ft_strmap(char const *s, char (*f)(char)); -char *ft_strmapi(char const *s, char (*f)(unsigned int, char)); -int ft_strequ(char const *s1, char const *s2); -int ft_strnequ(char const *s1, char const *s2, size_t n); -char *ft_strsub(char const *s, unsigned int start, size_t len); -char *ft_strjoin(char const *s1, char const *s2); -char *ft_strtrim(char const *s); -char **ft_strsplit(char const *s, char c); -char *ft_itoa(int n); + int ft_putchar(int c); void ft_putstr(char const *s); void ft_putendl(char const *s); @@ -118,48 +74,6 @@ void ft_putendl_fd(char const *s, int fd); void ft_putnbr_fd(int n, int fd); void ft_putaddr(void *a); -char *ft_strrev(char *str); -char **ft_strsplit(char const *s, char c); -char *ft_str3join(char const *s1, char const *s2, char const *s3); -char *ft_strcut(char *str, char *cut); -char **ft_split_whitespaces(char const *str); -char *ft_convert_base( - char *str, char *base_from, char *base_to, char *flags); -char *ft_strcatf(char *s1, const char *s2); -char *ft_strinsert(char *str, char c, int n); -int ft_strappend(char **dst, char *src); -char *ft_strbetween(char *start, char *end); -char *ft_strreplace(char **str, char *start, char *end, char *new); -char *ft_strtok(char *s, const char *delim); -size_t ft_strcspn(char *s, const char *delim); - -char *ft_itoa_base(int nbr, char *base, char *flags); -char *ft_lltoa_base(long long nbr, char *base, char *flags); -char *ft_ulltoa_base(unsigned long long nbr, char *base); -char *ft_uitoa_base(unsigned int nbr, char *base); -size_t ft_ilen(int n); -size_t ft_ilen_base(int n, int base); -size_t ft_uilen(unsigned int n); -size_t ft_lllen(long long n); -size_t ft_lllen_base(long long n, int base); -int ft_addrcmp(void *a, void *b); - -char **ft_sstradd(char **list, char *new); -void ft_sstrsort(char **list, int (*cmp)()); -void ft_sstrprint(char **list, char sep); -void ft_sstrprint_fd(int fd, char **list, char sep); -char **ft_sstrdup(char **list); -void ft_sstrdel(char **sstr, int index); -void ft_sstrfree(char **sstr); -char *ft_sstrcat(char **sstr, char sep); - -char *ft_path_notdir(char *path); - -int ft_printf(const char *format, ...); -int ft_dprintf(int fd, const char *format, ...); - void *ft_realloc(void *data, int size); -char *ft_getenv(char **env, char *key); -int dup2_close(int fd1, int fd2); #endif diff --git a/libft/includes/math.h b/libft/includes/math.h new file mode 100644 index 00000000..26c1dcd6 --- /dev/null +++ b/libft/includes/math.h @@ -0,0 +1,37 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* math.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: jhalford +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2017/02/18 13:19:12 by jhalford #+# #+# */ +/* Updated: 2017/02/18 13:19:57 by jhalford ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef MATH_H +# define MATH_H + +# define FT_WS(x) (x == ' ' || x == '\t' || x == '\n') +# define FT_ABS(x) (((x) < 0) ? -(x) : (x)) +# define FT_NEG(x) ((x) < 0) +# define FT_POS(x) ((x) > 0) +# define FT_MIN(a, b) ((a) < (b) ? (a) : (b)) +# define FT_MAX(a, b) ((a) > (b) ? (a) : (b)) +# define FT_DIST(a, b) FT_ABS((a) - (b)) + +char *ft_itoa(int n); +char *ft_itoa_base(int nbr, char *base, char *flags); +char *ft_lltoa_base(long long nbr, char *base, char *flags); +char *ft_ulltoa_base(unsigned long long nbr, char *base); +char *ft_uitoa_base(unsigned int nbr, char *base); +size_t ft_ilen(int n); +size_t ft_ilen_base(int n, int base); +size_t ft_uilen(unsigned int n); +size_t ft_lllen(long long n); +size_t ft_lllen_base(long long n, int base); + +int ft_addrcmp(void *a, void *b); + +#endif diff --git a/libft/includes/mytime.h b/libft/includes/mytime.h index 140e1100..61444457 100644 --- a/libft/includes/mytime.h +++ b/libft/includes/mytime.h @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/25 11:43:12 by jhalford #+# #+# */ -/* Updated: 2016/11/25 20:26:20 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:11:26 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/libft/src/misc/ft_debug.c b/libft/includes/sstr.h similarity index 50% rename from libft/src/misc/ft_debug.c rename to libft/includes/sstr.h index a7a25779..de3e27f0 100644 --- a/libft/src/misc/ft_debug.c +++ b/libft/includes/sstr.h @@ -1,21 +1,25 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* ft_debug.c :+: :+: :+: */ +/* sstr.h :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: jhalford +#+ +:+ +#+ */ +/* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2016/11/04 11:45:16 by jhalford #+# #+# */ -/* Updated: 2016/12/07 15:22:06 by jhalford ### ########.fr */ +/* Created: 2017/02/18 13:16:25 by jhalford #+# #+# */ +/* Updated: 2017/02/18 13:16:48 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ -#include "libft.h" +#ifndef SSTR_H +# define SSTR_H -void ft_debug(void) -{ - static int n = 0; +char **ft_sstradd(char **list, char *new); +void ft_sstrsort(char **list, int (*cmp)()); +void ft_sstrprint(char **list, char sep); +void ft_sstrprint_fd(int fd, char **list, char sep); +char **ft_sstrdup(char **list); +void ft_sstrdel(char **sstr, int index); +void ft_sstrfree(char **sstr); +char *ft_sstrcat(char **sstr, char sep); - n++; - ft_dprintf(2, "----------\n check %02i\n----------\n", n); -} +#endif diff --git a/libft/includes/str.h b/libft/includes/str.h new file mode 100644 index 00000000..e8faf617 --- /dev/null +++ b/libft/includes/str.h @@ -0,0 +1,70 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* str.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: jhalford +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2017/02/18 13:05:53 by jhalford #+# #+# */ +/* Updated: 2017/02/18 13:20:56 by jhalford ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef STR_H +# define STR_H + +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); + +size_t ft_strlen(const char *s); +char *ft_strdup(const char *s1); +char *ft_strcpy(char *dst, const char *src); +char *ft_strncpy(char *dst, const char *src, size_t len); +char *ft_strcat(char *s1, const char *s2); +char *ft_strncat(char *s1, const char *s2, size_t n); +size_t ft_strlcat(char *dst, const char *src, size_t size); +char *ft_strchr(const char *s, int c); +char *ft_strrchr(const char *s, int c); +char *ft_strstr(const char *big, const char *little); +char *ft_strnstr(const char *big, const char *little, size_t len); +int ft_strcmp(const char *s1, const char *s2); +int ft_strncmp(const char *s1, const char *s2, size_t n); +int ft_atoi(const char *str); + +char *ft_strnew(size_t size); +void ft_strdel(char **as); +void ft_strclr(char *s); +void ft_striter(char *s, void (*f)(char *)); +void ft_striteri(char *s, void (*f)(unsigned int, char *)); +char *ft_strmap(char const *s, char (*f)(char)); +char *ft_strmapi(char const *s, char (*f)(unsigned int, char)); +int ft_strequ(char const *s1, char const *s2); +int ft_strnequ(char const *s1, char const *s2, size_t n); +char *ft_strsub(char const *s, unsigned int start, size_t len); +char *ft_strjoin(char const *s1, char const *s2); +char *ft_strtrim(char const *s); +char **ft_strsplit(char const *s, char c); + +char *ft_strrev(char *str); +char **ft_strsplit(char const *s, char c); +char *ft_str3join(char const *s1, char const *s2, char const *s3); +char *ft_strcut(char *str, char *cut); +char **ft_split_whitespaces(char const *str); +char *ft_convert_base( + char *str, char *base_from, char *base_to, char *flags); +char *ft_strcatf(char *s1, const char *s2); +char *ft_strinsert(char *str, char c, int n); +int ft_strappend(char **dst, char *src); +char *ft_strbetween(char *start, char *end); +char *ft_strreplace(char **str, char *start, char *end, char *new); +char *ft_strtok(char *s, const char *delim); +size_t ft_strcspn(char *s, const char *delim); + +char *ft_path_notdir(char *path); + +#endif diff --git a/libft/src/ft_printf/ft_printf.c b/libft/src/ft_printf/ft_printf.c index 5713e276..8573b067 100644 --- a/libft/src/ft_printf/ft_printf.c +++ b/libft/src/ft_printf/ft_printf.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/07 13:33:27 by jhalford #+# #+# */ -/* Updated: 2017/01/22 16:38:58 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:05:26 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/libft/src/ft_printf/ft_printf_parse.c b/libft/src/ft_printf/ft_printf_parse.c index e2d91035..96108f0d 100644 --- a/libft/src/ft_printf/ft_printf_parse.c +++ b/libft/src/ft_printf/ft_printf_parse.c @@ -6,31 +6,13 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/07 13:33:24 by jhalford #+# #+# */ -/* Updated: 2016/12/15 15:30:49 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:08:53 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ #include "ft_printf.h" -t_fmt *ft_printf_parse(char **format, va_list ap) -{ - t_fmt *fmt; - - fmt = ft_fmt_init(); - ft_printf_parse_flags(fmt, format); - ft_printf_parse_width(fmt, format, ap); - ft_printf_parse_precision(fmt, format, ap); - ft_printf_parse_modifiers(fmt, format); - fmt->conversion = **format; - (*format)++; - ft_fmt_validate_mod(fmt); - ft_fmt_validate_flags(fmt); - ft_fmt_simplify(fmt); - fmt->valid = ft_fmt_validate_conv(fmt) ? 0 : 1; - return (fmt); -} - -void ft_printf_parse_flags(t_fmt *fmt, char **format) +static void ft_printf_parse_flags(t_fmt *fmt, char **format) { int i; char *str; @@ -51,7 +33,7 @@ void ft_printf_parse_flags(t_fmt *fmt, char **format) *format += i; } -void ft_printf_parse_width(t_fmt *fmt, char **format, va_list ap) +static void ft_printf_parse_width(t_fmt *fmt, char **format, va_list ap) { int i; char buf[10]; @@ -74,7 +56,7 @@ void ft_printf_parse_width(t_fmt *fmt, char **format, va_list ap) *format += i; } -void ft_printf_parse_precision(t_fmt *fmt, char **format, va_list ap) +static void ft_printf_parse_precision(t_fmt *fmt, char **format, va_list ap) { int i; char buf[10]; @@ -100,7 +82,7 @@ void ft_printf_parse_precision(t_fmt *fmt, char **format, va_list ap) *format += i; } -void ft_printf_parse_modifiers(t_fmt *fmt, char **format) +static void ft_printf_parse_modifiers(t_fmt *fmt, char **format) { char *str; @@ -121,3 +103,22 @@ void ft_printf_parse_modifiers(t_fmt *fmt, char **format) ft_strcpy(fmt->modifier, ""); *format += ft_strlen(fmt->modifier); } + +t_fmt *ft_printf_parse(char **format, va_list ap) +{ + t_fmt *fmt; + + fmt = ft_fmt_init(); + ft_printf_parse_flags(fmt, format); + ft_printf_parse_width(fmt, format, ap); + ft_printf_parse_precision(fmt, format, ap); + ft_printf_parse_modifiers(fmt, format); + fmt->conversion = **format; + (*format)++; + ft_fmt_validate_mod(fmt); + ft_fmt_validate_flags(fmt); + ft_fmt_simplify(fmt); + fmt->valid = ft_fmt_validate_conv(fmt) ? 0 : 1; + return (fmt); +} + diff --git a/libft/src/ft_printf/lib_pad.c b/libft/src/ft_printf/lib_pad.c index decdb9ac..57da1c1b 100644 --- a/libft/src/ft_printf/lib_pad.c +++ b/libft/src/ft_printf/lib_pad.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/07 13:33:45 by jhalford #+# #+# */ -/* Updated: 2016/12/09 19:14:58 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:14:30 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/libft/src/env/ft_getenv.c b/libft/src/sys/ft_getenv.c similarity index 100% rename from libft/src/env/ft_getenv.c rename to libft/src/sys/ft_getenv.c diff --git a/libft/src/xattr/ft_xattr_count.c b/libft/src/sys/ft_xattr_count.c similarity index 100% rename from libft/src/xattr/ft_xattr_count.c rename to libft/src/sys/ft_xattr_count.c diff --git a/libft/src/xattr/ft_xattr_print.c b/libft/src/sys/ft_xattr_print.c similarity index 100% rename from libft/src/xattr/ft_xattr_print.c rename to libft/src/sys/ft_xattr_print.c diff --git a/libft/src/time/ft_mytime_free.c b/libft/src/time/ft_mytime_free.c index 08c06dde..c8a89efc 100644 --- a/libft/src/time/ft_mytime_free.c +++ b/libft/src/time/ft_mytime_free.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/11/25 11:45:29 by jhalford #+# #+# */ -/* Updated: 2016/11/25 11:48:12 by jhalford ### ########.fr */ +/* Updated: 2017/02/18 13:11:33 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */