feat: toujours les mêmes qui font les pipes. Plus de assert dans ASTs (pour des raisons évidentes de stabilité du code) et nouveaux types (AST_PIPE et AST_NEG), + modifs random dans le parser

This commit is contained in:
Gu://em_ 2026-01-27 00:30:19 +01:00
parent 07e7d83c60
commit 96626d9850
27 changed files with 238 additions and 86 deletions

18
src/utils/ast/ast_pipe.h Normal file
View file

@ -0,0 +1,18 @@
#ifndef AST_PIPE_H
#define AST_PIPE_H
#include "ast_base.h"
struct ast_pipe
{
struct ast* left;
struct ast* right;
// Output of left will be redirected to right stdin
};
bool ast_is_pipe(struct ast *node);
struct ast_pipe *ast_get_pipe(struct ast *node);
struct ast *ast_create_pipe(struct ast* left, struct ast* right);
void ast_free_pipe(struct ast_pipe* node);
#endif /* ! AST_PIPE_H */