00001 /* 00002 * lib/lex/test-grammar.h 00003 * 00004 * This file provides the token enum and additinal token data (ala YYSTYPE) 00005 * for the test and demo scanner. 00006 * 00007 * Copyright (c) 2004 by Wolfgang Wieser ] wwieser (a) gmx <*> de [ 00008 * 00009 * This file may be distributed and/or modified under the terms of the 00010 * GNU General Public License version 2 as published by the Free Software 00011 * Foundation. (See COPYING.GPL for details.) 00012 * 00013 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00014 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00015 * 00016 */ 00017 00018 #ifndef _FLEX_TEST_GRAMMAR_H_ 00019 #define _FLEX_TEST_GRAMMAR_H_ 1 00020 00021 // These are the same ugly #defines which bison emits as well... grmbl. 00022 #define TS_IDENTIFIER 258 00023 #define TS_INTEGER 259 00024 #define TS_IF 260 00025 #define TS_ELSE 261 00026 00027 // And this is bison-style as well. 00028 union YYSTYPE { 00029 int int_val; /* fom lexer */ 00030 double float_val; /* fom lexer */ 00031 char *string_val; /* fom lexer ---> MayBeCleared(), etc... */ 00032 }; 00033 00034 #endif /* _FLEX_TEST_GRAMMAR_H_ */