mirror of
https://codeberg.org/la-chouette/minishell.git
synced 2025-12-06 07:28:09 +01:00
42 lines
1.6 KiB
C
42 lines
1.6 KiB
C
/* ************************************************************************** */
|
|
/* */
|
|
/* ::: :::::::: */
|
|
/* connec_reorient_subtree.c :+: :+: :+: */
|
|
/* +:+ +:+ +:+ */
|
|
/* By: kcolin <kcolin@42.fr> +#+ +:+ +#+ */
|
|
/* +#+#+#+#+#+ +#+ */
|
|
/* Created: 2025/04/15 11:37:35 by kcolin #+# #+# */
|
|
/* Updated: 2025/04/15 11:39:41 by kcolin ### ########.fr */
|
|
/* */
|
|
/* ************************************************************************** */
|
|
|
|
#include "connec_reorient_subtree.h"
|
|
#include "../cmd/cmd.h"
|
|
#include "../cmd/cmd_destroy.h"
|
|
#include "../../ft_errno.h"
|
|
|
|
t_cmd *connec_reorient_subtree(t_cmd **list, t_cmd **subtree,
|
|
t_cmd **opt, t_connector connec)
|
|
{
|
|
*list = cmd_create(FT_CONNECTION);
|
|
if (!*list)
|
|
{
|
|
cmd_destroy(*subtree);
|
|
cmd_destroy(*opt);
|
|
return (NULL);
|
|
}
|
|
(*list)->value.connection = ft_calloc(1, sizeof(t_connec_cmd));
|
|
if (!(*list)->value.connection)
|
|
{
|
|
ft_errno(FT_ENOMEM);
|
|
cmd_destroy(*subtree);
|
|
cmd_destroy(*opt);
|
|
return (free(*list), NULL);
|
|
}
|
|
(*list)->type = FT_CONNECTION;
|
|
(*list)->value.connection->connector = connec;
|
|
(*list)->value.connection->first = *subtree;
|
|
(*list)->value.connection->second = *opt;
|
|
*subtree = *list;
|
|
return (*subtree);
|
|
}
|