30 if (*input ==
'&' || *input ==
'|')
34 if (*input ==
'|' && *(input + 1) ==
'\0')
36 tail = readline(
"> ");
64 if ((!(single_quotes % 2) && !(double_quotes % 2))
65 && (*str ==
'>' || *str ==
'<'))
78 int single_quote_open;
79 int double_quote_open;
81 single_quote_open = 0;
82 double_quote_open = 0;
85 if (*str ==
'\'' && !double_quote_open)
87 single_quote_open = !single_quote_open;
89 else if (*str ==
'"' && !single_quote_open)
90 double_quote_open = !double_quote_open;
93 return (single_quote_open || double_quote_open);
101 ft_printf(
"Input error: invalid redirection.\n");
103 ft_printf(
"Input error: invalid operator.\n");
int ft_printf(const char *format,...)
char * ft_strcat_const(const char *dest, const char *src)
int valid_operator(const char **str)