00001 #ifndef MLEX_H
00002 #define MLEX_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include <stdio.h>
00013 #include <assert.h>
00014
00015
00016 #include <yytdefs.h>
00017
00018
00019 #if defined(YYTUDEFS) || defined(YYUDEFS)
00020 #include <yytudefs.h>
00021 #endif
00022
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026
00027 #define YY_ALEX
00028
00029
00030 #ifndef YYCDECL
00031 #define YYCDECL
00032 #endif
00033 #ifndef YYDCDECL
00034 #define YYDCDECL
00035 #endif
00036 #ifndef YYNEAR
00037 #define YYNEAR
00038 #endif
00039 #ifndef YYFAR
00040 #define YYFAR
00041 #endif
00042 #ifndef YYNEARFAR
00043 #define YYNEARFAR
00044 #endif
00045 #ifndef YYBASED_CODE
00046 #define YYBASED_CODE
00047 #endif
00048
00049
00050 #ifndef YYPROTOTYPE
00051 #if defined(__STDC__) || defined(__cplusplus)
00052 #define YYPROTOTYPE
00053 #endif
00054 #endif
00055
00056
00057 #ifndef YYCONST
00058 #if defined(__STDC__) || defined(__cplusplus)
00059 #define YYCONST const
00060 #else
00061 #define YYCONST
00062 #endif
00063 #endif
00064
00065
00066 #ifdef YYNOPROTOTYPE
00067 #undef YYPROTOTYPE
00068 #endif
00069 #ifdef YYNOCONST
00070 #undef YYCONST
00071 #define YYCONST
00072 #endif
00073
00074
00075 #define YYEOF 0
00076
00077 #ifndef YYSTATE_T
00078 #define YYSTATE_T
00079 typedef struct yystate {
00080 short def;
00081 short base;
00082 short match;
00083 } yystate_t;
00084 #endif
00085
00086 #ifndef YYTRANSITION_T
00087 #define YYTRANSITION_T
00088 typedef struct yytransition {
00089 short next;
00090 short check;
00091 } yytransition_t;
00092 #endif
00093
00094 #ifndef YYCTRANSITION_T
00095 #define YYCTRANSITION_T
00096 typedef struct yyctransition {
00097 unsigned char first;
00098 unsigned char last;
00099 short next;
00100 } yyctransition_t;
00101 #endif
00102
00103 typedef short yymatch_t;
00104 typedef unsigned char yybackup_t;
00105
00106 typedef struct yymlex {
00107
00108 unsigned char yymmoreflg;
00109 unsigned char yymrejectflg;
00110 unsigned char yymreturnflg;
00111 unsigned char yymtextgrow;
00112 unsigned char yymunputgrow;
00113 unsigned char yymeol;
00114 unsigned char yymoldeol;
00115 int yymstart;
00116
00117
00118 FILE YYFAR *yymin;
00119 FILE YYFAR *yymout;
00120 FILE YYFAR *yymerr;
00121
00122 int yymleng;
00123 int yymlineno;
00124 int yymunputindex;
00125
00126 char YYFAR *yymtext;
00127 char YYFAR *yymstext;
00128 int yymtext_size;
00129 int yymstext_size;
00130
00131 int YYFAR *yymstatebuf;
00132 int YYFAR *yymsstatebuf;
00133
00134
00135 int YYFAR *yymunputbufptr;
00136 int YYFAR *yymsunputbufptr;
00137 int yymunput_size;
00138 int yymsunput_size;
00139
00140
00141 #ifdef YYPROTOTYPE
00142 int (YYCDECL *yyminput)(struct yymlex YYFAR *yy);
00143 void (YYCDECL *yymoutput)(struct yymlex YYFAR *yy, int ch);
00144 void (YYCDECL *yymunput)(struct yymlex YYFAR *yy, int ch);
00145 int (YYCDECL *yymwrap)(struct yymlex YYFAR *yy);
00146 int (YYCDECL *yymgetchar)(struct yymlex YYFAR *yy);
00147 void (YYCDECL *yymtextoverflow)(struct yymlex YYFAR *yy);
00148 void (YYCDECL *yymunputoverflow)(struct yymlex YYFAR *yy);
00149 int (YYCDECL *yymlexaction)(struct yymlex YYFAR *yy, int action);
00150 #else
00151 int (YYCDECL *yyminput)();
00152 void (YYCDECL *yymoutput)();
00153 void (YYCDECL *yymunput)();
00154 int (YYCDECL *yymwrap)();
00155 int (YYCDECL *yymgetchar)();
00156 void (YYCDECL *yymtextoverflow)();
00157 void (YYCDECL *yymunputoverflow)();
00158 int (YYCDECL *yymlexaction)();
00159 #endif
00160
00161
00162
00163 YYCONST yytransition_t YYNEARFAR *yymtransition;
00164 int yymtransitionmax;
00165
00166 YYCONST yyctransition_t YYNEARFAR *yymctransition;
00167
00168 YYCONST yymatch_t YYNEARFAR *yymmatch;
00169 YYCONST yystate_t YYNEARFAR *yymstate;
00170 YYCONST yybackup_t YYNEARFAR *yymbackup;
00171
00172 void YYFAR *yymdata;
00173
00174
00175 #ifdef YYDEBUG
00176 int yymdebug;
00177 int yymdebugflush;
00178 FILE YYFAR *yymdebugout;
00179 #endif
00180 } yymlex_t;
00181
00182
00183 #ifdef YYPROTOTYPE
00184 int YYCDECL yymcreatelex(yymlex_t YYFAR *yy, YYCONST yymlex_t YYFAR *src);
00185 void YYCDECL yymdestroylex(yymlex_t YYFAR *yy);
00186 #else
00187 int YYCDECL yymcreatelex();
00188 void YYCDECL yymdestroylex();
00189 #endif
00190
00191
00192 #ifdef YYPROTOTYPE
00193 int YYCDECL yymclex(yymlex_t YYFAR *yy);
00194 int YYCDECL yymlex(yymlex_t YYFAR *yy);
00195 void YYCDECL yymlexcleanup(yymlex_t YYFAR *yy);
00196 void YYCDECL yymlexinit(yymlex_t YYFAR *yy);
00197 void YYCDECL yymreset(yymlex_t YYFAR *yy);
00198 int YYCDECL yymsettextsize(yymlex_t YYFAR *yy, int size);
00199 int YYCDECL yymsetunputsize(yymlex_t YYFAR *yy, int size);
00200 #else
00201 int YYCDECL yymclex();
00202 int YYCDECL yymlex();
00203 void YYCDECL yymlexcleanup();
00204 void YYCDECL yymlexinit();
00205 void YYCDECL yymreset();
00206 int YYCDECL yymsettextsize();
00207 int YYCDECL yymsetunputsize();
00208 #endif
00209
00210
00211 #ifdef YYPROTOTYPE
00212 int YYCDECL yymgetchar(yymlex_t YYFAR *yy);
00213 int YYCDECL yyminput(yymlex_t YYFAR *yy);
00214 void YYCDECL yymoutput(yymlex_t YYFAR *yy, int ch);
00215 void YYCDECL yymtextoverflow(yymlex_t YYFAR *yy);
00216 void YYCDECL yymunput(yymlex_t YYFAR *yy, int ch);
00217 void YYCDECL yymunputoverflow(yymlex_t YYFAR *yy);
00218 int YYCDECL yymwrap(yymlex_t YYFAR *yy);
00219 #else
00220 int YYCDECL yymgetchar();
00221 int YYCDECL yyminput();
00222 void YYCDECL yymoutput();
00223 void YYCDECL yymtextoverflow();
00224 void YYCDECL yymunput();
00225 void YYCDECL yymunputoverflow();
00226 int YYCDECL yymwrap();
00227 #endif
00228
00229
00230 #ifdef YYPROTOTYPE
00231 void YYCDECL yymecho(yymlex_t YYFAR *yy);
00232 void YYCDECL yymless(yymlex_t YYFAR *yy, int length);
00233 #else
00234 void YYCDECL yymecho();
00235 void YYCDECL yymless();
00236 #endif
00237 #define yymbegin(yy, state) ((yy)->yymstart = (state))
00238 #define yymmore(yy) ((yy)->yymmoreflg = 1)
00239 #define yymnewline(yy, newline) ((newline) ? (yy)->yymeol = 1 : ((yy)->yymeol = 0))
00240 #define yymreject(yy) ((yy)->yymrejectflg = 1)
00241 #define yymunputcount(yy) (yy)->yymunputindex
00242
00243
00244 #ifdef YYPROTOTYPE
00245 int YYCDECL yymback(YYCONST yymatch_t YYNEARFAR *p, int action);
00246 #else
00247 int YYCDECL yymback();
00248 #endif
00249 #ifndef yyassert
00250 #define yyassert(expr) assert(expr)
00251 #endif
00252
00253
00254 #ifdef YYDEBUG
00255 #ifdef YYPROTOTYPE
00256 void YYCDECL yymdebugoutput(yymlex_t YYFAR *yy, int ch);
00257 void YYCDECL yymdmatch(yymlex_t YYFAR *yy, int expr);
00258 void YYCDECL yymlexdebugoutput(yymlex_t YYFAR *yy, YYCONST char *string);
00259 #else
00260 void YYCDECL yymdebugoutput();
00261 void YYCDECL yymdmatch();
00262 void YYCDECL yymlexdebugoutput();
00263 #endif
00264 #endif
00265
00266 #define yymisfastlexer(yy) ((yy)->yymtransition != NULL)
00267 #define yymiscompactlexer(yy) ((yy)->yymctransition != NULL)
00268
00269
00270 #ifdef YYDEBUG
00271 extern int YYNEAR YYDCDECL yydebug;
00272 extern int YYNEAR YYDCDECL yydebugflush;
00273 #endif
00274
00275 #ifdef __cplusplus
00276 }
00277 #endif
00278
00279
00280 #if defined(YYBUDEFS) || defined(YYUDEFS)
00281 #include <yybudefs.h>
00282 #endif
00283
00284
00285 #include <yybdefs.h>
00286
00287 #endif
00288