00001 /* common header for the lexer and the parser 00002 to share 00003 Symbol table for numeric variables and functions 00004 */ 00005 00006 #include <list> 00007 00008 #define _INT 0 00009 #define _DOUBLE 1 00010 #define _ARRAY 2 00011 00012 00013 using namespace std; 00014 00015 #define NSYMS 2048 00016 00017 struct symtab { 00018 int is_reserved; 00019 int type; 00020 char *name; 00021 double (*funcptr)(double); 00022 double value; 00023 list<double> array; 00024 }; 00025 00026 struct symtab *symlook(); 00027 00028