fuck it
This commit is contained in:
parent
b9d8b949be
commit
37d815cb57
2 changed files with 27 additions and 8 deletions
|
|
@ -17,6 +17,7 @@ int add_cmd(t_btree **ast, t_list **lst)
|
||||||
t_token *token;
|
t_token *token;
|
||||||
t_astnode *node;
|
t_astnode *node;
|
||||||
t_cmd *cmd;
|
t_cmd *cmd;
|
||||||
|
t_redir *redir;
|
||||||
char **my_tab;
|
char **my_tab;
|
||||||
|
|
||||||
if ((token = (*lst)->content)->type == TK_IN || token->type == TK_PAREN_OPEN)
|
if ((token = (*lst)->content)->type == TK_IN || token->type == TK_PAREN_OPEN)
|
||||||
|
|
@ -54,16 +55,22 @@ int add_cmd(t_btree **ast, t_list **lst)
|
||||||
node->type = JOB;
|
node->type = JOB;
|
||||||
if (token->type == TK_WORD || token->type == TK_ASSIGNEMENT_WORD)
|
if (token->type == TK_WORD || token->type == TK_ASSIGNEMENT_WORD)
|
||||||
{
|
{
|
||||||
|
|
||||||
DG("add data");
|
DG("add data");
|
||||||
return ;
|
|
||||||
if (!node->data.cmds)
|
|
||||||
node->data.cmds = ft_lstnew(&cmd, sizeof(t_ld));
|
|
||||||
ft_lstlast(node->data.cmds)->content;
|
|
||||||
my_tab = ft_sstradd(my_tab, token->data);
|
my_tab = ft_sstradd(my_tab, token->data);
|
||||||
my_tab = ft_sstradd(my_tab, (char *)token->esc);
|
my_tab = ft_sstradd(my_tab, (char *)token->esc);
|
||||||
my_tab = ft_sstradd(my_tab, (char *)token->esc2);
|
my_tab = ft_sstradd(my_tab, (char *)token->esc2);
|
||||||
|
if (!node->data.cmds)
|
||||||
|
{
|
||||||
|
DG("new cmd");
|
||||||
|
cmd = ft_memalloc(sizeof(cmd));
|
||||||
|
ft_ld_new(&cmd->token, my_tab);
|
||||||
|
redir = ft_memalloc(sizeof(redir));
|
||||||
|
ft_lsteadd(&cmd->redir, ft_lstnew(redir, sizeof(redir)));
|
||||||
|
ft_lsteadd(&node->data.cmds, ft_lstnew(&cmd, sizeof(t_ld)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
cmd = ft_lstlast(node->data.cmds)->content;
|
||||||
|
DG("again");
|
||||||
ft_ld_pushback(&cmd->token, my_tab);
|
ft_ld_pushback(&cmd->token, my_tab);
|
||||||
}
|
}
|
||||||
return (0);
|
return (0);
|
||||||
|
|
|
||||||
|
|
@ -92,8 +92,20 @@ int add_redir_type(t_btree **ast, t_list **lst)
|
||||||
redir = ft_memalloc(sizeof(redir));
|
redir = ft_memalloc(sizeof(redir));
|
||||||
redir->type = token->type;
|
redir->type = token->type;
|
||||||
if (!node->data.cmds)
|
if (!node->data.cmds)
|
||||||
|
{
|
||||||
|
cmd = ft_memalloc(sizeof(cmd));
|
||||||
|
cmd->token = NULL;
|
||||||
|
cmd->redir = NULL;
|
||||||
node->data.cmds = ft_lstnew(&cmd, sizeof(cmd));
|
node->data.cmds = ft_lstnew(&cmd, sizeof(cmd));
|
||||||
cmd = (node->data.cmds)->content;
|
}
|
||||||
ft_lsteadd(&cmd->redir, ft_lstnew(redir, sizeof(redir)));
|
cmd = ft_lstlast(node->data.cmds)->content;
|
||||||
|
DG("still");
|
||||||
|
if (!cmd->redir)
|
||||||
|
cmd->redir = ft_lstnew(redir, sizeof(redir));
|
||||||
|
else
|
||||||
|
{
|
||||||
|
DG("flag");
|
||||||
|
ft_lsteadd(&cmd->redir, ft_lstnew(redir, sizeof(redir)));
|
||||||
|
}
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue