From f4a8ff23a590dad1b43a2e92df5c5c6b8951976a Mon Sep 17 00:00:00 2001 From: Charles Date: Wed, 17 Jun 2020 23:01:07 +0200 Subject: Added parse_expr draft --- src/lexer/lexer_utils.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/lexer') diff --git a/src/lexer/lexer_utils.c b/src/lexer/lexer_utils.c index 616c0d3..3ee41ff 100644 --- a/src/lexer/lexer_utils.c +++ b/src/lexer/lexer_utils.c @@ -1,5 +1,6 @@ #include "lexer.h" +// check for append tag enum e_token_tag ret_token_sep_redir_append(char *input, int i) { if (input[i + 1] == '>') @@ -8,13 +9,14 @@ enum e_token_tag ret_token_sep_redir_append(char *input, int i) } +// return token tag corresponding to string id enum e_token_tag ret_token(char *input, int i) { if (input[i] == ';') - return(TAG_AND); - if (input[i] == '&') return(TAG_END); - if (input[i] == '|' && input[i + 1] == '|') + if (input[i] == '&') + return(TAG_AND); + if (input[i] == '|' && input[i + 1] == '|') return(TAG_OR); if(input[i] == '|') return(TAG_PIPE); @@ -30,6 +32,8 @@ enum e_token_tag ret_token(char *input, int i) } +// check is char is separator +// ft_strchr(";&|><()", input) int lexer_sep(char input) { char *sep; @@ -46,6 +50,7 @@ int lexer_sep(char input) return (0); } +// skip spaces int lexe_space(char *input) { int i; -- cgit From 4d5e2f861331989f8de16e3b0458e45b34bd0b6f Mon Sep 17 00:00:00 2001 From: nass1pro Date: Thu, 18 Jun 2020 13:19:21 +0200 Subject: Change parse --- src/lexer/lexer.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/lexer') diff --git a/src/lexer/lexer.c b/src/lexer/lexer.c index 2b1bdce..9b43616 100644 --- a/src/lexer/lexer.c +++ b/src/lexer/lexer.c @@ -9,9 +9,9 @@ int len_is_not_sep(char *input) { if (lexer_sep(input[i])) { - if (input[i + 1] == ' ') - while(input[++i] == ' ') - ; + //if (input[i + 1] == ' ') + // while(input[++i] == ' ') + // ; return(i); } if (input[i] == '\'' || input[i] == '"') -- cgit