feat: parse input, get list
This commit is contained in:
parent
b252b01268
commit
f8a4e1e091
@ -200,6 +200,7 @@ t_lexer *ft_lexer_new(const char *input);
|
|||||||
void ft_lexer_free(t_lexer *lexer);
|
void ft_lexer_free(t_lexer *lexer);
|
||||||
void ft_lexer_readchar(t_lexer *lexer);
|
void ft_lexer_readchar(t_lexer *lexer);
|
||||||
char *ft_lexer_readword(t_lexer *lexer);
|
char *ft_lexer_readword(t_lexer *lexer);
|
||||||
|
t_list *ft_parse_input(t_lexer *lexer);
|
||||||
/**
|
/**
|
||||||
* Token
|
* Token
|
||||||
*/
|
*/
|
||||||
|
|||||||
12
src/prompt.c
12
src/prompt.c
@ -84,7 +84,6 @@ int main(int argc, char **argv, char **envp)
|
|||||||
// char **env;
|
// char **env;
|
||||||
// t_enviroment *enviroment = NULL;
|
// t_enviroment *enviroment = NULL;
|
||||||
t_lexer *lexer;
|
t_lexer *lexer;
|
||||||
t_token *token;
|
|
||||||
t_list *list;
|
t_list *list;
|
||||||
|
|
||||||
// while (*envp != NULL)
|
// while (*envp != NULL)
|
||||||
@ -95,17 +94,10 @@ int main(int argc, char **argv, char **envp)
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
lexer = ft_lexer_new(argv[1]);
|
lexer = ft_lexer_new(argv[1]);
|
||||||
list = NULL;
|
list = ft_parse_input(lexer);
|
||||||
while (TRUE)
|
|
||||||
{
|
|
||||||
token = ft_token_next(lexer);
|
|
||||||
if (token->type == T_EOF)
|
|
||||||
break;
|
|
||||||
ft_lstadd_back(&list, ft_lstnew(token));
|
|
||||||
}
|
|
||||||
ft_lstiter(list, print_list);
|
ft_lstiter(list, print_list);
|
||||||
|
|
||||||
ft_lstclear(&list, ft_clear_tokenlist);
|
ft_lstclear(&list, ft_clear_tokenlist);
|
||||||
ft_token_free(token);
|
|
||||||
ft_lexer_free(lexer);
|
ft_lexer_free(lexer);
|
||||||
// print_enviroment(enviroment);
|
// print_enviroment(enviroment);
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@ -6,12 +6,29 @@
|
|||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/02/04 16:07:58 by qmennen #+# #+# */
|
/* Created: 2025/02/04 16:07:58 by qmennen #+# #+# */
|
||||||
/* Updated: 2025/02/04 20:28:00 by qmennen ### ########.fr */
|
/* Updated: 2025/02/04 20:45:45 by qmennen ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
#include "minishell.h"
|
#include "minishell.h"
|
||||||
|
|
||||||
|
t_list *ft_parse_input(t_lexer *lexer)
|
||||||
|
{
|
||||||
|
t_list *list;
|
||||||
|
t_token *token;
|
||||||
|
|
||||||
|
list = NULL;
|
||||||
|
while (TRUE)
|
||||||
|
{
|
||||||
|
token = ft_token_next(lexer);
|
||||||
|
if (token->type == T_EOF || token->type == T_ERROR)
|
||||||
|
break;
|
||||||
|
ft_lstadd_back(&list, ft_lstnew(token));
|
||||||
|
}
|
||||||
|
ft_token_free(token);
|
||||||
|
return (list);
|
||||||
|
}
|
||||||
|
|
||||||
t_token *ft_token_next(t_lexer *lexer)
|
t_token *ft_token_next(t_lexer *lexer)
|
||||||
{
|
{
|
||||||
t_token *token;
|
t_token *token;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user