3 /* gs/parse.h -- automatic parsing of data structures */
5 /* Authors: Arnaud Legrand, Martin Quinson */
8 GRAS_DATADESC_PARSE_TOKEN_EMPTY = 0,
9 GRAS_DATADESC_PARSE_TOKEN_LP = 512,
10 GRAS_DATADESC_PARSE_TOKEN_RP,
11 GRAS_DATADESC_PARSE_TOKEN_WORD,
12 GRAS_DATADESC_PARSE_TOKEN_SPACE,
13 GRAS_DATADESC_PARSE_TOKEN_QUOTE,
14 GRAS_DATADESC_PARSE_TOKEN_COMMENT,
15 GRAS_DATADESC_PARSE_TOKEN_NEWLINE,
16 GRAS_DATADESC_PARSE_TOKEN_STAR,
17 GRAS_DATADESC_PARSE_TOKEN_SEMI_COLON,
18 GRAS_DATADESC_PARSE_TOKEN_COLON,
19 GRAS_DATADESC_PARSE_TOKEN_ERROR
20 } gras_datadesc_parse_token_t;
22 #define GRAS_DATADESC_PARSE_MAX_STR_CONST 4048
24 extern int gras_datadesc_parse_line_pos;
25 extern int gras_datadesc_parse_char_pos;
26 extern int gras_datadesc_parse_tok_num;
28 void gras_datadesc_parse_dump(void);
29 int gras_datadesc_parse_lex(void);
30 int gras_datadesc_parse_lex_n_dump(void);
31 void gras_datadesc_parse_pointer_init(const char *file);
32 void gras_datadesc_parse_pointer_close(void);
33 void gras_datadesc_parse_pointer_string_init(const char *string_to_parse);
34 void gras_datadesc_parse_pointer_string_close(void);