1 /* A Bison parser, made by GNU Bison 3.5.  */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation,
6    Inc.
7 
8    This program is free software: you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation, either version 3 of the License, or
11    (at your option) any later version.
12 
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17 
18    You should have received a copy of the GNU General Public License
19    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20 
21 /* As a special exception, you may create a larger work that contains
22    part or all of the Bison parser skeleton and distribute that work
23    under terms of your choice, so long as that work isn't itself a
24    parser generator using the skeleton or a modified version thereof
25    as a parser skeleton.  Alternatively, if you modify or redistribute
26    the parser skeleton itself, you may (at your option) remove this
27    special exception, which will cause the skeleton and the resulting
28    Bison output files to be licensed under the GNU General Public
29    License without this special exception.
30 
31    This special exception was added by the Free Software Foundation in
32    version 2.2 of Bison.  */
33 
34 /* Undocumented macros, especially those whose name start with YY_,
35    are private implementation details.  Do not rely on them.  */
36 
37 #ifndef YY_YY_RCPARSE_H_INCLUDED
38 # define YY_YY_RCPARSE_H_INCLUDED
39 /* Debug traces.  */
40 #ifndef YYDEBUG
41 # define YYDEBUG 0
42 #endif
43 #if YYDEBUG
44 extern int yydebug;
45 #endif
46 
47 /* Token type.  */
48 #ifndef YYTOKENTYPE
49 # define YYTOKENTYPE
50   enum yytokentype
51   {
52     BEG = 258,
53     END = 259,
54     ACCELERATORS = 260,
55     VIRTKEY = 261,
56     ASCII = 262,
57     NOINVERT = 263,
58     SHIFT = 264,
59     CONTROL = 265,
60     ALT = 266,
61     BITMAP = 267,
62     CURSOR = 268,
63     DIALOG = 269,
64     DIALOGEX = 270,
65     EXSTYLE = 271,
66     CAPTION = 272,
67     CLASS = 273,
68     STYLE = 274,
69     AUTO3STATE = 275,
70     AUTOCHECKBOX = 276,
71     AUTORADIOBUTTON = 277,
72     CHECKBOX = 278,
73     COMBOBOX = 279,
74     CTEXT = 280,
75     DEFPUSHBUTTON = 281,
76     EDITTEXT = 282,
77     GROUPBOX = 283,
78     LISTBOX = 284,
79     LTEXT = 285,
80     PUSHBOX = 286,
81     PUSHBUTTON = 287,
82     RADIOBUTTON = 288,
83     RTEXT = 289,
84     SCROLLBAR = 290,
85     STATE3 = 291,
86     USERBUTTON = 292,
87     BEDIT = 293,
88     HEDIT = 294,
89     IEDIT = 295,
90     FONT = 296,
91     ICON = 297,
92     ANICURSOR = 298,
93     ANIICON = 299,
94     DLGINCLUDE = 300,
95     DLGINIT = 301,
96     FONTDIR = 302,
97     HTML = 303,
98     MANIFEST = 304,
99     PLUGPLAY = 305,
100     VXD = 306,
101     TOOLBAR = 307,
102     BUTTON = 308,
103     LANGUAGE = 309,
104     CHARACTERISTICS = 310,
105     VERSIONK = 311,
106     MENU = 312,
107     MENUEX = 313,
108     MENUITEM = 314,
109     SEPARATOR = 315,
110     POPUP = 316,
111     CHECKED = 317,
112     GRAYED = 318,
113     HELP = 319,
114     INACTIVE = 320,
115     OWNERDRAW = 321,
116     MENUBARBREAK = 322,
117     MENUBREAK = 323,
118     MESSAGETABLE = 324,
119     RCDATA = 325,
120     STRINGTABLE = 326,
121     VERSIONINFO = 327,
122     FILEVERSION = 328,
123     PRODUCTVERSION = 329,
124     FILEFLAGSMASK = 330,
125     FILEFLAGS = 331,
126     FILEOS = 332,
127     FILETYPE = 333,
128     FILESUBTYPE = 334,
129     BLOCKSTRINGFILEINFO = 335,
130     BLOCKVARFILEINFO = 336,
131     VALUE = 337,
132     BLOCK = 338,
133     MOVEABLE = 339,
134     FIXED = 340,
135     PURE = 341,
136     IMPURE = 342,
137     PRELOAD = 343,
138     LOADONCALL = 344,
139     DISCARDABLE = 345,
140     NOT = 346,
141     QUOTEDUNISTRING = 347,
142     QUOTEDSTRING = 348,
143     STRING = 349,
144     NUMBER = 350,
145     SIZEDUNISTRING = 351,
146     SIZEDSTRING = 352,
147     IGNORED_TOKEN = 353,
148     NEG = 354
149   };
150 #endif
151 /* Tokens.  */
152 #define BEG 258
153 #define END 259
154 #define ACCELERATORS 260
155 #define VIRTKEY 261
156 #define ASCII 262
157 #define NOINVERT 263
158 #define SHIFT 264
159 #define CONTROL 265
160 #define ALT 266
161 #define BITMAP 267
162 #define CURSOR 268
163 #define DIALOG 269
164 #define DIALOGEX 270
165 #define EXSTYLE 271
166 #define CAPTION 272
167 #define CLASS 273
168 #define STYLE 274
169 #define AUTO3STATE 275
170 #define AUTOCHECKBOX 276
171 #define AUTORADIOBUTTON 277
172 #define CHECKBOX 278
173 #define COMBOBOX 279
174 #define CTEXT 280
175 #define DEFPUSHBUTTON 281
176 #define EDITTEXT 282
177 #define GROUPBOX 283
178 #define LISTBOX 284
179 #define LTEXT 285
180 #define PUSHBOX 286
181 #define PUSHBUTTON 287
182 #define RADIOBUTTON 288
183 #define RTEXT 289
184 #define SCROLLBAR 290
185 #define STATE3 291
186 #define USERBUTTON 292
187 #define BEDIT 293
188 #define HEDIT 294
189 #define IEDIT 295
190 #define FONT 296
191 #define ICON 297
192 #define ANICURSOR 298
193 #define ANIICON 299
194 #define DLGINCLUDE 300
195 #define DLGINIT 301
196 #define FONTDIR 302
197 #define HTML 303
198 #define MANIFEST 304
199 #define PLUGPLAY 305
200 #define VXD 306
201 #define TOOLBAR 307
202 #define BUTTON 308
203 #define LANGUAGE 309
204 #define CHARACTERISTICS 310
205 #define VERSIONK 311
206 #define MENU 312
207 #define MENUEX 313
208 #define MENUITEM 314
209 #define SEPARATOR 315
210 #define POPUP 316
211 #define CHECKED 317
212 #define GRAYED 318
213 #define HELP 319
214 #define INACTIVE 320
215 #define OWNERDRAW 321
216 #define MENUBARBREAK 322
217 #define MENUBREAK 323
218 #define MESSAGETABLE 324
219 #define RCDATA 325
220 #define STRINGTABLE 326
221 #define VERSIONINFO 327
222 #define FILEVERSION 328
223 #define PRODUCTVERSION 329
224 #define FILEFLAGSMASK 330
225 #define FILEFLAGS 331
226 #define FILEOS 332
227 #define FILETYPE 333
228 #define FILESUBTYPE 334
229 #define BLOCKSTRINGFILEINFO 335
230 #define BLOCKVARFILEINFO 336
231 #define VALUE 337
232 #define BLOCK 338
233 #define MOVEABLE 339
234 #define FIXED 340
235 #define PURE 341
236 #define IMPURE 342
237 #define PRELOAD 343
238 #define LOADONCALL 344
239 #define DISCARDABLE 345
240 #define NOT 346
241 #define QUOTEDUNISTRING 347
242 #define QUOTEDSTRING 348
243 #define STRING 349
244 #define NUMBER 350
245 #define SIZEDUNISTRING 351
246 #define SIZEDSTRING 352
247 #define IGNORED_TOKEN 353
248 #define NEG 354
249 
250 /* Value type.  */
251 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
252 union YYSTYPE
253 {
254 #line 68 "rcparse.y"
255 
256   rc_accelerator acc;
257   rc_accelerator *pacc;
258   rc_dialog_control *dialog_control;
259   rc_menuitem *menuitem;
260   struct
261   {
262     rc_rcdata_item *first;
263     rc_rcdata_item *last;
264   } rcdata;
265   rc_rcdata_item *rcdata_item;
266   rc_fixed_versioninfo *fixver;
267   rc_ver_info *verinfo;
268   rc_ver_stringtable *verstringtable;
269   rc_ver_stringinfo *verstring;
270   rc_ver_varinfo *vervar;
271   rc_toolbar_item *toobar_item;
272   rc_res_id id;
273   rc_res_res_info res_info;
274   struct
275   {
276     rc_uint_type on;
277     rc_uint_type off;
278   } memflags;
279   struct
280   {
281     rc_uint_type val;
282     /* Nonzero if this number was explicitly specified as long.  */
283     int dword;
284   } i;
285   rc_uint_type il;
286   rc_uint_type is;
287   const char *s;
288   struct
289   {
290     rc_uint_type length;
291     const char *s;
292   } ss;
293   unichar *uni;
294   struct
295   {
296     rc_uint_type length;
297     const unichar *s;
298   } suni;
299 
300 #line 301 "rcparse.h"
301 
302 };
303 typedef union YYSTYPE YYSTYPE;
304 # define YYSTYPE_IS_TRIVIAL 1
305 # define YYSTYPE_IS_DECLARED 1
306 #endif
307 
308 
309 extern YYSTYPE yylval;
310 
311 int yyparse (void);
312 
313 #endif /* !YY_YY_RCPARSE_H_INCLUDED  */
314