int builtin_echo(t_list *list, char **cmd) { t_echo *echo; char *printable; int i; (void)list; if ((echo = init_echo()) == NULL) return (FAILURE); i = 0; while (cmd[++i]) { if (echo->check_flags == 1 && strlen(cmd[i]) >= 1 && cmd[i][0] == '-') check_options(echo, cmd[i]) ? (echo->i = i) : (echo->i = i); else { echo->check_flags = 0; if ((printable = preparsing_echo(echo, cmd)) != NULL) { echo_print(echo, printable); xfree(printable); } break; } } echo->flag_n == 0 ? write(1, "\n", 1) : 0; return (SUCCESS); }
int ft_echo(char **args) { int i; i = 1; while (args[i] != NULL) { echo_print(args[i]); if (args[i + 1] != NULL) write(1, " ", 1); i++; } write(1, "\n", 1); return (1); }
void handle_text(FILE *yyout, char *txt) { echo_print(yyout, txt); }