-
Notifications
You must be signed in to change notification settings - Fork 0
/
cmd.h
29 lines (25 loc) · 1.03 KB
/
cmd.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include "string.h"
#include <stdio.h>
#include <stdlib.h>
enum{ STDIN = 0, STDOUT = 1, STDERR = 2 };
enum{ RAPPEND = 3 };
typedef struct
{
char *initial_cmd; // Chaine initiale tapee par l'utilisateur
char **membres_cmd; // Chaine initiale decoupee en membres ([i] = membre i)
unsigned int nb_membres; // Nombre de membres
char ***cmd_args; // cmd_args[i][j] contient le jieme arguement du ieme membre
unsigned int *nb_args_membres; // Nombre d'argements par membre
char ***redir; // Stocke les chemins vers les fichiers de redirection
int **type_redir; // Stocke le sens des redirections
int attendreRetour; // booleen indiquant sur il faut reprendre la main de suite
} Cmd;
void aff_args( Cmd* c ); // ToDo
void free_args( Cmd* c ); // ToDo
void parse_args( Cmd* c );
void parse_membres(const char* chaine, Cmd* ma_cmd );
void aff_membres( Cmd* ma_cmd ); // ToDo
void free_membres( Cmd* ma_cmd ); // ToDo
int parse_redir( unsigned int i, Cmd* cmd );
void free_redir( Cmd* c );
void aff_redir( Cmd *c, unsigned int i ); // ToDo