Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
7a33ad0d94c12aadd50125710ec6ddb3472d51a1
[simgrid.git] / src / gras / DataDesc / ddt_parse.yy.h
1 /* $Id$ */
2
3 /* gs/parse.h -- automatic parsing of data structures */
4
5 /* Authors: Arnaud Legrand, Martin Quinson            */
6
7 typedef enum {
8   GRAS_DDT_PARSE_TOKEN_EMPTY = 0,
9   GRAS_DDT_PARSE_TOKEN_LP = 512, /* { */
10   GRAS_DDT_PARSE_TOKEN_RP,       /* } */
11   GRAS_DDT_PARSE_TOKEN_LB,       /* [ */
12   GRAS_DDT_PARSE_TOKEN_RB,       /* ] */
13   GRAS_DDT_PARSE_TOKEN_WORD,
14   GRAS_DDT_PARSE_TOKEN_SPACE,
15   GRAS_DDT_PARSE_TOKEN_QUOTE,
16   GRAS_DDT_PARSE_TOKEN_COMMENT,
17   GRAS_DDT_PARSE_TOKEN_NEWLINE,
18   GRAS_DDT_PARSE_TOKEN_STAR,
19   GRAS_DDT_PARSE_TOKEN_SEMI_COLON,
20   GRAS_DDT_PARSE_TOKEN_COLON,
21   GRAS_DDT_PARSE_TOKEN_ERROR
22 } gras_ddt_parse_token_t;
23
24 #define GRAS_DDT_PARSE_MAX_STR_CONST 4048
25
26 extern int gras_ddt_parse_line_pos;
27 extern int gras_ddt_parse_col_pos;
28 extern int gras_ddt_parse_char_pos;
29 extern int gras_ddt_parse_tok_num;
30
31 void gras_ddt_parse_dump(void);
32 int gras_ddt_parse_lex(void);
33 int gras_ddt_parse_lex_n_dump(void);
34 void  gras_ddt_parse_pointer_init(const char *file);
35 void  gras_ddt_parse_pointer_close(void);
36 void  gras_ddt_parse_pointer_string_init(const char *string_to_parse);
37 void  gras_ddt_parse_pointer_string_close(void);