56a57a7af4a7b80e8b7633bfbcf6ba81f8ef0e0e
[reactos.git] / reactos / tools / widl / parser.tab.h
1 /* A Bison parser, made by GNU Bison 2.1. */
2
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA. */
20
21 /* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
25
26 /* Tokens. */
27 #ifndef YYTOKENTYPE
28 # define YYTOKENTYPE
29 /* Put the tokens into the symbol table, so that GDB and other debuggers
30 know about them. */
31 enum yytokentype {
32 aIDENTIFIER = 258,
33 aKNOWNTYPE = 259,
34 aNUM = 260,
35 aHEXNUM = 261,
36 aDOUBLE = 262,
37 aSTRING = 263,
38 aWSTRING = 264,
39 aUUID = 265,
40 aEOF = 266,
41 SHL = 267,
42 SHR = 268,
43 MEMBERPTR = 269,
44 EQUALITY = 270,
45 INEQUALITY = 271,
46 GREATEREQUAL = 272,
47 LESSEQUAL = 273,
48 LOGICALOR = 274,
49 LOGICALAND = 275,
50 tAGGREGATABLE = 276,
51 tALLOCATE = 277,
52 tAPPOBJECT = 278,
53 tASYNC = 279,
54 tASYNCUUID = 280,
55 tAUTOHANDLE = 281,
56 tBINDABLE = 282,
57 tBOOLEAN = 283,
58 tBROADCAST = 284,
59 tBYTE = 285,
60 tBYTECOUNT = 286,
61 tCALLAS = 287,
62 tCALLBACK = 288,
63 tCASE = 289,
64 tCDECL = 290,
65 tCHAR = 291,
66 tCOCLASS = 292,
67 tCODE = 293,
68 tCOMMSTATUS = 294,
69 tCONST = 295,
70 tCONTEXTHANDLE = 296,
71 tCONTEXTHANDLENOSERIALIZE = 297,
72 tCONTEXTHANDLESERIALIZE = 298,
73 tCONTROL = 299,
74 tCPPQUOTE = 300,
75 tDEFAULT = 301,
76 tDEFAULTCOLLELEM = 302,
77 tDEFAULTVALUE = 303,
78 tDEFAULTVTABLE = 304,
79 tDISPLAYBIND = 305,
80 tDISPINTERFACE = 306,
81 tDLLNAME = 307,
82 tDOUBLE = 308,
83 tDUAL = 309,
84 tENDPOINT = 310,
85 tENTRY = 311,
86 tENUM = 312,
87 tERRORSTATUST = 313,
88 tEXPLICITHANDLE = 314,
89 tEXTERN = 315,
90 tFALSE = 316,
91 tFASTCALL = 317,
92 tFLOAT = 318,
93 tHANDLE = 319,
94 tHANDLET = 320,
95 tHELPCONTEXT = 321,
96 tHELPFILE = 322,
97 tHELPSTRING = 323,
98 tHELPSTRINGCONTEXT = 324,
99 tHELPSTRINGDLL = 325,
100 tHIDDEN = 326,
101 tHYPER = 327,
102 tID = 328,
103 tIDEMPOTENT = 329,
104 tIIDIS = 330,
105 tIMMEDIATEBIND = 331,
106 tIMPLICITHANDLE = 332,
107 tIMPORT = 333,
108 tIMPORTLIB = 334,
109 tIN = 335,
110 tIN_LINE = 336,
111 tINLINE = 337,
112 tINPUTSYNC = 338,
113 tINT = 339,
114 tINT64 = 340,
115 tINTERFACE = 341,
116 tLCID = 342,
117 tLENGTHIS = 343,
118 tLIBRARY = 344,
119 tLOCAL = 345,
120 tLONG = 346,
121 tMETHODS = 347,
122 tMODULE = 348,
123 tNONBROWSABLE = 349,
124 tNONCREATABLE = 350,
125 tNONEXTENSIBLE = 351,
126 tNULL = 352,
127 tOBJECT = 353,
128 tODL = 354,
129 tOLEAUTOMATION = 355,
130 tOPTIONAL = 356,
131 tOUT = 357,
132 tPASCAL = 358,
133 tPOINTERDEFAULT = 359,
134 tPROPERTIES = 360,
135 tPROPGET = 361,
136 tPROPPUT = 362,
137 tPROPPUTREF = 363,
138 tPTR = 364,
139 tPUBLIC = 365,
140 tRANGE = 366,
141 tREADONLY = 367,
142 tREF = 368,
143 tREGISTER = 369,
144 tREQUESTEDIT = 370,
145 tRESTRICTED = 371,
146 tRETVAL = 372,
147 tSAFEARRAY = 373,
148 tSHORT = 374,
149 tSIGNED = 375,
150 tSINGLE = 376,
151 tSIZEIS = 377,
152 tSIZEOF = 378,
153 tSMALL = 379,
154 tSOURCE = 380,
155 tSTATIC = 381,
156 tSTDCALL = 382,
157 tSTRICTCONTEXTHANDLE = 383,
158 tSTRING = 384,
159 tSTRUCT = 385,
160 tSWITCH = 386,
161 tSWITCHIS = 387,
162 tSWITCHTYPE = 388,
163 tTRANSMITAS = 389,
164 tTRUE = 390,
165 tTYPEDEF = 391,
166 tUNION = 392,
167 tUNIQUE = 393,
168 tUNSIGNED = 394,
169 tUUID = 395,
170 tV1ENUM = 396,
171 tVARARG = 397,
172 tVERSION = 398,
173 tVOID = 399,
174 tWCHAR = 400,
175 tWIREMARSHAL = 401,
176 ADDRESSOF = 402,
177 NEG = 403,
178 POS = 404,
179 PPTR = 405,
180 CAST = 406
181 };
182 #endif
183 /* Tokens. */
184 #define aIDENTIFIER 258
185 #define aKNOWNTYPE 259
186 #define aNUM 260
187 #define aHEXNUM 261
188 #define aDOUBLE 262
189 #define aSTRING 263
190 #define aWSTRING 264
191 #define aUUID 265
192 #define aEOF 266
193 #define SHL 267
194 #define SHR 268
195 #define MEMBERPTR 269
196 #define EQUALITY 270
197 #define INEQUALITY 271
198 #define GREATEREQUAL 272
199 #define LESSEQUAL 273
200 #define LOGICALOR 274
201 #define LOGICALAND 275
202 #define tAGGREGATABLE 276
203 #define tALLOCATE 277
204 #define tAPPOBJECT 278
205 #define tASYNC 279
206 #define tASYNCUUID 280
207 #define tAUTOHANDLE 281
208 #define tBINDABLE 282
209 #define tBOOLEAN 283
210 #define tBROADCAST 284
211 #define tBYTE 285
212 #define tBYTECOUNT 286
213 #define tCALLAS 287
214 #define tCALLBACK 288
215 #define tCASE 289
216 #define tCDECL 290
217 #define tCHAR 291
218 #define tCOCLASS 292
219 #define tCODE 293
220 #define tCOMMSTATUS 294
221 #define tCONST 295
222 #define tCONTEXTHANDLE 296
223 #define tCONTEXTHANDLENOSERIALIZE 297
224 #define tCONTEXTHANDLESERIALIZE 298
225 #define tCONTROL 299
226 #define tCPPQUOTE 300
227 #define tDEFAULT 301
228 #define tDEFAULTCOLLELEM 302
229 #define tDEFAULTVALUE 303
230 #define tDEFAULTVTABLE 304
231 #define tDISPLAYBIND 305
232 #define tDISPINTERFACE 306
233 #define tDLLNAME 307
234 #define tDOUBLE 308
235 #define tDUAL 309
236 #define tENDPOINT 310
237 #define tENTRY 311
238 #define tENUM 312
239 #define tERRORSTATUST 313
240 #define tEXPLICITHANDLE 314
241 #define tEXTERN 315
242 #define tFALSE 316
243 #define tFASTCALL 317
244 #define tFLOAT 318
245 #define tHANDLE 319
246 #define tHANDLET 320
247 #define tHELPCONTEXT 321
248 #define tHELPFILE 322
249 #define tHELPSTRING 323
250 #define tHELPSTRINGCONTEXT 324
251 #define tHELPSTRINGDLL 325
252 #define tHIDDEN 326
253 #define tHYPER 327
254 #define tID 328
255 #define tIDEMPOTENT 329
256 #define tIIDIS 330
257 #define tIMMEDIATEBIND 331
258 #define tIMPLICITHANDLE 332
259 #define tIMPORT 333
260 #define tIMPORTLIB 334
261 #define tIN 335
262 #define tIN_LINE 336
263 #define tINLINE 337
264 #define tINPUTSYNC 338
265 #define tINT 339
266 #define tINT64 340
267 #define tINTERFACE 341
268 #define tLCID 342
269 #define tLENGTHIS 343
270 #define tLIBRARY 344
271 #define tLOCAL 345
272 #define tLONG 346
273 #define tMETHODS 347
274 #define tMODULE 348
275 #define tNONBROWSABLE 349
276 #define tNONCREATABLE 350
277 #define tNONEXTENSIBLE 351
278 #define tNULL 352
279 #define tOBJECT 353
280 #define tODL 354
281 #define tOLEAUTOMATION 355
282 #define tOPTIONAL 356
283 #define tOUT 357
284 #define tPASCAL 358
285 #define tPOINTERDEFAULT 359
286 #define tPROPERTIES 360
287 #define tPROPGET 361
288 #define tPROPPUT 362
289 #define tPROPPUTREF 363
290 #define tPTR 364
291 #define tPUBLIC 365
292 #define tRANGE 366
293 #define tREADONLY 367
294 #define tREF 368
295 #define tREGISTER 369
296 #define tREQUESTEDIT 370
297 #define tRESTRICTED 371
298 #define tRETVAL 372
299 #define tSAFEARRAY 373
300 #define tSHORT 374
301 #define tSIGNED 375
302 #define tSINGLE 376
303 #define tSIZEIS 377
304 #define tSIZEOF 378
305 #define tSMALL 379
306 #define tSOURCE 380
307 #define tSTATIC 381
308 #define tSTDCALL 382
309 #define tSTRICTCONTEXTHANDLE 383
310 #define tSTRING 384
311 #define tSTRUCT 385
312 #define tSWITCH 386
313 #define tSWITCHIS 387
314 #define tSWITCHTYPE 388
315 #define tTRANSMITAS 389
316 #define tTRUE 390
317 #define tTYPEDEF 391
318 #define tUNION 392
319 #define tUNIQUE 393
320 #define tUNSIGNED 394
321 #define tUUID 395
322 #define tV1ENUM 396
323 #define tVARARG 397
324 #define tVERSION 398
325 #define tVOID 399
326 #define tWCHAR 400
327 #define tWIREMARSHAL 401
328 #define ADDRESSOF 402
329 #define NEG 403
330 #define POS 404
331 #define PPTR 405
332 #define CAST 406
333
334
335
336
337 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
338 #line 177 "parser.y"
339 typedef union YYSTYPE {
340 attr_t *attr;
341 attr_list_t *attr_list;
342 str_list_t *str_list;
343 expr_t *expr;
344 expr_list_t *expr_list;
345 array_dims_t *array_dims;
346 type_t *type;
347 var_t *var;
348 var_list_t *var_list;
349 declarator_t *declarator;
350 declarator_list_t *declarator_list;
351 func_t *func;
352 func_list_t *func_list;
353 statement_t *statement;
354 statement_list_t *stmt_list;
355 ifref_t *ifref;
356 ifref_list_t *ifref_list;
357 char *str;
358 UUID *uuid;
359 unsigned int num;
360 double dbl;
361 interface_info_t ifinfo;
362 typelib_t *typelib;
363 struct _import_t *import;
364 struct _decl_spec_t *declspec;
365 enum storage_class stgclass;
366 } YYSTYPE;
367 /* Line 1447 of yacc.c. */
368 #line 369 "parser.tab.h"
369 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
370 # define YYSTYPE_IS_DECLARED 1
371 # define YYSTYPE_IS_TRIVIAL 1
372 #endif
373
374 extern YYSTYPE parser_lval;
375
376
377