1 #ifndef __THEME_PARSE_H__
2 #define __THEME_PARSE_H__
7 #define YY_DECL int obthemelex(YYSTYPE *yylval, struct parser_control *pc)
10 #define YYLEX_PARAM pc
12 #define MAX_INCLUDE_DEPTH 32
13 #define LINE pc->currline[pc->include_stack_ptr]
15 extern int themedebug;
28 GHashTable *materials;
53 struct parser_control {
54 struct yy_buffer_state *include_stack[MAX_INCLUDE_DEPTH];
55 int currline[MAX_INCLUDE_DEPTH];
56 char currfile[MAX_INCLUDE_DEPTH][501];
57 int include_stack_ptr;
59 struct obthemedata *target;
62 void obthemeerror(struct parser_control *pc, char *s);
63 int obtheme_parse(struct obthemedata *td, const char *filename);
64 struct parser_control *parser_init(struct obthemedata *td);
65 int obthemeparse(struct parser_control *);
66 void parser_finish(struct parser_control *);
68 #endif /* __THEME_PARSE_H__ */