diff --git a/42sh/blind.text b/42sh/blind.text deleted file mode 100644 index c5e49f1b..00000000 --- a/42sh/blind.text +++ /dev/null @@ -1,19 +0,0 @@ -do en condition, aller a la fin -verifier les delimiters -impleter erreur syntax : EOF, unexpected do, unexpected done, pareil if - -pipe_sequence - -';;' sep -'; ;' sep-newline_list-sep -' ; ' newline-sep -'ls | cat ; ls | cat' line break and_or separator and_or - -';;' sep-sep -';&' sep-sep -'&&' and_or "no_command" -'||' and_or "no_command" - - -while compound_list do compound_list done - linebreak term diff --git a/42sh/grammar/copie b/42sh/grammar/copie deleted file mode 100644 index e22142e4..00000000 --- a/42sh/grammar/copie +++ /dev/null @@ -1,87 +0,0 @@ -#SEPARATOR - -separator - separator : 0 -separator - sequential_sep : 0 -separator - separator_op : 0 -separator - linebreak : 0 -separator - newline_list : 0 -separator - here_end : 0 -separator - io_here : 0 -separator - filename : 0 -separator - io_file : 0 -separator - io_redirect : 0 -separator - redirect_list : 0 -separator - cmd_suffix : 0 -separator - cmd_prefix : 0 -separator - cmd_word : 0 -separator - cmd_name : 0 -separator - simple_commound : 0 -separator - do_group : 0 -separator - brace_group : 0 -separator - fname : 0 -separator - function_body : 0 -separator - function_definition : 0 -separator - until_clause : 0 -separator - while_clause : 0 -separator - else_part : 0 -separator - if_clause : 0 -separator - pattern : 0 -separator - case_item : 0 -separator - case_item_ns : 0 -separator - case_list : 0 -separator - case_list_ns : 0 -separator - case_clause : 0 -separator - wordlist : 0 -separator - in : 0 -separator - name : 0 -separator - term : 0 -separator - compound_list : 0 -separator - subshell : 0 -separator - compound_command : 0 -separator - command : 0 -separator - pipe_sequence : 0 -separator - pipeline : 0 -separator - and_or : 0 -separator - list : 0 -separator - complete_command : 0 -separator - complete_commands : 0 -separator - program : 0 -separator - In : 0 -#separator - Lbrace : 0 -#separator - Rbrace : 0 -#separator - Bang : 0 -separator - case : 0 -separator - esac : 0 -separator - while : 0 -separator - until : 0 -separator - for : 0 -separator - if : 0 -separator - then : 0 -separator - else : 0 -separator - elif : 0 -separator - fi : 0 -separator - do : 0 -separator - done : 0 -separator - CLOBBER : 0 -separator - DLESS : 0 -separator - DGREAT : 0 -separator - LESSAND : 0 -separator - GREATAND : 0 -separator - LESSGREAT : 0 -separator - DLESSDAH : 0 -separator - AND_IF : 0 -separator - OR_IF : 0 -separator - DSEMI : 0 -separator - WORD : 0 -separator - ASSIGNEMENT_WORD : 0 -separator - NAME : 0 -separator - NEWLINE : 0 -separator - IO_NUMER : 0 -separator - SEMI : 0 -separator - AMP : 0 -separator - EMPTY : 0 -separator - GREAT : 0 -separator - LESS : 0 -separator - PAREN_OPEN : 0 -separator - PIPE : 0 -separator - PAREN_CLOSE : 0 diff --git a/42sh/grammar/here_end b/42sh/grammar/here_end deleted file mode 100644 index 0a969177..00000000 --- a/42sh/grammar/here_end +++ /dev/null @@ -1,87 +0,0 @@ -#HERE_END - -here_end - here_end : 0 -here_end - sequential_sep : 0 -here_end - separator_op : 0 -here_end - linebreak : 0 -here_end - newline_list : 0 -here_end - separator : 0 -here_end - io_here : 0 -here_end - filename : 0 -here_end - io_file : 0 -here_end - io_redirect : 0 -here_end - redirect_list : 0 -here_end - cmd_suffix : 0 -here_end - cmd_prefix : 0 -here_end - cmd_word : 0 -here_end - cmd_name : 0 -here_end - simple_commound : 0 -here_end - do_group : 0 -here_end - brace_group : 0 -here_end - fname : 0 -here_end - function_body : 0 -here_end - function_definition : 0 -here_end - until_clause : 0 -here_end - while_clause : 0 -here_end - else_part : 0 -here_end - if_clause : 0 -here_end - pattern : 0 -here_end - case_item : 0 -here_end - case_item_ns : 0 -here_end - case_list : 0 -here_end - case_list_ns : 0 -here_end - case_clause : 0 -here_end - wordlist : 0 -here_end - in : 0 -here_end - name : 0 -here_end - term : 0 -here_end - compound_list : 0 -here_end - subshell : 0 -here_end - compound_command : 0 -here_end - command : 0 -here_end - pipe_sequence : 0 -here_end - pipeline : 0 -here_end - and_or : 0 -here_end - list : 0 -here_end - complete_command : 0 -here_end - complete_commands : 0 -here_end - program : 0 -here_end - In : 0 -#here_end - Lbrace : 0 -#here_end - Rbrace : 0 -#here_end - Bang : 0 -here_end - case : 0 -here_end - esac : 0 -here_end - while : 0 -here_end - until : 0 -here_end - for : 0 -here_end - if : 0 -here_end - then : 0 -here_end - else : 0 -here_end - elif : 0 -here_end - fi : 0 -here_end - do : 0 -here_end - done : 0 -here_end - CLOBBER : 0 - here_end - DLESS : VALID - AGGREGATION k = 1, new = io_here -here_end - DGREAT : 0 -here_end - LESSAND : 0 -here_end - GREATAND : 0 -here_end - LESSGREAT : 0 - here_end - DLESSDAH : VALID - AGGREGATION k = 1, new = io_here -here_end - AND_IF : 0 -here_end - OR_IF : 0 -here_end - DSEMI : 0 -here_end - WORD : 0 -here_end - ASSIGNEMENT_WORD : 0 -here_end - NAME : 0 -here_end - NEWLINE : 0 -here_end - IO_NUMER : 0 -here_end - SEMI : 0 -here_end - AMP : 0 -here_end - EMPTY : 0 -here_end - GREAT : 0 -here_end - LESS : 0 -here_end - PAREN_OPEN : 0 -here_end - PIPE : 0 -here_end - PAREN_CLOSE : 0 diff --git a/42sh/grammar/io_here b/42sh/grammar/io_here deleted file mode 100644 index 654ba9e7..00000000 --- a/42sh/grammar/io_here +++ /dev/null @@ -1,87 +0,0 @@ -#IO_HERE - -io_here - io_here : 0 -io_here - sequential_sep : 0 -io_here - separator_op : 0 - io_here - linebreak : VALID - AGGREGATION k = 1, new = program -io_here - newline_list : 0 -io_here - here_end : 0 -io_here - separator : 0 -io_here - filename : 0 -io_here - io_file : 0 -io_here - io_redirect : 0 - io_here - redirect_list : VALID - NOTHING - io_here - cmd_suffix : VALID - NOTHING - io_here - cmd_prefix : VALID - NOTHING - io_here - cmd_word : VALID - AGGREGATION k = 0, new = cmd_suffix - io_here - cmd_name : VALID - AGGREGATION k = 0, new = cmd_suffix -io_here - simple_command : 0 -io_here - do_group : 0 -io_here - brace_group : 0 -io_here - fname : 0 -io_here - function_body : 0 -io_here - function_definition : 0 -io_here - until_clause : 0 -io_here - while_clause : 0 -io_here - else_part : 0 -io_here - if_clause : 0 -io_here - pattern : 0 -io_here - case_item : 0 -io_here - case_item_ns : 0 -io_here - case_list : 0 -io_here - case_list_ns : 0 -io_here - case_clause : 0 -io_here - wordlist : 0 -io_here - in : 0 -io_here - name : 0 -io_here - term : 0 -io_here - compound_list : 0 -io_here - subshell : 0 -io_here - compound_command : 0 -io_here - command : 0 -io_here - pipe_sequence : 0 -io_here - pipeline : 0 -io_here - and_or : 0 -io_here - list : 0 -io_here - complete_command : 0 -io_here - complete_commands : 0 -io_here - program : 0 -io_here - In : 0 -#io_here - Lbrace : 0 -#io_here - Rbrace : 0 -#io_here - Bang : 0 -io_here - case : 0 -io_here - esac : 0 -io_here - while : 0 -io_here - until : 0 -io_here - for : 0 -io_here - if : 0 -io_here - then : 0 -io_here - else : 0 -io_here - elif : 0 -io_here - fi : 0 -io_here - do : 0 -io_here - done : 0 -io_here - CLOBBER : 0 -io_here - DLESS : 0 -io_here - DGREAT : 0 -io_here - LESSAND : 0 -io_here - GREATAND : 0 -io_here - LESSGREAT : 0 -io_here - DLESSDAH : 0 -io_here - AND_IF : 0 -io_here - OR_IF : 0 -io_here - DSEMI : 0 -io_here - WORD : 0 -io_here - ASSIGNEMENT_WORD : 0 -io_here - NAME : 0 -io_here - NEWLINE : 0 - io_here - IO_NUMBER : VALID - AGREGATION k = 1, new = io_redirect -io_here - SEMI : 0 -io_here - AMP : 0 -io_here - EMPTY : 0 -io_here - GREAT : 0 -io_here - LESS : 0 -io_here - PAREN_OPEN : 0 -io_here - PIPE : 0 -io_here - PAREN_CLOSE : 0 diff --git a/42sh/grammar/linebreak b/42sh/grammar/linebreak deleted file mode 100644 index 4e8becad..00000000 --- a/42sh/grammar/linebreak +++ /dev/null @@ -1,87 +0,0 @@ -#LINEBREAK# - - linebreak - linebreak : NOTHING -linebreak - sequential_sep : 0 - linebreak - separator_op : AGGREGATION, k = 1, new = separator -linebreak - separator : 0 -linebreak - newline_list : 0 -linebreak - here_end : 0 -linebreak - io_here : 0 -linebreak - filename : 0 -linebreak - io_file : 0 -linebreak - io_redirect : 0 -linebreak - redirect_list : 0 -linebreak - cmd_suffix : 0 -linebreak - cmd_prefix : 0 -linebreak - cmd_word : 0 -linebreak - cmd_name : 0 -linebreak - simple_commound : 0 -linebreak - do_group : 0 -linebreak - brace_group : 0 -linebreak - fname : 0 -linebreak - function_body : 0 -linebreak - function_definition : 0 -linebreak - until_clause : 0 -linebreak - while_clause : 0 -linebreak - else_part : 0 -linebreak - if_clause : 0 -linebreak - pattern : 0 -linebreak - case_item : 0 -linebreak - case_item_ns : 0 -linebreak - case_list : 0 -linebreak - case_list_ns : 0 -linebreak - case_clause : 0 -linebreak - wordlist : 0 - linebreak - in : VALID - linebreak - name : VALID -linebreak - term : 0 - linebreak - compound_list : VALID -linebreak - subshell : 0 -linebreak - compound_command : 0 -linebreak - command : 0 -linebreak - pipe_sequence : 0 -linebreak - pipeline : 0 -linebreak - and_or : 0 -linebreak - list : 0 -linebreak - complete_command : 0 - linebreak - complete_commands : VALID -linebreak - program : 0 -linebreak - In : 0 -#linebreak - Lbrace : 0 -#linebreak - Rbrace : 0 -#linebreak - Bang : 0 -linebreak - case : 0 -linebreak - esac : 0 -linebreak - while : 0 -linebreak - until : 0 -linebreak - for : 0 -linebreak - if : 0 -linebreak - then : 0 -linebreak - else : 0 -linebreak - elif : 0 -linebreak - fi : 0 -linebreak - do : 0 -linebreak - done : 0 -linebreak - CLOBBER : 0 -linebreak - DLESS : 0 -linebreak - DGREAT : 0 -linebreak - LESSAND : 0 -linebreak - GREATAND : 0 -linebreak - LESSGREAT : 0 -linebreak - DLESSDAH : 0 -i linebreak - AND_IF : VALID - linebreak - OR_IF : VALID -linebreak - DSEMI : 0 - linebreak - WORD : VALID -linebreak - ASSIGNEMENT_WORD : 0 -linebreak - NAME : 0 -linebreak - NEWLINE : 0 -linebreak - IO_NUMER : 0 - linebreak - SEMI : AGGREGATION, k = 1 new = sequential_sep -linebreak - AMP : 0 - linebreak - EMPTY : VALID -linebreak - GREAT : 0 -linebreak - LESS : 0 -linebreak - PAREN_OPEN : 0 -linebreak - PIPE : 0 - linebreak - PAREN_CLOSE : VALID diff --git a/42sh/grammar/newline_list b/42sh/grammar/newline_list deleted file mode 100644 index 94dc6b8e..00000000 --- a/42sh/grammar/newline_list +++ /dev/null @@ -1,87 +0,0 @@ -#NEWLINE_LIST - - newline_list - newline_list : VALID - NOTHING -newline_list - sequential_sep : 0 -newline_list - separator_op : 0 - newline_list - separator : VALID - NOTHNG !!! - newline_list - linebreak : VALID - NOTHING -newline_list - here_end : 0 -newline_list - io_here : 0 -newline_list - filename : 0 -newline_list - io_file : 0 -newline_list - io_redirect : 0 -newline_list - redirect_list : 0 -newline_list - cmd_suffix : 0 -newline_list - cmd_prefix : 0 -newline_list - cmd_word : 0 -newline_list - cmd_name : 0 -newline_list - simple_commound : 0 -newline_list - do_group : 0 -newline_list - brace_group : 0 -newline_list - fname : 0 -newline_list - function_body : 0 -newline_list - function_definition : 0 -newline_list - until_clause : 0 -newline_list - while_clause : 0 -newline_list - else_part : 0 -newline_list - if_clause : 0 -newline_list - pattern : 0 -newline_list - case_item : 0 -newline_list - case_item_ns : 0 -newline_list - case_list : 0 -newline_list - case_list_ns : 0 -newline_list - case_clause : 0 -newline_list - wordlist : 0 -newline_list - in : 0 -newline_list - name : 0 - newline_list - term : AGGREGATION k - 0, new = separator -newline_list - compound_list : 0 -newline_list - subshell : 0 -newline_list - compound_command : 0 -newline_list - command : 0 -newline_list - pipe_sequence : 0 -newline_list - pipeline : 0 -newline_list - and_or : 0 -newline_list - list : 0 -newline_list - complete_command : 0 -newline_list - complete_commands : 0 -newline_list - program : 0 -newline_list - In : 0 -#newline_list - Lbrace : 0 -#newline_list - Rbrace : 0 -#newline_list - Bang : 0 -newline_list - case : 0 -newline_list - esac : 0 -newline_list - while : 0 -newline_list - until : 0 -newline_list - for : 0 -newline_list - if : 0 -newline_list - then : 0 -newline_list - else : 0 -newline_list - elif : 0 -newline_list - fi : 0 -newline_list - do : 0 -newline_list - done : 0 -newline_list - CLOBBER : 0 -newline_list - DLESS : 0 -newline_list - DGREAT : 0 -newline_list - LESSAND : 0 -newline_list - GREATAND : 0 -newline_list - LESSGREAT : 0 -newline_list - DLESSDAH : 0 -newline_list - AND_IF : 0 -newline_list - OR_IF : 0 -newline_list - DSEMI : 0 -newline_list - WORD : 0 -newline_list - ASSIGNEMENT_WORD : 0 -newline_list - NAME : 0 -newline_list - NEWLINE : 0 -newline_list - IO_NUMER : 0 -newline_list - SEMI : 0 -newline_list - AMP : 0 - newline_list - EMPTY : AGGREGATION k = 1, new = linebreak; -newline_list - GREAT : 0 -newline_list - LESS : 0 -newline_list - PAREN_OPEN : 0 -newline_list - PIPE : 0 -newline_list - PAREN_CLOSE : 0 diff --git a/42sh/grammar/rules b/42sh/grammar/rules deleted file mode 100644 index 22b5afae..00000000 --- a/42sh/grammar/rules +++ /dev/null @@ -1,67 +0,0 @@ -sequential_sep - wordlist : VALID -sequential_sep - in : VALID -sequential_sep - name : VALID - -separator - term : VALID -separator - compound_list : VALID - NOTHING !!!!! - -separator_op - complete_commands : VALID - NOTHING !!!! - -linebreak - linebreak : VALID - NOTHING -linebreak - separator_op : VALID - ASSIGNATION, k = 1, new = separator -linebreak - in : VALID -linebreak - name : VALID -linebreak - compound_list : VALID -linebreak - complete_commands : VALID -linebreak - AND_IF : VALID -linebreak - OR_IF : VALID -linebreak - WORD : VALID -linebreak - SEMI : VALID - AGGREGATION k = 1, new = sequential_sep -linebreak - PAREN_CLOSE : VALID - -newline_list - newline_list : VALID - NOTHING -newline_list - separator : VALID - NOTHING !!! -newline_list - linebreak : VALID - NOTHING -newline_list - term : VALID - AGGREGATION k = 0, new = separator - -here_end - DLESS : VALID - AGGREGATION k = 1, new = io_here -here_end - DLESSDAH : VALID - AGGREGATION k = 1, new = io_here - -io_here - linebreak : VALID - AGGREGATION k = 1, new = program -io_here - redirect_list : VALID - NOTHING -io_here - cmd_suffix : VALID - NOTHING -io_here - cmd_prefix : VALID - NOTHING -io_here - cmd_word : VALID - AGGREGATION k = 0, new = cmd_suffix -io_here - cmd_name : VALID - AGGREGATION k = 0, new = cd_suffix -io_here - IO_NUMBER : VALID - AGGREGATION k = 1, new = io_redirect -io_here - compound_command : VALID - AGGREGATION k = 0, new = io_redirect - -filename - LESS : VALID - AGGREGATION k = 1, new = io_file -filename - LESSAND : VALID - AGGREGATION k = 1, new = io_file -filename - GREAT : VALID - AGGREGATION k = 1, new = io_file -filename - GREATAND : VALID - AGGREGATION k = 1, new = io_file -filename - DGREAT : VALID - AGGREGATION k = 1, new = io_file -filename - LESSGREAT : VALID - AGGREGATION k = 1, new = io_file -filename - CLOBBER : VALID - AGGREGATION k = 1, new = io_file - -io_file - redirect_list : VALID - NOTHING -io_file - cmd_suffix : VALID - NOTHING -io_file - cmd_prefix : VALID - NOTHING -io_file - cmd_name : VALID - NOTHING -io_file - cmd_word : VALID - NOTHING -io_file - linebreak : VALID - AGGREGATION k = 1, new = program -io_file - IO_NUMBER : VALID - AGGREGATION k = 1, new = io_redirect -io_file - compound_command : VALID - AGGREGATION k = 0, new = io_redirect - -io_redirect - redirect_list : VALID - NOTHING -io_redirect - compound_command : VALID - AGGREGATION k = 0, new = redirect_list -io_redirect - cmd_suffix : VALID - NOTHING -io_redirect - cmd_prefix : VALID - NOTHING -io_redirect - cmd_word : VALID - NOTHING -io_redirect - cmd_name : VALID - NOTHING - - - -// si transparence continuer remontee, -// si dernier membre aurait pu aussi constitue membre actuel, ne rien fiare, ainsi que transparence -//push un dernier caracter linebreak diff --git a/42sh/grammar/separator b/42sh/grammar/separator deleted file mode 100644 index b5d7c30a..00000000 --- a/42sh/grammar/separator +++ /dev/null @@ -1,87 +0,0 @@ -#SEPARATOR - -separator - separator : 0 -separator - sequential_sep : 0 -separator - separator_op : 0 -separator - linebreak : 0 -separator - newline_list : 0 -separator - here_end : 0 -separator - io_here : 0 -separator - filename : 0 -separator - io_file : 0 -separator - io_redirect : 0 -separator - redirect_list : 0 -separator - cmd_suffix : 0 -separator - cmd_prefix : 0 -separator - cmd_word : 0 -separator - cmd_name : 0 -separator - simple_commound : 0 -separator - do_group : 0 -separator - brace_group : 0 -separator - fname : 0 -separator - function_body : 0 -separator - function_definition : 0 -separator - until_clause : 0 -separator - while_clause : 0 -separator - else_part : 0 -separator - if_clause : 0 -separator - pattern : 0 -separator - case_item : 0 -separator - case_item_ns : 0 -separator - case_list : 0 -separator - case_list_ns : 0 -separator - case_clause : 0 -separator - wordlist : 0 -separator - in : 0 -separator - name : 0 - separator - term : VALID - separator - compound_list : NOTHING !!!!!! -separator - subshell : 0 -separator - compound_command : 0 -separator - command : 0 -separator - pipe_sequence : 0 -separator - pipeline : 0 -separator - and_or : 0 -separator - list : 0 -separator - complete_command : 0 -separator - complete_commands : 0 -separator - program : 0 -separator - In : 0 -#separator - Lbrace : 0 -#separator - Rbrace : 0 -#separator - Bang : 0 -separator - case : 0 -separator - esac : 0 -separator - while : 0 -separator - until : 0 -separator - for : 0 -separator - if : 0 -separator - then : 0 -separator - else : 0 -separator - elif : 0 -separator - fi : 0 -separator - do : 0 -separator - done : 0 -separator - CLOBBER : 0 -separator - DLESS : 0 -separator - DGREAT : 0 -separator - LESSAND : 0 -separator - GREATAND : 0 -separator - LESSGREAT : 0 -separator - DLESSDAH : 0 -separator - AND_IF : 0 -separator - OR_IF : 0 -separator - DSEMI : 0 -separator - WORD : 0 -separator - ASSIGNEMENT_WORD : 0 -separator - NAME : 0 -separator - NEWLINE : 0 -separator - IO_NUMER : 0 -separator - SEMI : 0 -separator - AMP : 0 -separator - EMPTY : 0 -separator - GREAT : 0 -separator - LESS : 0 -separator - PAREN_OPEN : 0 -separator - PIPE : 0 -separator - PAREN_CLOSE : 0 diff --git a/42sh/grammar/separator_op b/42sh/grammar/separator_op deleted file mode 100644 index 398998b4..00000000 --- a/42sh/grammar/separator_op +++ /dev/null @@ -1,87 +0,0 @@ -#SEPARATOR_OP - -separator_op - separator_op : 0 -separator_op - sequential_sep : 0 -separator_op - separator_op_op : 0 -separator_op - linebreak : 0 -separator_op - newline_list : 0 -separator_op - here_end : 0 -separator_op - io_here : 0 -separator_op - filename : 0 -separator_op - io_file : 0 -separator_op - io_redirect : 0 -separator_op - redirect_list : 0 -separator_op - cmd_suffix : 0 -separator_op - cmd_prefix : 0 -separator_op - cmd_word : 0 -separator_op - cmd_name : 0 -separator_op - simple_commound : 0 -separator_op - do_group : 0 -separator_op - brace_group : 0 -separator_op - fname : 0 -separator_op - function_body : 0 -separator_op - function_definition : 0 -separator_op - until_clause : 0 -separator_op - while_clause : 0 -separator_op - else_part : 0 -separator_op - if_clause : 0 -separator_op - pattern : 0 -separator_op - case_item : 0 -separator_op - case_item_ns : 0 -separator_op - case_list : 0 -separator_op - case_list_ns : 0 -separator_op - case_clause : 0 -separator_op - wordlist : 0 -separator_op - in : 0 -separator_op - name : 0 -separator_op - term : 0 -separator_op - compound_list : 0 -separator_op - subshell : 0 -separator_op - compound_command : 0 -separator_op - command : 0 -separator_op - pipe_sequence : 0 -separator_op - pipeline : 0 -separator_op - and_or : 0 - separator_op - list : 0 !!!!! -separator_op - complete_command : 0 -separator_op - complete_commands : 0 -separator_op - program : 0 -separator_op - In : 0 - #separator_op - Lbrace : 0 - #separator_op - Rbrace : 0 - #separator_op - Bang : 0 -separator_op - case : 0 -separator_op - esac : 0 -separator_op - while : 0 -separator_op - until : 0 -separator_op - for : 0 -separator_op - if : 0 -separator_op - then : 0 -separator_op - else : 0 -separator_op - elif : 0 -separator_op - fi : 0 -separator_op - do : 0 -separator_op - done : 0 -separator_op - CLOBBER : 0 -separator_op - DLESS : 0 -separator_op - DGREAT : 0 -separator_op - LESSAND : 0 -separator_op - GREATAND : 0 -separator_op - LESSGREAT : 0 -separator_op - DLESSDAH : 0 -separator_op - AND_IF : 0 -separator_op - OR_IF : 0 -separator_op - DSEMI : 0 -separator_op - WORD : 0 -separator_op - ASSIGNEMENT_WORD : 0 -separator_op - NAME : 0 -separator_op - NEWLINE : 0 -separator_op - IO_NUMER : 0 -separator_op - SEMI : 0 -separator_op - AMP : 0 -separator_op - EMPTY : 0 -separator_op - GREAT : 0 -separator_op - LESS : 0 -separator_op - PAREN_OPEN : 0 -separator_op - PIPE : 0 -separator_op - PAREN_CLOSE : 0 diff --git a/42sh/grammar/sequential_sep b/42sh/grammar/sequential_sep deleted file mode 100644 index 7b3ac7cc..00000000 --- a/42sh/grammar/sequential_sep +++ /dev/null @@ -1,87 +0,0 @@ -#SEQUENTIAL_SEP - -sequential_sep - sequential_sep : 0 -sequential_sep - separator : 0 -sequential_sep - separator_op : 0 -sequential_sep - linebreak : 0 -sequential_sep - newline_list : 0 -sequential_sep - here_end : 0 -sequential_sep - io_here : 0 -sequential_sep - filename : 0 -sequential_sep - io_file : 0 -sequential_sep - io_redirect : 0 -sequential_sep - redirect_list : 0 -sequential_sep - cmd_suffix : 0 -sequential_sep - cmd_prefix : 0 -sequential_sep - cmd_word : 0 -sequential_sep - cmd_name : 0 -sequential_sep - simple_commound : 0 -sequential_sep - do_group : 0 -sequential_sep - brace_group : 0 -sequential_sep - fname : 0 -sequential_sep - function_body : 0 -sequential_sep - function_definition : 0 -sequential_sep - until_clause : 0 -sequential_sep - while_clause : 0 -sequential_sep - else_part : 0 -sequential_sep - if_clause : 0 -sequential_sep - pattern : 0 -sequential_sep - case_item : 0 -sequential_sep - case_item_ns : 0 -sequential_sep - case_list : 0 -sequential_sep - case_list_ns : 0 -sequential_sep - case_clause : 0 - sequential_sep - wordlist : VALID - sequential_sep - in : VALID - sequential_sep - name : VALID -sequential_sep - term : 0 -sequential_sep - compound_list : 0 -sequential_sep - subshell : 0 -sequential_sep - compound_command : 0 -sequential_sep - command : 0 -sequential_sep - pipe_sequence : 0 -sequential_sep - pipeline : 0 -sequential_sep - and_or : 0 -sequential_sep - list : 0 -sequential_sep - complete_command : 0 -sequential_sep - complete_commands : 0 -sequential_sep - program : 0 -sequential_sep - In : 0 -#sequential_sep - Lbrace : 0 -#sequential_sep - Rbrace : 0 -#sequential_sep - Bang : 0 -sequential_sep - case : 0 -sequential_sep - esac : 0 -sequential_sep - while : 0 -sequential_sep - until : 0 -sequential_sep - for : 0 -sequential_sep - if : 0 -sequential_sep - then : 0 -sequential_sep - else : 0 -sequential_sep - elif : 0 -sequential_sep - fi : 0 -sequential_sep - do : 0 -sequential_sep - done : 0 -sequential_sep - CLOBBER : 0 -sequential_sep - DLESS : 0 -sequential_sep - DGREAT : 0 -sequential_sep - LESSAND : 0 -sequential_sep - GREATAND : 0 -sequential_sep - LESSGREAT : 0 -sequential_sep - DLESSDAH : 0 -sequential_sep - AND_IF : 0 -sequential_sep - OR_IF : 0 -sequential_sep - DSEMI : 0 -sequential_sep - WORD : 0 -sequential_sep - ASSIGNEMENT_WORD : 0 -sequential_sep - NAME : 0 -sequential_sep - NEWLINE : 0 -sequential_sep - IO_NUMER : 0 -sequential_sep - SEMI : 0 -sequential_sep - AMP : 0 -sequential_sep - EMPTY : 0 -sequential_sep - GREAT : 0 -sequential_sep - LESS : 0 -sequential_sep - PAREN_OPEN : 0 -sequential_sep - PIPE : 0 -sequential_sep - PAREN_CLOSE : 0 diff --git a/42sh/sample/20lines.sh b/42sh/sample/20lines.sh deleted file mode 100644 index 0e08c1ea..00000000 --- a/42sh/sample/20lines.sh +++ /dev/null @@ -1,20 +0,0 @@ -ls -pwd -mkdir -cd -ls -pwd -mkdir -cd -ls -pwd -mkdir -cd -ls -pwd -mkdir -cd -ls -pwd -mkdir -cd diff --git a/42sh/sample/2lines.sh b/42sh/sample/2lines.sh deleted file mode 100644 index 22372171..00000000 --- a/42sh/sample/2lines.sh +++ /dev/null @@ -1,3 +0,0 @@ -ls ; pwd > file1 -ls | cat -echo hello world diff --git a/42sh/sample/4lines.sh b/42sh/sample/4lines.sh deleted file mode 100644 index d6610634..00000000 --- a/42sh/sample/4lines.sh +++ /dev/null @@ -1,2 +0,0 @@ -ls | cat -pwd | cat > file1 diff --git a/42sh/sample/mix/mix.sh b/42sh/sample/mix/mix.sh new file mode 100644 index 00000000..d9e02158 --- /dev/null +++ b/42sh/sample/mix/mix.sh @@ -0,0 +1,11 @@ +if ls +then + ls | cat + while ls + do + until ls + do + pwd + done + done +fi diff --git a/42sh/sample/test.sh b/42sh/sample/test.sh deleted file mode 100644 index ad942dcb..00000000 --- a/42sh/sample/test.sh +++ /dev/null @@ -1,6 +0,0 @@ -test=10 -while [ $test -gt 1 ] -do - echo hello - ((test--)) -done > file1 > file2 diff --git a/42sh/sample/test2.sh b/42sh/sample/test2.sh deleted file mode 100644 index ecbddfc1..00000000 --- a/42sh/sample/test2.sh +++ /dev/null @@ -1 +0,0 @@ -ewf wefwe wf diff --git a/42sh/sample/yale0.ex b/42sh/sample/yale/yale0.ex similarity index 100% rename from 42sh/sample/yale0.ex rename to 42sh/sample/yale/yale0.ex diff --git a/42sh/sample/yale1.ex b/42sh/sample/yale/yale1.ex similarity index 100% rename from 42sh/sample/yale1.ex rename to 42sh/sample/yale/yale1.ex diff --git a/42sh/sample/yale2.ex b/42sh/sample/yale/yale2.ex similarity index 100% rename from 42sh/sample/yale2.ex rename to 42sh/sample/yale/yale2.ex diff --git a/42sh/sample/yale3.ex b/42sh/sample/yale/yale3.ex similarity index 100% rename from 42sh/sample/yale3.ex rename to 42sh/sample/yale/yale3.ex diff --git a/42sh/sample/yale5.ex b/42sh/sample/yale/yale5.ex similarity index 100% rename from 42sh/sample/yale5.ex rename to 42sh/sample/yale/yale5.ex diff --git a/42sh/script.sh b/42sh/script.sh deleted file mode 100755 index a09fa173..00000000 --- a/42sh/script.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -echo "debut script" - -VALUE=3 -while [ $VALUE -gt 1 ] -do - sleep 1 - ((VALUE--)) - echo "a" -done > file1 | cat ; ls - -ls -l > file2 | cat - -echo "fin script" diff --git a/42sh/src/parser/add_loop.c b/42sh/src/parser/add_loop.c index fa52c993..22c7865b 100644 --- a/42sh/src/parser/add_loop.c +++ b/42sh/src/parser/add_loop.c @@ -6,7 +6,7 @@ /* By: ariard +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/02/17 22:17:14 by ariard #+# #+# */ -/* Updated: 2017/02/20 18:58:28 by ariard ### ########.fr */ +/* Updated: 2017/02/20 19:03:04 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/42sh/src/parser/build_tree.c b/42sh/src/parser/build_tree.c index e3792335..1718fdad 100644 --- a/42sh/src/parser/build_tree.c +++ b/42sh/src/parser/build_tree.c @@ -6,7 +6,7 @@ /* By: ariard +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/02/15 18:32:59 by ariard #+# #+# */ -/* Updated: 2017/02/20 18:53:00 by ariard ### ########.fr */ +/* Updated: 2017/02/20 19:03:03 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/42sh/src/parser/eval_sym.c b/42sh/src/parser/eval_sym.c index ac6775d4..53ee98e6 100644 --- a/42sh/src/parser/eval_sym.c +++ b/42sh/src/parser/eval_sym.c @@ -6,7 +6,7 @@ /* By: ariard +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/02/09 16:26:30 by ariard #+# #+# */ -/* Updated: 2017/02/20 18:50:14 by ariard ### ########.fr */ +/* Updated: 2017/02/20 19:26:28 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ @@ -218,6 +218,7 @@ t_stackmatch g_stackmatch[] = {TK_WHILE, TK_IF}, {TK_WHILE, TK_ELIF}, {TK_WHILE, TK_THEN}, + {TK_WHILE, COMPLETE_CONDITION}, {TK_UNTIL, LINEBREAK}, {TK_UNTIL, TK_BANG}, {TK_UNTIL, SEPARATOR_OP}, @@ -229,6 +230,7 @@ t_stackmatch g_stackmatch[] = {TK_UNTIL, TK_IF}, {TK_UNTIL, TK_ELIF}, {TK_UNTIL, TK_THEN}, + {TK_UNTIL, COMPLETE_CONDITION}, {TK_FOR, LINEBREAK}, {TK_FOR, TK_BANG}, {TK_FOR, SEPARATOR_OP}, diff --git a/42sh/src/parser/ft_parse.c b/42sh/src/parser/ft_parse.c index cdd99360..60ed5f26 100644 --- a/42sh/src/parser/ft_parse.c +++ b/42sh/src/parser/ft_parse.c @@ -6,7 +6,7 @@ /* By: ariard +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/02/09 14:30:22 by ariard #+# #+# */ -/* Updated: 2017/02/20 18:57:14 by ariard ### ########.fr */ +/* Updated: 2017/02/20 19:03:07 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/42sh/tofix b/42sh/tofix deleted file mode 100644 index f031f6a3..00000000 --- a/42sh/tofix +++ /dev/null @@ -1,13 +0,0 @@ -valeur all, all_separator, paren_case, -integrer decoupe temporaire -soigner les regles avec les separateurs -ajouter linebreak sur token needed - -pour jack, jerter les separateurs a la formation -rajouter les noms de tous les tokens pour la sortie d erreur - -->passer a une stack infinie -->construire if, while, else if -->tester les combinaisons deja existantes -->integrer erreurs -->erreur speciale : EOF