1 /* A Bison parser, made by GNU Bison 2.3.  */
2 
3 /* Skeleton interface for Bison's Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6    Free Software Foundation, 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 2, or (at your option)
11    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, write to the Free Software
20    Foundation, Inc., 51 Franklin Street, Fifth Floor,
21    Boston, MA 02110-1301, USA.  */
22 
23 /* As a special exception, you may create a larger work that contains
24    part or all of the Bison parser skeleton and distribute that work
25    under terms of your choice, so long as that work isn't itself a
26    parser generator using the skeleton or a modified version thereof
27    as a parser skeleton.  Alternatively, if you modify or redistribute
28    the parser skeleton itself, you may (at your option) remove this
29    special exception, which will cause the skeleton and the resulting
30    Bison output files to be licensed under the GNU General Public
31    License without this special exception.
32 
33    This special exception was added by the Free Software Foundation in
34    version 2.2 of Bison.  */
35 
36 /* Tokens.  */
37 #ifndef YYTOKENTYPE
38 # define YYTOKENTYPE
39    /* Put the tokens into the symbol table, so that GDB and other debuggers
40       know about them.  */
41    enum yytokentype {
42      WITH = 258,
43      LETREC = 259,
44      MIX = 260,
45      SPLIT = 261,
46      SEQ = 262,
47      PAR = 263,
48      REC = 264,
49      NE = 265,
50      GE = 266,
51      GT = 267,
52      EQ = 268,
53      LE = 269,
54      LT = 270,
55      OR = 271,
56      SUB = 272,
57      ADD = 273,
58      RSH = 274,
59      LSH = 275,
60      XOR = 276,
61      AND = 277,
62      MOD = 278,
63      DIV = 279,
64      MUL = 280,
65      POWOP = 281,
66      FDELAY = 282,
67      DELAY1 = 283,
68      DOT = 284,
69      MEM = 285,
70      PREFIX = 286,
71      INTCAST = 287,
72      FLOATCAST = 288,
73      FFUNCTION = 289,
74      FCONSTANT = 290,
75      FVARIABLE = 291,
76      BUTTON = 292,
77      CHECKBOX = 293,
78      VSLIDER = 294,
79      HSLIDER = 295,
80      NENTRY = 296,
81      VGROUP = 297,
82      HGROUP = 298,
83      TGROUP = 299,
84      HBARGRAPH = 300,
85      VBARGRAPH = 301,
86      SOUNDFILE = 302,
87      ATTACH = 303,
88      ACOS = 304,
89      ASIN = 305,
90      ATAN = 306,
91      ATAN2 = 307,
92      COS = 308,
93      SIN = 309,
94      TAN = 310,
95      EXP = 311,
96      LOG = 312,
97      LOG10 = 313,
98      POWFUN = 314,
99      SQRT = 315,
100      ABS = 316,
101      MIN = 317,
102      MAX = 318,
103      FMOD = 319,
104      REMAINDER = 320,
105      FLOOR = 321,
106      CEIL = 322,
107      RINT = 323,
108      RDTBL = 324,
109      RWTBL = 325,
110      SELECT2 = 326,
111      SELECT3 = 327,
112      INT = 328,
113      FLOAT = 329,
114      LAMBDA = 330,
115      WIRE = 331,
116      CUT = 332,
117      ENDDEF = 333,
118      VIRG = 334,
119      LPAR = 335,
120      RPAR = 336,
121      LBRAQ = 337,
122      RBRAQ = 338,
123      LCROC = 339,
124      RCROC = 340,
125      DEF = 341,
126      IMPORT = 342,
127      COMPONENT = 343,
128      LIBRARY = 344,
129      ENVIRONMENT = 345,
130      WAVEFORM = 346,
131      ROUTE = 347,
132      ENABLE = 348,
133      CONTROL = 349,
134      IPAR = 350,
135      ISEQ = 351,
136      ISUM = 352,
137      IPROD = 353,
138      INPUTS = 354,
139      OUTPUTS = 355,
140      STRING = 356,
141      FSTRING = 357,
142      IDENT = 358,
143      EXTRA = 359,
144      DECLARE = 360,
145      CASE = 361,
146      ARROW = 362,
147      ASSERTBOUNDS = 363,
148      LOWEST = 364,
149      HIGHEST = 365,
150      FLOATMODE = 366,
151      DOUBLEMODE = 367,
152      QUADMODE = 368,
153      FIXEDPOINTMODE = 369,
154      BDOC = 370,
155      EDOC = 371,
156      BEQN = 372,
157      EEQN = 373,
158      BDGM = 374,
159      EDGM = 375,
160      BLST = 376,
161      ELST = 377,
162      BMETADATA = 378,
163      EMETADATA = 379,
164      DOCCHAR = 380,
165      NOTICE = 381,
166      LISTING = 382,
167      LSTTRUE = 383,
168      LSTFALSE = 384,
169      LSTDEPENDENCIES = 385,
170      LSTMDOCTAGS = 386,
171      LSTDISTRIBUTED = 387,
172      LSTEQ = 388,
173      LSTQ = 389
174    };
175 #endif
176 /* Tokens.  */
177 #define WITH 258
178 #define LETREC 259
179 #define MIX 260
180 #define SPLIT 261
181 #define SEQ 262
182 #define PAR 263
183 #define REC 264
184 #define NE 265
185 #define GE 266
186 #define GT 267
187 #define EQ 268
188 #define LE 269
189 #define LT 270
190 #define OR 271
191 #define SUB 272
192 #define ADD 273
193 #define RSH 274
194 #define LSH 275
195 #define XOR 276
196 #define AND 277
197 #define MOD 278
198 #define DIV 279
199 #define MUL 280
200 #define POWOP 281
201 #define FDELAY 282
202 #define DELAY1 283
203 #define DOT 284
204 #define MEM 285
205 #define PREFIX 286
206 #define INTCAST 287
207 #define FLOATCAST 288
208 #define FFUNCTION 289
209 #define FCONSTANT 290
210 #define FVARIABLE 291
211 #define BUTTON 292
212 #define CHECKBOX 293
213 #define VSLIDER 294
214 #define HSLIDER 295
215 #define NENTRY 296
216 #define VGROUP 297
217 #define HGROUP 298
218 #define TGROUP 299
219 #define HBARGRAPH 300
220 #define VBARGRAPH 301
221 #define SOUNDFILE 302
222 #define ATTACH 303
223 #define ACOS 304
224 #define ASIN 305
225 #define ATAN 306
226 #define ATAN2 307
227 #define COS 308
228 #define SIN 309
229 #define TAN 310
230 #define EXP 311
231 #define LOG 312
232 #define LOG10 313
233 #define POWFUN 314
234 #define SQRT 315
235 #define ABS 316
236 #define MIN 317
237 #define MAX 318
238 #define FMOD 319
239 #define REMAINDER 320
240 #define FLOOR 321
241 #define CEIL 322
242 #define RINT 323
243 #define RDTBL 324
244 #define RWTBL 325
245 #define SELECT2 326
246 #define SELECT3 327
247 #define INT 328
248 #define FLOAT 329
249 #define LAMBDA 330
250 #define WIRE 331
251 #define CUT 332
252 #define ENDDEF 333
253 #define VIRG 334
254 #define LPAR 335
255 #define RPAR 336
256 #define LBRAQ 337
257 #define RBRAQ 338
258 #define LCROC 339
259 #define RCROC 340
260 #define DEF 341
261 #define IMPORT 342
262 #define COMPONENT 343
263 #define LIBRARY 344
264 #define ENVIRONMENT 345
265 #define WAVEFORM 346
266 #define ROUTE 347
267 #define ENABLE 348
268 #define CONTROL 349
269 #define IPAR 350
270 #define ISEQ 351
271 #define ISUM 352
272 #define IPROD 353
273 #define INPUTS 354
274 #define OUTPUTS 355
275 #define STRING 356
276 #define FSTRING 357
277 #define IDENT 358
278 #define EXTRA 359
279 #define DECLARE 360
280 #define CASE 361
281 #define ARROW 362
282 #define ASSERTBOUNDS 363
283 #define LOWEST 364
284 #define HIGHEST 365
285 #define FLOATMODE 366
286 #define DOUBLEMODE 367
287 #define QUADMODE 368
288 #define FIXEDPOINTMODE 369
289 #define BDOC 370
290 #define EDOC 371
291 #define BEQN 372
292 #define EEQN 373
293 #define BDGM 374
294 #define EDGM 375
295 #define BLST 376
296 #define ELST 377
297 #define BMETADATA 378
298 #define EMETADATA 379
299 #define DOCCHAR 380
300 #define NOTICE 381
301 #define LISTING 382
302 #define LSTTRUE 383
303 #define LSTFALSE 384
304 #define LSTDEPENDENCIES 385
305 #define LSTMDOCTAGS 386
306 #define LSTDISTRIBUTED 387
307 #define LSTEQ 388
308 #define LSTQ 389
309 
310 
311 
312 
313 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
314 typedef union YYSTYPE
315 #line 80 "faustparser.y"
316 {
317 	CTree* 	exp;
318 	char* str;
319 	string* cppstr;
320 	bool b;
321 	int numvariant;
322 }
323 /* Line 1529 of yacc.c.  */
324 #line 325 "faustparser.hpp"
325 	YYSTYPE;
326 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
327 # define YYSTYPE_IS_DECLARED 1
328 # define YYSTYPE_IS_TRIVIAL 1
329 #endif
330 
331 extern YYSTYPE yylval;
332 
333