00001 #line 2 "parser/faustlexer.cpp"
00002
00003 #line 4 "parser/faustlexer.cpp"
00004
00005 #define YY_INT_ALIGNED short int
00006
00007
00008
00009 #define FLEX_SCANNER
00010 #define YY_FLEX_MAJOR_VERSION 2
00011 #define YY_FLEX_MINOR_VERSION 5
00012 #define YY_FLEX_SUBMINOR_VERSION 35
00013 #if YY_FLEX_SUBMINOR_VERSION > 0
00014 #define FLEX_BETA
00015 #endif
00016
00017
00018
00019
00020 #include <stdio.h>
00021 #include <string.h>
00022 #include <errno.h>
00023 #include <stdlib.h>
00024
00025
00026
00027
00028
00029 #ifndef FLEXINT_H
00030 #define FLEXINT_H
00031
00032
00033
00034 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
00035
00036
00037
00038
00039 #ifndef __STDC_LIMIT_MACROS
00040 #define __STDC_LIMIT_MACROS 1
00041 #endif
00042
00043 #include <inttypes.h>
00044 typedef int8_t flex_int8_t;
00045 typedef uint8_t flex_uint8_t;
00046 typedef int16_t flex_int16_t;
00047 typedef uint16_t flex_uint16_t;
00048 typedef int32_t flex_int32_t;
00049 typedef uint32_t flex_uint32_t;
00050 #else
00051 typedef signed char flex_int8_t;
00052 typedef short int flex_int16_t;
00053 typedef int flex_int32_t;
00054 typedef unsigned char flex_uint8_t;
00055 typedef unsigned short int flex_uint16_t;
00056 typedef unsigned int flex_uint32_t;
00057
00058
00059 #ifndef INT8_MIN
00060 #define INT8_MIN (-128)
00061 #endif
00062 #ifndef INT16_MIN
00063 #define INT16_MIN (-32767-1)
00064 #endif
00065 #ifndef INT32_MIN
00066 #define INT32_MIN (-2147483647-1)
00067 #endif
00068 #ifndef INT8_MAX
00069 #define INT8_MAX (127)
00070 #endif
00071 #ifndef INT16_MAX
00072 #define INT16_MAX (32767)
00073 #endif
00074 #ifndef INT32_MAX
00075 #define INT32_MAX (2147483647)
00076 #endif
00077 #ifndef UINT8_MAX
00078 #define UINT8_MAX (255U)
00079 #endif
00080 #ifndef UINT16_MAX
00081 #define UINT16_MAX (65535U)
00082 #endif
00083 #ifndef UINT32_MAX
00084 #define UINT32_MAX (4294967295U)
00085 #endif
00086
00087 #endif
00088
00089 #endif
00090
00091 #ifdef __cplusplus
00092
00093
00094 #define YY_USE_CONST
00095
00096 #else
00097
00098
00099 #if defined (__STDC__)
00100
00101 #define YY_USE_CONST
00102
00103 #endif
00104 #endif
00105
00106 #ifdef YY_USE_CONST
00107 #define yyconst const
00108 #else
00109 #define yyconst
00110 #endif
00111
00112
00113 #define YY_NULL 0
00114
00115
00116
00117
00118
00119
00120 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
00121
00122
00123
00124
00125
00126 #define BEGIN (yy_start) = 1 + 2 *
00127
00128
00129
00130
00131
00132 #define YY_START (((yy_start) - 1) / 2)
00133 #define YYSTATE YY_START
00134
00135
00136 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
00137
00138
00139 #define YY_NEW_FILE yyrestart(yyin )
00140
00141 #define YY_END_OF_BUFFER_CHAR 0
00142
00143
00144 #ifndef YY_BUF_SIZE
00145 #ifdef __ia64__
00146
00147
00148
00149
00150 #define YY_BUF_SIZE 32768
00151 #else
00152 #define YY_BUF_SIZE 16384
00153 #endif
00154 #endif
00155
00156
00157
00158 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
00159
00160 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
00161 #define YY_TYPEDEF_YY_BUFFER_STATE
00162 typedef struct yy_buffer_state *YY_BUFFER_STATE;
00163 #endif
00164
00165 extern int yyleng;
00166
00167 extern FILE *yyin, *yyout;
00168
00169 #define EOB_ACT_CONTINUE_SCAN 0
00170 #define EOB_ACT_END_OF_FILE 1
00171 #define EOB_ACT_LAST_MATCH 2
00172
00173
00174
00175
00176
00177
00178
00179
00180 #define YY_LESS_LINENO(n) \
00181 do { \
00182 int yyl;\
00183 for ( yyl = n; yyl < yyleng; ++yyl )\
00184 if ( yytext[yyl] == '\n' )\
00185 --yylineno;\
00186 }while(0)
00187
00188
00189 #define yyless(n) \
00190 do \
00191 { \
00192 \
00193 int yyless_macro_arg = (n); \
00194 YY_LESS_LINENO(yyless_macro_arg);\
00195 *yy_cp = (yy_hold_char); \
00196 YY_RESTORE_YY_MORE_OFFSET \
00197 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
00198 YY_DO_BEFORE_ACTION; \
00199 } \
00200 while ( 0 )
00201
00202 #define unput(c) yyunput( c, (yytext_ptr) )
00203
00204 #ifndef YY_TYPEDEF_YY_SIZE_T
00205 #define YY_TYPEDEF_YY_SIZE_T
00206 typedef size_t yy_size_t;
00207 #endif
00208
00209 #ifndef YY_STRUCT_YY_BUFFER_STATE
00210 #define YY_STRUCT_YY_BUFFER_STATE
00211 struct yy_buffer_state
00212 {
00213 FILE *yy_input_file;
00214
00215 char *yy_ch_buf;
00216 char *yy_buf_pos;
00217
00218
00219
00220
00221 yy_size_t yy_buf_size;
00222
00223
00224
00225
00226 int yy_n_chars;
00227
00228
00229
00230
00231
00232 int yy_is_our_buffer;
00233
00234
00235
00236
00237
00238
00239 int yy_is_interactive;
00240
00241
00242
00243
00244
00245 int yy_at_bol;
00246
00247 int yy_bs_lineno;
00248 int yy_bs_column;
00250
00251
00252
00253 int yy_fill_buffer;
00254
00255 int yy_buffer_status;
00256
00257 #define YY_BUFFER_NEW 0
00258 #define YY_BUFFER_NORMAL 1
00259
00260
00261
00262
00263
00264
00265
00266
00267
00268
00269 #define YY_BUFFER_EOF_PENDING 2
00270
00271 };
00272 #endif
00273
00274
00275 static size_t yy_buffer_stack_top = 0;
00276 static size_t yy_buffer_stack_max = 0;
00277 static YY_BUFFER_STATE * yy_buffer_stack = 0;
00279
00280
00281
00282
00283
00284
00285 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
00286 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
00287 : NULL)
00288
00289
00290
00291
00292 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
00293
00294
00295 static char yy_hold_char;
00296 static int yy_n_chars;
00297 int yyleng;
00298
00299
00300 static char *yy_c_buf_p = (char *) 0;
00301 static int yy_init = 0;
00302 static int yy_start = 0;
00303
00304
00305
00306
00307 static int yy_did_buffer_switch_on_eof;
00308
00309 void yyrestart (FILE *input_file );
00310 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer );
00311 YY_BUFFER_STATE yy_create_buffer (FILE *file,int size );
00312 void yy_delete_buffer (YY_BUFFER_STATE b );
00313 void yy_flush_buffer (YY_BUFFER_STATE b );
00314 void yypush_buffer_state (YY_BUFFER_STATE new_buffer );
00315 void yypop_buffer_state (void );
00316
00317 static void yyensure_buffer_stack (void );
00318 static void yy_load_buffer_state (void );
00319 static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file );
00320
00321 #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER )
00322
00323 YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size );
00324 YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str );
00325 YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len );
00326
00327 void *yyalloc (yy_size_t );
00328 void *yyrealloc (void *,yy_size_t );
00329 void yyfree (void * );
00330
00331 #define yy_new_buffer yy_create_buffer
00332
00333 #define yy_set_interactive(is_interactive) \
00334 { \
00335 if ( ! YY_CURRENT_BUFFER ){ \
00336 yyensure_buffer_stack (); \
00337 YY_CURRENT_BUFFER_LVALUE = \
00338 yy_create_buffer(yyin,YY_BUF_SIZE ); \
00339 } \
00340 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
00341 }
00342
00343 #define yy_set_bol(at_bol) \
00344 { \
00345 if ( ! YY_CURRENT_BUFFER ){\
00346 yyensure_buffer_stack (); \
00347 YY_CURRENT_BUFFER_LVALUE = \
00348 yy_create_buffer(yyin,YY_BUF_SIZE ); \
00349 } \
00350 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
00351 }
00352
00353 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
00354
00355
00356
00357 typedef unsigned char YY_CHAR;
00358
00359 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
00360
00361 typedef int yy_state_type;
00362
00363 extern int yylineno;
00364
00365 int yylineno = 1;
00366
00367 extern char *yytext;
00368 #define yytext_ptr yytext
00369
00370 static yy_state_type yy_get_previous_state (void );
00371 static yy_state_type yy_try_NUL_trans (yy_state_type current_state );
00372 static int yy_get_next_buffer (void );
00373 static void yy_fatal_error (yyconst char msg[] );
00374
00375
00376
00377
00378 #define YY_DO_BEFORE_ACTION \
00379 (yytext_ptr) = yy_bp; \
00380 yyleng = (size_t) (yy_cp - yy_bp); \
00381 (yy_hold_char) = *yy_cp; \
00382 *yy_cp = '\0'; \
00383 (yy_c_buf_p) = yy_cp;
00384
00385 #define YY_NUM_RULES 122
00386 #define YY_END_OF_BUFFER 123
00387
00388
00389 struct yy_trans_info
00390 {
00391 flex_int32_t yy_verify;
00392 flex_int32_t yy_nxt;
00393 };
00394 static yyconst flex_int16_t yy_accept[390] =
00395 { 0,
00396 0, 0, 2, 2, 0, 0, 123, 121, 120, 120,
00397 50, 121, 35, 38, 37, 53, 54, 33, 31, 26,
00398 32, 58, 34, 22, 25, 51, 43, 52, 45, 36,
00399 115, 57, 92, 49, 115, 115, 115, 115, 115, 115,
00400 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
00401 115, 115, 55, 39, 56, 30, 2, 5, 6, 3,
00402 9, 10, 9, 120, 48, 0, 116, 28, 24, 1,
00403 119, 23, 22, 29, 0, 0, 27, 41, 44, 118,
00404 0, 0, 47, 113, 46, 42, 115, 114, 115, 115,
00405 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
00406
00407 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
00408 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
00409 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
00410 115, 115, 115, 115, 2, 4, 3, 3, 7, 0,
00411 0, 0, 0, 0, 119, 23, 0, 0, 0, 0,
00412 114, 95, 115, 115, 115, 115, 115, 115, 115, 115,
00413 115, 86, 115, 115, 89, 115, 115, 115, 115, 115,
00414 115, 115, 115, 115, 62, 115, 90, 97, 60, 96,
00415 115, 104, 93, 115, 115, 115, 115, 115, 115, 115,
00416 103, 87, 115, 105, 88, 115, 115, 115, 115, 115,
00417
00418 40, 0, 0, 0, 0, 0, 117, 0, 0, 0,
00419 82, 83, 84, 115, 115, 112, 101, 115, 115, 115,
00420 115, 115, 115, 115, 115, 98, 115, 115, 115, 115,
00421 115, 115, 115, 115, 115, 106, 115, 115, 102, 115,
00422 115, 94, 115, 115, 115, 115, 59, 0, 0, 0,
00423 0, 0, 0, 0, 0, 85, 115, 115, 115, 115,
00424 115, 115, 115, 115, 63, 100, 115, 115, 115, 115,
00425 115, 115, 91, 115, 115, 115, 115, 115, 115, 115,
00426 115, 115, 115, 0, 0, 0, 0, 0, 0, 0,
00427 8, 81, 71, 115, 115, 115, 115, 115, 115, 115,
00428
00429 115, 77, 115, 107, 115, 75, 61, 115, 115, 115,
00430 115, 78, 115, 76, 115, 0, 0, 0, 0, 0,
00431 0, 0, 115, 115, 111, 115, 115, 115, 115, 115,
00432 74, 109, 64, 115, 65, 66, 67, 115, 73, 21,
00433 0, 0, 0, 0, 0, 0, 72, 115, 115, 115,
00434 115, 115, 115, 115, 115, 0, 0, 0, 0, 0,
00435 11, 0, 0, 108, 115, 69, 68, 70, 80, 99,
00436 79, 19, 0, 0, 0, 14, 0, 12, 20, 0,
00437 115, 17, 0, 15, 13, 18, 110, 16, 0
00438 } ;
00439
00440 static yyconst flex_int32_t yy_ec[256] =
00441 { 0,
00442 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
00443 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
00444 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00445 1, 5, 6, 7, 1, 1, 8, 9, 10, 11,
00446 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
00447 22, 23, 23, 23, 23, 23, 23, 24, 25, 26,
00448 27, 28, 1, 29, 30, 30, 30, 30, 30, 30,
00449 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
00450 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
00451 1, 31, 1, 32, 33, 1, 34, 35, 36, 37,
00452
00453 38, 39, 40, 41, 42, 30, 43, 44, 45, 46,
00454 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
00455 57, 30, 58, 59, 60, 61, 1, 1, 1, 1,
00456 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00457 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00458 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00459 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00460 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00461 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00462 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00463
00464 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00465 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00466 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00467 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00468 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00469 1, 1, 1, 1, 1
00470 } ;
00471
00472 static yyconst flex_int32_t yy_meta[62] =
00473 { 0,
00474 1, 1, 2, 2, 1, 1, 1, 1, 1, 1,
00475 1, 1, 3, 1, 1, 1, 4, 4, 5, 5,
00476 5, 5, 5, 4, 1, 4, 4, 4, 1, 6,
00477 1, 1, 5, 6, 6, 6, 6, 6, 6, 6,
00478 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
00479 6, 6, 6, 6, 6, 6, 6, 1, 1, 1,
00480 1
00481 } ;
00482
00483 static yyconst flex_int16_t yy_base[401] =
00484 { 0,
00485 0, 0, 59, 61, 63, 64, 478, 479, 66, 73,
00486 450, 469, 479, 479, 479, 479, 479, 479, 447, 479,
00487 479, 60, 73, 75, 446, 479, 82, 57, 60, 479,
00488 0, 479, 479, 0, 66, 420, 73, 434, 47, 77,
00489 84, 59, 81, 91, 433, 92, 99, 96, 106, 108,
00490 428, 422, 479, 479, 479, 479, 0, 464, 479, 134,
00491 479, 479, 126, 153, 479, 460, 479, 479, 146, 479,
00492 0, 154, 161, 479, 0, 113, 479, 479, 479, 479,
00493 168, 429, 479, 479, 479, 479, 0, 0, 414, 417,
00494 421, 78, 410, 410, 418, 421, 142, 422, 403, 408,
00495
00496 408, 401, 406, 405, 417, 416, 399, 404, 399, 394,
00497 410, 404, 387, 397, 395, 394, 389, 383, 115, 385,
00498 391, 389, 382, 153, 387, 382, 386, 384, 379, 394,
00499 377, 382, 373, 374, 0, 479, 185, 186, 479, 378,
00500 380, 372, 378, 372, 0, 186, 390, 375, 367, 368,
00501 0, 0, 363, 367, 366, 377, 358, 371, 364, 371,
00502 358, 0, 361, 362, 0, 357, 356, 154, 364, 350,
00503 349, 351, 355, 349, 0, 345, 374, 0, 0, 0,
00504 341, 0, 0, 353, 354, 356, 355, 336, 353, 348,
00505 0, 0, 333, 0, 0, 337, 333, 335, 339, 339,
00506
00507 0, 342, 344, 324, 325, 323, 479, 340, 320, 336,
00508 0, 0, 350, 334, 322, 0, 0, 325, 320, 332,
00509 315, 313, 327, 310, 311, 0, 318, 319, 305, 320,
00510 306, 321, 335, 303, 310, 0, 316, 308, 0, 314,
00511 312, 0, 294, 306, 292, 307, 0, 296, 302, 307,
00512 288, 297, 298, 303, 308, 0, 294, 288, 298, 286,
00513 281, 283, 277, 276, 0, 0, 293, 276, 277, 286,
00514 271, 272, 0, 264, 264, 275, 272, 273, 264, 267,
00515 264, 265, 274, 275, 260, 257, 266, 271, 256, 253,
00516 479, 0, 0, 257, 265, 264, 255, 266, 257, 263,
00517
00518 263, 0, 246, 0, 238, 0, 0, 256, 256, 254,
00519 139, 0, 257, 0, 240, 261, 254, 245, 240, 247,
00520 250, 241, 226, 235, 0, 235, 233, 231, 227, 217,
00521 0, 0, 0, 222, 0, 0, 0, 211, 0, 479,
00522 209, 186, 192, 195, 186, 183, 0, 177, 190, 175,
00523 180, 187, 181, 171, 179, 191, 172, 206, 199, 188,
00524 479, 187, 168, 0, 166, 0, 0, 0, 0, 0,
00525 0, 479, 182, 173, 162, 479, 161, 479, 479, 151,
00526 119, 479, 104, 479, 479, 479, 0, 479, 479, 234,
00527 240, 246, 249, 251, 109, 257, 263, 269, 67, 271
00528
00529 } ;
00530
00531 static yyconst flex_int16_t yy_def[401] =
00532 { 0,
00533 389, 1, 390, 390, 391, 391, 389, 389, 389, 389,
00534 389, 392, 389, 389, 389, 389, 389, 389, 389, 389,
00535 389, 389, 389, 389, 389, 389, 393, 389, 389, 389,
00536 394, 389, 389, 395, 394, 394, 394, 394, 394, 394,
00537 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00538 394, 394, 389, 389, 389, 389, 396, 389, 389, 397,
00539 389, 389, 389, 389, 389, 392, 389, 389, 389, 389,
00540 398, 389, 389, 389, 399, 389, 389, 389, 389, 389,
00541 393, 81, 389, 389, 389, 389, 394, 400, 394, 394,
00542 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00543
00544 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00545 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00546 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00547 394, 394, 394, 394, 396, 389, 397, 397, 389, 389,
00548 389, 389, 389, 389, 398, 389, 389, 389, 389, 81,
00549 400, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00550 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00551 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00552 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00553 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00554
00555 394, 389, 389, 389, 389, 389, 389, 389, 389, 81,
00556 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00557 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00558 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00559 394, 394, 394, 394, 394, 394, 394, 389, 389, 389,
00560 389, 389, 389, 389, 81, 394, 394, 394, 394, 394,
00561 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00562 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00563 394, 394, 394, 389, 389, 389, 389, 389, 389, 389,
00564 389, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00565
00566 394, 394, 394, 394, 394, 394, 394, 394, 394, 394,
00567 394, 394, 394, 394, 394, 389, 389, 389, 389, 389,
00568 389, 389, 394, 394, 394, 394, 394, 394, 394, 394,
00569 394, 394, 394, 394, 394, 394, 394, 394, 394, 389,
00570 389, 389, 389, 389, 389, 389, 394, 394, 394, 394,
00571 394, 394, 394, 394, 394, 389, 389, 389, 389, 389,
00572 389, 389, 389, 394, 394, 394, 394, 394, 394, 394,
00573 394, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00574 394, 389, 389, 389, 389, 389, 394, 389, 0, 389,
00575 389, 389, 389, 389, 389, 389, 389, 389, 389, 389
00576
00577 } ;
00578
00579 static yyconst flex_int16_t yy_nxt[541] =
00580 { 0,
00581 8, 9, 10, 9, 9, 11, 12, 13, 14, 15,
00582 16, 17, 18, 19, 20, 21, 22, 23, 24, 24,
00583 24, 24, 24, 25, 26, 27, 28, 29, 30, 31,
00584 32, 33, 34, 35, 36, 37, 38, 39, 40, 31,
00585 41, 42, 31, 43, 44, 45, 31, 46, 31, 47,
00586 48, 49, 31, 50, 51, 52, 31, 53, 54, 55,
00587 56, 58, 59, 58, 59, 62, 62, 64, 64, 64,
00588 64, 60, 147, 60, 64, 64, 64, 64, 69, 69,
00589 69, 69, 69, 83, 84, 70, 85, 86, 63, 63,
00590 71, 72, 99, 73, 73, 73, 73, 73, 75, 76,
00591
00592 89, 90, 100, 109, 110, 77, 94, 78, 79, 80,
00593 95, 155, 101, 96, 88, 102, 91, 92, 106, 97,
00594 103, 104, 111, 107, 113, 117, 82, 112, 114, 156,
00595 105, 388, 115, 124, 108, 120, 121, 125, 118, 128,
00596 122, 119, 130, 140, 126, 129, 138, 131, 127, 148,
00597 149, 139, 184, 123, 64, 64, 64, 64, 132, 336,
00598 337, 185, 141, 142, 69, 69, 69, 69, 69, 143,
00599 387, 144, 146, 146, 146, 146, 146, 72, 386, 73,
00600 73, 73, 73, 73, 75, 389, 161, 224, 385, 384,
00601 383, 389, 162, 389, 389, 80, 190, 389, 138, 359,
00602
00603 225, 191, 389, 139, 146, 146, 146, 146, 146, 382,
00604 374, 381, 360, 380, 379, 378, 377, 373, 372, 371,
00605 370, 369, 361, 375, 368, 367, 366, 365, 364, 363,
00606 362, 358, 357, 376, 57, 57, 57, 57, 57, 57,
00607 61, 61, 61, 61, 61, 61, 66, 66, 66, 66,
00608 66, 66, 81, 356, 81, 87, 87, 135, 355, 354,
00609 135, 135, 135, 137, 353, 137, 137, 137, 137, 145,
00610 352, 145, 145, 145, 145, 151, 151, 351, 350, 349,
00611 348, 347, 346, 345, 344, 343, 342, 341, 340, 339,
00612 338, 335, 334, 333, 332, 331, 330, 329, 328, 327,
00613
00614 326, 325, 324, 323, 322, 321, 320, 319, 318, 317,
00615 316, 315, 314, 313, 312, 311, 310, 309, 308, 307,
00616 306, 305, 304, 303, 302, 301, 300, 299, 298, 297,
00617 296, 295, 294, 293, 292, 291, 290, 289, 288, 287,
00618 286, 285, 284, 283, 282, 281, 280, 279, 278, 277,
00619 276, 275, 274, 273, 272, 271, 270, 269, 268, 267,
00620 266, 265, 264, 263, 262, 261, 260, 259, 258, 257,
00621 256, 255, 254, 253, 252, 251, 250, 249, 248, 247,
00622 246, 245, 244, 243, 242, 241, 240, 239, 238, 237,
00623 236, 235, 234, 233, 232, 231, 230, 229, 228, 227,
00624
00625 226, 223, 222, 221, 220, 219, 218, 217, 216, 215,
00626 214, 213, 212, 211, 210, 209, 208, 207, 206, 205,
00627 204, 203, 202, 201, 200, 199, 198, 197, 196, 195,
00628 194, 193, 192, 189, 188, 187, 186, 183, 182, 181,
00629 180, 179, 178, 177, 176, 175, 174, 173, 172, 171,
00630 170, 169, 168, 167, 166, 165, 164, 163, 160, 159,
00631 158, 157, 154, 153, 152, 150, 67, 136, 134, 133,
00632 116, 98, 93, 74, 68, 67, 65, 389, 7, 389,
00633 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00634 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00635
00636 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00637 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00638 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00639 389, 389, 389, 389, 389, 389, 389, 389, 389, 389
00640 } ;
00641
00642 static yyconst flex_int16_t yy_chk[541] =
00643 { 0,
00644 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00645 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00646 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00647 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00648 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00649 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00650 1, 3, 3, 4, 4, 5, 6, 9, 9, 9,
00651 9, 3, 399, 4, 10, 10, 10, 10, 22, 22,
00652 22, 22, 22, 28, 28, 23, 29, 29, 5, 6,
00653 23, 24, 39, 24, 24, 24, 24, 24, 27, 27,
00654
00655 35, 35, 39, 42, 42, 27, 37, 27, 27, 27,
00656 37, 92, 40, 37, 395, 40, 35, 35, 41, 37,
00657 40, 40, 43, 41, 44, 46, 27, 43, 44, 92,
00658 40, 383, 44, 48, 41, 47, 47, 48, 46, 49,
00659 47, 46, 50, 63, 48, 49, 60, 50, 48, 76,
00660 76, 60, 119, 47, 64, 64, 64, 64, 50, 311,
00661 311, 119, 63, 63, 69, 69, 69, 69, 69, 63,
00662 381, 63, 72, 72, 72, 72, 72, 73, 380, 73,
00663 73, 73, 73, 73, 81, 81, 97, 168, 377, 375,
00664 374, 81, 97, 81, 81, 81, 124, 137, 138, 344,
00665
00666 168, 124, 137, 138, 146, 146, 146, 146, 146, 373,
00667 358, 365, 344, 363, 362, 360, 359, 357, 356, 355,
00668 354, 353, 344, 358, 352, 351, 350, 349, 348, 346,
00669 345, 343, 342, 358, 390, 390, 390, 390, 390, 390,
00670 391, 391, 391, 391, 391, 391, 392, 392, 392, 392,
00671 392, 392, 393, 341, 393, 394, 394, 396, 338, 334,
00672 396, 396, 396, 397, 330, 397, 397, 397, 397, 398,
00673 329, 398, 398, 398, 398, 400, 400, 328, 327, 326,
00674 324, 323, 322, 321, 320, 319, 318, 317, 316, 315,
00675 313, 310, 309, 308, 305, 303, 301, 300, 299, 298,
00676
00677 297, 296, 295, 294, 290, 289, 288, 287, 286, 285,
00678 284, 283, 282, 281, 280, 279, 278, 277, 276, 275,
00679 274, 272, 271, 270, 269, 268, 267, 264, 263, 262,
00680 261, 260, 259, 258, 257, 255, 254, 253, 252, 251,
00681 250, 249, 248, 246, 245, 244, 243, 241, 240, 238,
00682 237, 235, 234, 233, 232, 231, 230, 229, 228, 227,
00683 225, 224, 223, 222, 221, 220, 219, 218, 215, 214,
00684 213, 210, 209, 208, 206, 205, 204, 203, 202, 200,
00685 199, 198, 197, 196, 193, 190, 189, 188, 187, 186,
00686 185, 184, 181, 177, 176, 174, 173, 172, 171, 170,
00687
00688 169, 167, 166, 164, 163, 161, 160, 159, 158, 157,
00689 156, 155, 154, 153, 150, 149, 148, 147, 144, 143,
00690 142, 141, 140, 134, 133, 132, 131, 130, 129, 128,
00691 127, 126, 125, 123, 122, 121, 120, 118, 117, 116,
00692 115, 114, 113, 112, 111, 110, 109, 108, 107, 106,
00693 105, 104, 103, 102, 101, 100, 99, 98, 96, 95,
00694 94, 93, 91, 90, 89, 82, 66, 58, 52, 51,
00695 45, 38, 36, 25, 19, 12, 11, 7, 389, 389,
00696 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00697 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00698
00699 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00700 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00701 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
00702 389, 389, 389, 389, 389, 389, 389, 389, 389, 389
00703 } ;
00704
00705
00706 static yyconst flex_int32_t yy_rule_can_match_eol[123] =
00707 { 0,
00708 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00709 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00711 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00712 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00713 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
00714 1, 0, 0, };
00715
00716 static yy_state_type yy_last_accepting_state;
00717 static char *yy_last_accepting_cpos;
00718
00719 extern int yy_flex_debug;
00720 int yy_flex_debug = 0;
00721
00722
00723
00724
00725 #define REJECT reject_used_but_not_detected
00726 #define yymore() yymore_used_but_not_detected
00727 #define YY_MORE_ADJ 0
00728 #define YY_RESTORE_YY_MORE_OFFSET
00729 char *yytext;
00730 #line 1 "parser/faustlexer.l"
00731
00732
00733 #line 6 "parser/faustlexer.l"
00734 #include "tree.hh"
00735 #include "faustparser.hpp"
00736 #define YY_NO_UNISTD_H 1
00737 extern int isatty (int );
00738
00739
00740 #line 741 "parser/faustlexer.cpp"
00741
00742 #define INITIAL 0
00743 #define comment 1
00744 #define doc 2
00745
00746 #ifndef YY_NO_UNISTD_H
00747
00748
00749
00750
00751 #include <unistd.h>
00752 #endif
00753
00754 #ifndef YY_EXTRA_TYPE
00755 #define YY_EXTRA_TYPE void *
00756 #endif
00757
00758 static int yy_init_globals (void );
00759
00760
00761
00762
00763 int yylex_destroy (void );
00764
00765 int yyget_debug (void );
00766
00767 void yyset_debug (int debug_flag );
00768
00769 YY_EXTRA_TYPE yyget_extra (void );
00770
00771 void yyset_extra (YY_EXTRA_TYPE user_defined );
00772
00773 FILE *yyget_in (void );
00774
00775 void yyset_in (FILE * in_str );
00776
00777 FILE *yyget_out (void );
00778
00779 void yyset_out (FILE * out_str );
00780
00781 int yyget_leng (void );
00782
00783 char *yyget_text (void );
00784
00785 int yyget_lineno (void );
00786
00787 void yyset_lineno (int line_number );
00788
00789
00790
00791
00792
00793 #ifndef YY_SKIP_YYWRAP
00794 #ifdef __cplusplus
00795 extern "C" int yywrap (void );
00796 #else
00797 extern int yywrap (void );
00798 #endif
00799 #endif
00800
00801 static void yyunput (int c,char *buf_ptr );
00802
00803 #ifndef yytext_ptr
00804 static void yy_flex_strncpy (char *,yyconst char *,int );
00805 #endif
00806
00807 #ifdef YY_NEED_STRLEN
00808 static int yy_flex_strlen (yyconst char * );
00809 #endif
00810
00811 #ifndef YY_NO_INPUT
00812
00813 #ifdef __cplusplus
00814 static int yyinput (void );
00815 #else
00816 static int input (void );
00817 #endif
00818
00819 #endif
00820
00821
00822 #ifndef YY_READ_BUF_SIZE
00823 #ifdef __ia64__
00824
00825 #define YY_READ_BUF_SIZE 16384
00826 #else
00827 #define YY_READ_BUF_SIZE 8192
00828 #endif
00829 #endif
00830
00831
00832 #ifndef ECHO
00833
00834
00835
00836 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
00837 #endif
00838
00839
00840
00841
00842 #ifndef YY_INPUT
00843 #define YY_INPUT(buf,result,max_size) \
00844 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
00845 { \
00846 int c = '*'; \
00847 size_t n; \
00848 for ( n = 0; n < max_size && \
00849 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
00850 buf[n] = (char) c; \
00851 if ( c == '\n' ) \
00852 buf[n++] = (char) c; \
00853 if ( c == EOF && ferror( yyin ) ) \
00854 YY_FATAL_ERROR( "input in flex scanner failed" ); \
00855 result = n; \
00856 } \
00857 else \
00858 { \
00859 errno=0; \
00860 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
00861 { \
00862 if( errno != EINTR) \
00863 { \
00864 YY_FATAL_ERROR( "input in flex scanner failed" ); \
00865 break; \
00866 } \
00867 errno=0; \
00868 clearerr(yyin); \
00869 } \
00870 }\
00871 \
00872
00873 #endif
00874
00875
00876
00877
00878
00879 #ifndef yyterminate
00880 #define yyterminate() return YY_NULL
00881 #endif
00882
00883
00884 #ifndef YY_START_STACK_INCR
00885 #define YY_START_STACK_INCR 25
00886 #endif
00887
00888
00889 #ifndef YY_FATAL_ERROR
00890 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
00891 #endif
00892
00893
00894
00895
00896
00897
00898 #ifndef YY_DECL
00899 #define YY_DECL_IS_OURS 1
00900
00901 extern int yylex (void);
00902
00903 #define YY_DECL int yylex (void)
00904 #endif
00905
00906
00907
00908
00909 #ifndef YY_USER_ACTION
00910 #define YY_USER_ACTION
00911 #endif
00912
00913
00914 #ifndef YY_BREAK
00915 #define YY_BREAK break;
00916 #endif
00917
00918 #define YY_RULE_SETUP \
00919 YY_USER_ACTION
00920
00923 YY_DECL
00924 {
00925 register yy_state_type yy_current_state;
00926 register char *yy_cp, *yy_bp;
00927 register int yy_act;
00928
00929 #line 24 "parser/faustlexer.l"
00930
00931
00932
00933 #line 934 "parser/faustlexer.cpp"
00934
00935 if ( !(yy_init) )
00936 {
00937 (yy_init) = 1;
00938
00939 #ifdef YY_USER_INIT
00940 YY_USER_INIT;
00941 #endif
00942
00943 if ( ! (yy_start) )
00944 (yy_start) = 1;
00945
00946 if ( ! yyin )
00947 yyin = stdin;
00948
00949 if ( ! yyout )
00950 yyout = stdout;
00951
00952 if ( ! YY_CURRENT_BUFFER ) {
00953 yyensure_buffer_stack ();
00954 YY_CURRENT_BUFFER_LVALUE =
00955 yy_create_buffer(yyin,YY_BUF_SIZE );
00956 }
00957
00958 yy_load_buffer_state( );
00959 }
00960
00961 while ( 1 )
00962 {
00963 yy_cp = (yy_c_buf_p);
00964
00965
00966 *yy_cp = (yy_hold_char);
00967
00968
00969
00970
00971 yy_bp = yy_cp;
00972
00973 yy_current_state = (yy_start);
00974 yy_match:
00975 do
00976 {
00977 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
00978 if ( yy_accept[yy_current_state] )
00979 {
00980 (yy_last_accepting_state) = yy_current_state;
00981 (yy_last_accepting_cpos) = yy_cp;
00982 }
00983 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
00984 {
00985 yy_current_state = (int) yy_def[yy_current_state];
00986 if ( yy_current_state >= 390 )
00987 yy_c = yy_meta[(unsigned int) yy_c];
00988 }
00989 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
00990 ++yy_cp;
00991 }
00992 while ( yy_base[yy_current_state] != 479 );
00993
00994 yy_find_action:
00995 yy_act = yy_accept[yy_current_state];
00996 if ( yy_act == 0 )
00997 {
00998 yy_cp = (yy_last_accepting_cpos);
00999 yy_current_state = (yy_last_accepting_state);
01000 yy_act = yy_accept[yy_current_state];
01001 }
01002
01003 YY_DO_BEFORE_ACTION;
01004
01005 if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
01006 {
01007 int yyl;
01008 for ( yyl = 0; yyl < yyleng; ++yyl )
01009 if ( yytext[yyl] == '\n' )
01010
01011 yylineno++;
01012 ;
01013 }
01014
01015 do_action:
01016
01017 switch ( yy_act )
01018 {
01019 case 0:
01020
01021 *yy_cp = (yy_hold_char);
01022 yy_cp = (yy_last_accepting_cpos);
01023 yy_current_state = (yy_last_accepting_state);
01024 goto yy_find_action;
01025
01026 case 1:
01027 YY_RULE_SETUP
01028 #line 27 "parser/faustlexer.l"
01029 BEGIN(comment);
01030 YY_BREAK
01031 case 2:
01032 YY_RULE_SETUP
01033 #line 28 "parser/faustlexer.l"
01034
01035 YY_BREAK
01036 case 3:
01037 YY_RULE_SETUP
01038 #line 29 "parser/faustlexer.l"
01039
01040 YY_BREAK
01041 case 4:
01042
01043 YY_RULE_SETUP
01044 #line 30 "parser/faustlexer.l"
01045
01046 YY_BREAK
01047 case 5:
01048
01049 YY_RULE_SETUP
01050 #line 31 "parser/faustlexer.l"
01051
01052 YY_BREAK
01053 case 6:
01054 YY_RULE_SETUP
01055 #line 32 "parser/faustlexer.l"
01056
01057 YY_BREAK
01058 case 7:
01059 YY_RULE_SETUP
01060 #line 33 "parser/faustlexer.l"
01061 BEGIN(INITIAL);
01062 YY_BREAK
01063 case 8:
01064 YY_RULE_SETUP
01065 #line 35 "parser/faustlexer.l"
01066 { BEGIN(doc); return BDOC; }
01067 YY_BREAK
01068 case 9:
01069 YY_RULE_SETUP
01070 #line 36 "parser/faustlexer.l"
01071 return DOCCHAR;
01072 YY_BREAK
01073 case 10:
01074
01075 YY_RULE_SETUP
01076 #line 37 "parser/faustlexer.l"
01077 return DOCCHAR;
01078 YY_BREAK
01079 case 11:
01080 YY_RULE_SETUP
01081 #line 38 "parser/faustlexer.l"
01082 return NOTICE;
01083 YY_BREAK
01084 case 12:
01085 YY_RULE_SETUP
01086 #line 39 "parser/faustlexer.l"
01087 return NOTICE;
01088 YY_BREAK
01089 case 13:
01090 YY_RULE_SETUP
01091 #line 40 "parser/faustlexer.l"
01092 return NOTICE;
01093 YY_BREAK
01094 case 14:
01095 YY_RULE_SETUP
01096 #line 41 "parser/faustlexer.l"
01097 return LISTING;
01098 YY_BREAK
01099 case 15:
01100 YY_RULE_SETUP
01101 #line 42 "parser/faustlexer.l"
01102 return LISTING;
01103 YY_BREAK
01104 case 16:
01105 YY_RULE_SETUP
01106 #line 43 "parser/faustlexer.l"
01107 return LISTING;
01108 YY_BREAK
01109 case 17:
01110 YY_RULE_SETUP
01111 #line 44 "parser/faustlexer.l"
01112 { BEGIN(INITIAL); return BEQN; }
01113 YY_BREAK
01114 case 18:
01115 YY_RULE_SETUP
01116 #line 45 "parser/faustlexer.l"
01117 { BEGIN(doc); return EEQN; }
01118 YY_BREAK
01119 case 19:
01120 YY_RULE_SETUP
01121 #line 46 "parser/faustlexer.l"
01122 { BEGIN(INITIAL); return BDGM; }
01123 YY_BREAK
01124 case 20:
01125 YY_RULE_SETUP
01126 #line 47 "parser/faustlexer.l"
01127 { BEGIN(doc); return EDGM; }
01128 YY_BREAK
01129 case 21:
01130 YY_RULE_SETUP
01131 #line 48 "parser/faustlexer.l"
01132 { BEGIN(INITIAL); return EDOC; }
01133 YY_BREAK
01134 case 22:
01135 YY_RULE_SETUP
01136 #line 51 "parser/faustlexer.l"
01137 return INT;
01138 YY_BREAK
01139 case 23:
01140 YY_RULE_SETUP
01141 #line 54 "parser/faustlexer.l"
01142 return FLOAT;
01143 YY_BREAK
01144 case 24:
01145 YY_RULE_SETUP
01146 #line 55 "parser/faustlexer.l"
01147 return FLOAT;
01148 YY_BREAK
01149 case 25:
01150 YY_RULE_SETUP
01151 #line 58 "parser/faustlexer.l"
01152 return SEQ;
01153 YY_BREAK
01154 case 26:
01155 YY_RULE_SETUP
01156 #line 59 "parser/faustlexer.l"
01157 return PAR;
01158 YY_BREAK
01159 case 27:
01160 YY_RULE_SETUP
01161 #line 60 "parser/faustlexer.l"
01162 return SPLIT;
01163 YY_BREAK
01164 case 28:
01165 YY_RULE_SETUP
01166 #line 61 "parser/faustlexer.l"
01167 return MIX;
01168 YY_BREAK
01169 case 29:
01170 YY_RULE_SETUP
01171 #line 62 "parser/faustlexer.l"
01172 return MIX;
01173 YY_BREAK
01174 case 30:
01175 YY_RULE_SETUP
01176 #line 63 "parser/faustlexer.l"
01177 return REC;
01178 YY_BREAK
01179 case 31:
01180 YY_RULE_SETUP
01181 #line 65 "parser/faustlexer.l"
01182 return ADD;
01183 YY_BREAK
01184 case 32:
01185 YY_RULE_SETUP
01186 #line 66 "parser/faustlexer.l"
01187 return SUB;
01188 YY_BREAK
01189 case 33:
01190 YY_RULE_SETUP
01191 #line 67 "parser/faustlexer.l"
01192 return MUL;
01193 YY_BREAK
01194 case 34:
01195 YY_RULE_SETUP
01196 #line 68 "parser/faustlexer.l"
01197 return DIV;
01198 YY_BREAK
01199 case 35:
01200 YY_RULE_SETUP
01201 #line 69 "parser/faustlexer.l"
01202 return MOD;
01203 YY_BREAK
01204 case 36:
01205 YY_RULE_SETUP
01206 #line 70 "parser/faustlexer.l"
01207 return FDELAY;
01208 YY_BREAK
01209 case 37:
01210 YY_RULE_SETUP
01211 #line 71 "parser/faustlexer.l"
01212 return DELAY1;
01213 YY_BREAK
01214 case 38:
01215 YY_RULE_SETUP
01216 #line 73 "parser/faustlexer.l"
01217 return AND;
01218 YY_BREAK
01219 case 39:
01220 YY_RULE_SETUP
01221 #line 74 "parser/faustlexer.l"
01222 return OR;
01223 YY_BREAK
01224 case 40:
01225 YY_RULE_SETUP
01226 #line 75 "parser/faustlexer.l"
01227 return XOR;
01228 YY_BREAK
01229 case 41:
01230 YY_RULE_SETUP
01231 #line 77 "parser/faustlexer.l"
01232 return LSH;
01233 YY_BREAK
01234 case 42:
01235 YY_RULE_SETUP
01236 #line 78 "parser/faustlexer.l"
01237 return RSH;
01238 YY_BREAK
01239 case 43:
01240 YY_RULE_SETUP
01241 #line 80 "parser/faustlexer.l"
01242 return LT;
01243 YY_BREAK
01244 case 44:
01245 YY_RULE_SETUP
01246 #line 81 "parser/faustlexer.l"
01247 return LE;
01248 YY_BREAK
01249 case 45:
01250 YY_RULE_SETUP
01251 #line 82 "parser/faustlexer.l"
01252 return GT;
01253 YY_BREAK
01254 case 46:
01255 YY_RULE_SETUP
01256 #line 83 "parser/faustlexer.l"
01257 return GE;
01258 YY_BREAK
01259 case 47:
01260 YY_RULE_SETUP
01261 #line 84 "parser/faustlexer.l"
01262 return EQ;
01263 YY_BREAK
01264 case 48:
01265 YY_RULE_SETUP
01266 #line 85 "parser/faustlexer.l"
01267 return NE;
01268 YY_BREAK
01269 case 49:
01270 YY_RULE_SETUP
01271 #line 87 "parser/faustlexer.l"
01272 return WIRE;
01273 YY_BREAK
01274 case 50:
01275 YY_RULE_SETUP
01276 #line 88 "parser/faustlexer.l"
01277 return CUT;
01278 YY_BREAK
01279 case 51:
01280 YY_RULE_SETUP
01281 #line 90 "parser/faustlexer.l"
01282 return ENDDEF;
01283 YY_BREAK
01284 case 52:
01285 YY_RULE_SETUP
01286 #line 91 "parser/faustlexer.l"
01287 return DEF;
01288 YY_BREAK
01289 case 53:
01290 YY_RULE_SETUP
01291 #line 92 "parser/faustlexer.l"
01292 return LPAR;
01293 YY_BREAK
01294 case 54:
01295 YY_RULE_SETUP
01296 #line 93 "parser/faustlexer.l"
01297 return RPAR;
01298 YY_BREAK
01299 case 55:
01300 YY_RULE_SETUP
01301 #line 94 "parser/faustlexer.l"
01302 return LBRAQ;
01303 YY_BREAK
01304 case 56:
01305 YY_RULE_SETUP
01306 #line 95 "parser/faustlexer.l"
01307 return RBRAQ;
01308 YY_BREAK
01309 case 57:
01310 YY_RULE_SETUP
01311 #line 97 "parser/faustlexer.l"
01312 return LAMBDA;
01313 YY_BREAK
01314 case 58:
01315 YY_RULE_SETUP
01316 #line 98 "parser/faustlexer.l"
01317 return DOT;
01318 YY_BREAK
01319 case 59:
01320 YY_RULE_SETUP
01321 #line 99 "parser/faustlexer.l"
01322 return WITH;
01323 YY_BREAK
01324 case 60:
01325 YY_RULE_SETUP
01326 #line 101 "parser/faustlexer.l"
01327 return MEM;
01328 YY_BREAK
01329 case 61:
01330 YY_RULE_SETUP
01331 #line 102 "parser/faustlexer.l"
01332 return PREFIX;
01333 YY_BREAK
01334 case 62:
01335 YY_RULE_SETUP
01336 #line 104 "parser/faustlexer.l"
01337 return INTCAST;
01338 YY_BREAK
01339 case 63:
01340 YY_RULE_SETUP
01341 #line 105 "parser/faustlexer.l"
01342 return FLOATCAST;
01343 YY_BREAK
01344 case 64:
01345 YY_RULE_SETUP
01346 #line 107 "parser/faustlexer.l"
01347 return RDTBL;
01348 YY_BREAK
01349 case 65:
01350 YY_RULE_SETUP
01351 #line 108 "parser/faustlexer.l"
01352 return RWTBL;
01353 YY_BREAK
01354 case 66:
01355 YY_RULE_SETUP
01356 #line 110 "parser/faustlexer.l"
01357 return SELECT2;
01358 YY_BREAK
01359 case 67:
01360 YY_RULE_SETUP
01361 #line 111 "parser/faustlexer.l"
01362 return SELECT3;
01363 YY_BREAK
01364 case 68:
01365 YY_RULE_SETUP
01366 #line 113 "parser/faustlexer.l"
01367 return FFUNCTION;
01368 YY_BREAK
01369 case 69:
01370 YY_RULE_SETUP
01371 #line 114 "parser/faustlexer.l"
01372 return FCONSTANT;
01373 YY_BREAK
01374 case 70:
01375 YY_RULE_SETUP
01376 #line 115 "parser/faustlexer.l"
01377 return FVARIABLE;
01378 YY_BREAK
01379 case 71:
01380 YY_RULE_SETUP
01381 #line 117 "parser/faustlexer.l"
01382 return BUTTON;
01383 YY_BREAK
01384 case 72:
01385 YY_RULE_SETUP
01386 #line 118 "parser/faustlexer.l"
01387 return CHECKBOX;
01388 YY_BREAK
01389 case 73:
01390 YY_RULE_SETUP
01391 #line 119 "parser/faustlexer.l"
01392 return VSLIDER;
01393 YY_BREAK
01394 case 74:
01395 YY_RULE_SETUP
01396 #line 120 "parser/faustlexer.l"
01397 return HSLIDER;
01398 YY_BREAK
01399 case 75:
01400 YY_RULE_SETUP
01401 #line 121 "parser/faustlexer.l"
01402 return NENTRY;
01403 YY_BREAK
01404 case 76:
01405 YY_RULE_SETUP
01406 #line 122 "parser/faustlexer.l"
01407 return VGROUP;
01408 YY_BREAK
01409 case 77:
01410 YY_RULE_SETUP
01411 #line 123 "parser/faustlexer.l"
01412 return HGROUP;
01413 YY_BREAK
01414 case 78:
01415 YY_RULE_SETUP
01416 #line 124 "parser/faustlexer.l"
01417 return TGROUP;
01418 YY_BREAK
01419 case 79:
01420 YY_RULE_SETUP
01421 #line 125 "parser/faustlexer.l"
01422 return VBARGRAPH;
01423 YY_BREAK
01424 case 80:
01425 YY_RULE_SETUP
01426 #line 126 "parser/faustlexer.l"
01427 return HBARGRAPH;
01428 YY_BREAK
01429 case 81:
01430 YY_RULE_SETUP
01431 #line 127 "parser/faustlexer.l"
01432 return ATTACH;
01433 YY_BREAK
01434 case 82:
01435 YY_RULE_SETUP
01436 #line 129 "parser/faustlexer.l"
01437 return ACOS;
01438 YY_BREAK
01439 case 83:
01440 YY_RULE_SETUP
01441 #line 130 "parser/faustlexer.l"
01442 return ASIN;
01443 YY_BREAK
01444 case 84:
01445 YY_RULE_SETUP
01446 #line 131 "parser/faustlexer.l"
01447 return ATAN;
01448 YY_BREAK
01449 case 85:
01450 YY_RULE_SETUP
01451 #line 132 "parser/faustlexer.l"
01452 return ATAN2;
01453 YY_BREAK
01454 case 86:
01455 YY_RULE_SETUP
01456 #line 134 "parser/faustlexer.l"
01457 return COS;
01458 YY_BREAK
01459 case 87:
01460 YY_RULE_SETUP
01461 #line 135 "parser/faustlexer.l"
01462 return SIN;
01463 YY_BREAK
01464 case 88:
01465 YY_RULE_SETUP
01466 #line 136 "parser/faustlexer.l"
01467 return TAN;
01468 YY_BREAK
01469 case 89:
01470 YY_RULE_SETUP
01471 #line 138 "parser/faustlexer.l"
01472 return EXP;
01473 YY_BREAK
01474 case 90:
01475 YY_RULE_SETUP
01476 #line 139 "parser/faustlexer.l"
01477 return LOG;
01478 YY_BREAK
01479 case 91:
01480 YY_RULE_SETUP
01481 #line 140 "parser/faustlexer.l"
01482 return LOG10;
01483 YY_BREAK
01484 case 92:
01485 YY_RULE_SETUP
01486 #line 141 "parser/faustlexer.l"
01487 return POWOP;
01488 YY_BREAK
01489 case 93:
01490 YY_RULE_SETUP
01491 #line 142 "parser/faustlexer.l"
01492 return POWFUN;
01493 YY_BREAK
01494 case 94:
01495 YY_RULE_SETUP
01496 #line 143 "parser/faustlexer.l"
01497 return SQRT;
01498 YY_BREAK
01499 case 95:
01500 YY_RULE_SETUP
01501 #line 145 "parser/faustlexer.l"
01502 return ABS;
01503 YY_BREAK
01504 case 96:
01505 YY_RULE_SETUP
01506 #line 146 "parser/faustlexer.l"
01507 return MIN;
01508 YY_BREAK
01509 case 97:
01510 YY_RULE_SETUP
01511 #line 147 "parser/faustlexer.l"
01512 return MAX;
01513 YY_BREAK
01514 case 98:
01515 YY_RULE_SETUP
01516 #line 149 "parser/faustlexer.l"
01517 return FMOD;
01518 YY_BREAK
01519 case 99:
01520 YY_RULE_SETUP
01521 #line 150 "parser/faustlexer.l"
01522 return REMAINDER;
01523 YY_BREAK
01524 case 100:
01525 YY_RULE_SETUP
01526 #line 152 "parser/faustlexer.l"
01527 return FLOOR;
01528 YY_BREAK
01529 case 101:
01530 YY_RULE_SETUP
01531 #line 153 "parser/faustlexer.l"
01532 return CEIL;
01533 YY_BREAK
01534 case 102:
01535 YY_RULE_SETUP
01536 #line 154 "parser/faustlexer.l"
01537 return RINT;
01538 YY_BREAK
01539 case 103:
01540 YY_RULE_SETUP
01541 #line 156 "parser/faustlexer.l"
01542 return ISEQ;
01543 YY_BREAK
01544 case 104:
01545 YY_RULE_SETUP
01546 #line 157 "parser/faustlexer.l"
01547 return IPAR;
01548 YY_BREAK
01549 case 105:
01550 YY_RULE_SETUP
01551 #line 158 "parser/faustlexer.l"
01552 return ISUM;
01553 YY_BREAK
01554 case 106:
01555 YY_RULE_SETUP
01556 #line 159 "parser/faustlexer.l"
01557 return IPROD;
01558 YY_BREAK
01559 case 107:
01560 YY_RULE_SETUP
01561 #line 161 "parser/faustlexer.l"
01562 return IMPORT;
01563 YY_BREAK
01564 case 108:
01565 YY_RULE_SETUP
01566 #line 162 "parser/faustlexer.l"
01567 return COMPONENT;
01568 YY_BREAK
01569 case 109:
01570 YY_RULE_SETUP
01571 #line 163 "parser/faustlexer.l"
01572 return LIBRARY;
01573 YY_BREAK
01574 case 110:
01575 YY_RULE_SETUP
01576 #line 164 "parser/faustlexer.l"
01577 return ENVIRONMENT;
01578 YY_BREAK
01579 case 111:
01580 YY_RULE_SETUP
01581 #line 166 "parser/faustlexer.l"
01582 return DECLARE;
01583 YY_BREAK
01584 case 112:
01585 YY_RULE_SETUP
01586 #line 168 "parser/faustlexer.l"
01587 return CASE;
01588 YY_BREAK
01589 case 113:
01590 YY_RULE_SETUP
01591 #line 169 "parser/faustlexer.l"
01592 return ARROW;
01593 YY_BREAK
01594 case 114:
01595 YY_RULE_SETUP
01596 #line 171 "parser/faustlexer.l"
01597 return IDENT;
01598 YY_BREAK
01599 case 115:
01600 YY_RULE_SETUP
01601 #line 172 "parser/faustlexer.l"
01602 return IDENT;
01603 YY_BREAK
01604 case 116:
01605
01606 YY_RULE_SETUP
01607 #line 174 "parser/faustlexer.l"
01608 return STRING;
01609 YY_BREAK
01610 case 117:
01611 YY_RULE_SETUP
01612 #line 176 "parser/faustlexer.l"
01613 return FSTRING;
01614 YY_BREAK
01615 case 118:
01616 YY_RULE_SETUP
01617 #line 177 "parser/faustlexer.l"
01618 return FSTRING;
01619 YY_BREAK
01620 case 119:
01621 YY_RULE_SETUP
01622 #line 180 "parser/faustlexer.l"
01623
01624 YY_BREAK
01625 case 120:
01626
01627 YY_RULE_SETUP
01628 #line 182 "parser/faustlexer.l"
01629
01630 YY_BREAK
01631 case YY_STATE_EOF(INITIAL):
01632 case YY_STATE_EOF(comment):
01633 case YY_STATE_EOF(doc):
01634 #line 184 "parser/faustlexer.l"
01635 yyterminate();
01636 YY_BREAK
01637 case 121:
01638 YY_RULE_SETUP
01639 #line 186 "parser/faustlexer.l"
01640 printf("extra text is : %s\n", yytext); return EXTRA;
01641 YY_BREAK
01642 case 122:
01643 YY_RULE_SETUP
01644 #line 189 "parser/faustlexer.l"
01645 ECHO;
01646 YY_BREAK
01647 #line 1648 "parser/faustlexer.cpp"
01648
01649 case YY_END_OF_BUFFER:
01650 {
01651
01652 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
01653
01654
01655 *yy_cp = (yy_hold_char);
01656 YY_RESTORE_YY_MORE_OFFSET
01657
01658 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
01659 {
01660
01661
01662
01663
01664
01665
01666
01667
01668
01669 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
01670 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
01671 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
01672 }
01673
01674
01675
01676
01677
01678
01679
01680
01681 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
01682 {
01683 yy_state_type yy_next_state;
01684
01685 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
01686
01687 yy_current_state = yy_get_previous_state( );
01688
01689
01690
01691
01692
01693
01694
01695
01696
01697
01698 yy_next_state = yy_try_NUL_trans( yy_current_state );
01699
01700 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
01701
01702 if ( yy_next_state )
01703 {
01704
01705 yy_cp = ++(yy_c_buf_p);
01706 yy_current_state = yy_next_state;
01707 goto yy_match;
01708 }
01709
01710 else
01711 {
01712 yy_cp = (yy_c_buf_p);
01713 goto yy_find_action;
01714 }
01715 }
01716
01717 else switch ( yy_get_next_buffer( ) )
01718 {
01719 case EOB_ACT_END_OF_FILE:
01720 {
01721 (yy_did_buffer_switch_on_eof) = 0;
01722
01723 if ( yywrap( ) )
01724 {
01725
01726
01727
01728
01729
01730
01731
01732
01733
01734 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
01735
01736 yy_act = YY_STATE_EOF(YY_START);
01737 goto do_action;
01738 }
01739
01740 else
01741 {
01742 if ( ! (yy_did_buffer_switch_on_eof) )
01743 YY_NEW_FILE;
01744 }
01745 break;
01746 }
01747
01748 case EOB_ACT_CONTINUE_SCAN:
01749 (yy_c_buf_p) =
01750 (yytext_ptr) + yy_amount_of_matched_text;
01751
01752 yy_current_state = yy_get_previous_state( );
01753
01754 yy_cp = (yy_c_buf_p);
01755 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
01756 goto yy_match;
01757
01758 case EOB_ACT_LAST_MATCH:
01759 (yy_c_buf_p) =
01760 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
01761
01762 yy_current_state = yy_get_previous_state( );
01763
01764 yy_cp = (yy_c_buf_p);
01765 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
01766 goto yy_find_action;
01767 }
01768 break;
01769 }
01770
01771 default:
01772 YY_FATAL_ERROR(
01773 "fatal flex scanner internal error--no action found" );
01774 }
01775 }
01776 }
01777
01778
01779
01780
01781
01782
01783
01784
01785 static int yy_get_next_buffer (void)
01786 {
01787 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
01788 register char *source = (yytext_ptr);
01789 register int number_to_move, i;
01790 int ret_val;
01791
01792 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
01793 YY_FATAL_ERROR(
01794 "fatal flex scanner internal error--end of buffer missed" );
01795
01796 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
01797 {
01798 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
01799 {
01800
01801
01802
01803 return EOB_ACT_END_OF_FILE;
01804 }
01805
01806 else
01807 {
01808
01809
01810
01811 return EOB_ACT_LAST_MATCH;
01812 }
01813 }
01814
01815
01816
01817
01818 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
01819
01820 for ( i = 0; i < number_to_move; ++i )
01821 *(dest++) = *(source++);
01822
01823 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
01824
01825
01826
01827 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
01828
01829 else
01830 {
01831 int num_to_read =
01832 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
01833
01834 while ( num_to_read <= 0 )
01835 {
01836
01837
01838 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
01839
01840 int yy_c_buf_p_offset =
01841 (int) ((yy_c_buf_p) - b->yy_ch_buf);
01842
01843 if ( b->yy_is_our_buffer )
01844 {
01845 int new_size = b->yy_buf_size * 2;
01846
01847 if ( new_size <= 0 )
01848 b->yy_buf_size += b->yy_buf_size / 8;
01849 else
01850 b->yy_buf_size *= 2;
01851
01852 b->yy_ch_buf = (char *)
01853
01854 yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
01855 }
01856 else
01857
01858 b->yy_ch_buf = 0;
01859
01860 if ( ! b->yy_ch_buf )
01861 YY_FATAL_ERROR(
01862 "fatal error - scanner input buffer overflow" );
01863
01864 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
01865
01866 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
01867 number_to_move - 1;
01868
01869 }
01870
01871 if ( num_to_read > YY_READ_BUF_SIZE )
01872 num_to_read = YY_READ_BUF_SIZE;
01873
01874
01875 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
01876 (yy_n_chars), (size_t) num_to_read );
01877
01878 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
01879 }
01880
01881 if ( (yy_n_chars) == 0 )
01882 {
01883 if ( number_to_move == YY_MORE_ADJ )
01884 {
01885 ret_val = EOB_ACT_END_OF_FILE;
01886 yyrestart(yyin );
01887 }
01888
01889 else
01890 {
01891 ret_val = EOB_ACT_LAST_MATCH;
01892 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
01893 YY_BUFFER_EOF_PENDING;
01894 }
01895 }
01896
01897 else
01898 ret_val = EOB_ACT_CONTINUE_SCAN;
01899
01900 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
01901
01902 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
01903 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
01904 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
01905 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
01906 }
01907
01908 (yy_n_chars) += number_to_move;
01909 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
01910 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
01911
01912 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
01913
01914 return ret_val;
01915 }
01916
01917
01918
01919 static yy_state_type yy_get_previous_state (void)
01920 {
01921 register yy_state_type yy_current_state;
01922 register char *yy_cp;
01923
01924 yy_current_state = (yy_start);
01925
01926 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
01927 {
01928 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
01929 if ( yy_accept[yy_current_state] )
01930 {
01931 (yy_last_accepting_state) = yy_current_state;
01932 (yy_last_accepting_cpos) = yy_cp;
01933 }
01934 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
01935 {
01936 yy_current_state = (int) yy_def[yy_current_state];
01937 if ( yy_current_state >= 390 )
01938 yy_c = yy_meta[(unsigned int) yy_c];
01939 }
01940 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
01941 }
01942
01943 return yy_current_state;
01944 }
01945
01946
01947
01948
01949
01950
01951 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
01952 {
01953 register int yy_is_jam;
01954 register char *yy_cp = (yy_c_buf_p);
01955
01956 register YY_CHAR yy_c = 1;
01957 if ( yy_accept[yy_current_state] )
01958 {
01959 (yy_last_accepting_state) = yy_current_state;
01960 (yy_last_accepting_cpos) = yy_cp;
01961 }
01962 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
01963 {
01964 yy_current_state = (int) yy_def[yy_current_state];
01965 if ( yy_current_state >= 390 )
01966 yy_c = yy_meta[(unsigned int) yy_c];
01967 }
01968 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
01969 yy_is_jam = (yy_current_state == 389);
01970
01971 return yy_is_jam ? 0 : yy_current_state;
01972 }
01973
01974 static void yyunput (int c, register char * yy_bp )
01975 {
01976 register char *yy_cp;
01977
01978 yy_cp = (yy_c_buf_p);
01979
01980
01981 *yy_cp = (yy_hold_char);
01982
01983 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
01984 {
01985
01986 register int number_to_move = (yy_n_chars) + 2;
01987 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
01988 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
01989 register char *source =
01990 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
01991
01992 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
01993 *--dest = *--source;
01994
01995 yy_cp += (int) (dest - source);
01996 yy_bp += (int) (dest - source);
01997 YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
01998 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
01999
02000 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
02001 YY_FATAL_ERROR( "flex scanner push-back overflow" );
02002 }
02003
02004 *--yy_cp = (char) c;
02005
02006 if ( c == '\n' ){
02007 --yylineno;
02008 }
02009
02010 (yytext_ptr) = yy_bp;
02011 (yy_hold_char) = *yy_cp;
02012 (yy_c_buf_p) = yy_cp;
02013 }
02014
02015 #ifndef YY_NO_INPUT
02016 #ifdef __cplusplus
02017 static int yyinput (void)
02018 #else
02019 static int input (void)
02020 #endif
02021
02022 {
02023 int c;
02024
02025 *(yy_c_buf_p) = (yy_hold_char);
02026
02027 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
02028 {
02029
02030
02031
02032
02033 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
02034
02035 *(yy_c_buf_p) = '\0';
02036
02037 else
02038 {
02039 int offset = (yy_c_buf_p) - (yytext_ptr);
02040 ++(yy_c_buf_p);
02041
02042 switch ( yy_get_next_buffer( ) )
02043 {
02044 case EOB_ACT_LAST_MATCH:
02045
02046
02047
02048
02049
02050
02051
02052
02053
02054
02055
02056 yyrestart(yyin );
02057
02058
02059
02060 case EOB_ACT_END_OF_FILE:
02061 {
02062 if ( yywrap( ) )
02063 return EOF;
02064
02065 if ( ! (yy_did_buffer_switch_on_eof) )
02066 YY_NEW_FILE;
02067 #ifdef __cplusplus
02068 return yyinput();
02069 #else
02070 return input();
02071 #endif
02072 }
02073
02074 case EOB_ACT_CONTINUE_SCAN:
02075 (yy_c_buf_p) = (yytext_ptr) + offset;
02076 break;
02077 }
02078 }
02079 }
02080
02081 c = *(unsigned char *) (yy_c_buf_p);
02082 *(yy_c_buf_p) = '\0';
02083 (yy_hold_char) = *++(yy_c_buf_p);
02084
02085 if ( c == '\n' )
02086
02087 yylineno++;
02088 ;
02089
02090 return c;
02091 }
02092 #endif
02093
02099 void yyrestart (FILE * input_file )
02100 {
02101
02102 if ( ! YY_CURRENT_BUFFER ){
02103 yyensure_buffer_stack ();
02104 YY_CURRENT_BUFFER_LVALUE =
02105 yy_create_buffer(yyin,YY_BUF_SIZE );
02106 }
02107
02108 yy_init_buffer(YY_CURRENT_BUFFER,input_file );
02109 yy_load_buffer_state( );
02110 }
02111
02116 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer )
02117 {
02118
02119
02120
02121
02122
02123
02124 yyensure_buffer_stack ();
02125 if ( YY_CURRENT_BUFFER == new_buffer )
02126 return;
02127
02128 if ( YY_CURRENT_BUFFER )
02129 {
02130
02131 *(yy_c_buf_p) = (yy_hold_char);
02132 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
02133 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
02134 }
02135
02136 YY_CURRENT_BUFFER_LVALUE = new_buffer;
02137 yy_load_buffer_state( );
02138
02139
02140
02141
02142
02143
02144 (yy_did_buffer_switch_on_eof) = 1;
02145 }
02146
02147 static void yy_load_buffer_state (void)
02148 {
02149 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
02150 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
02151 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
02152 (yy_hold_char) = *(yy_c_buf_p);
02153 }
02154
02161 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size )
02162 {
02163 YY_BUFFER_STATE b;
02164
02165 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
02166 if ( ! b )
02167 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
02168
02169 b->yy_buf_size = size;
02170
02171
02172
02173
02174 b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 );
02175 if ( ! b->yy_ch_buf )
02176 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
02177
02178 b->yy_is_our_buffer = 1;
02179
02180 yy_init_buffer(b,file );
02181
02182 return b;
02183 }
02184
02189 void yy_delete_buffer (YY_BUFFER_STATE b )
02190 {
02191
02192 if ( ! b )
02193 return;
02194
02195 if ( b == YY_CURRENT_BUFFER )
02196 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
02197
02198 if ( b->yy_is_our_buffer )
02199 yyfree((void *) b->yy_ch_buf );
02200
02201 yyfree((void *) b );
02202 }
02203
02204 #ifndef __cplusplus
02205 extern int isatty (int );
02206 #endif
02207
02208
02209
02210
02211
02212 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file )
02213
02214 {
02215 int oerrno = errno;
02216
02217 yy_flush_buffer(b );
02218
02219 b->yy_input_file = file;
02220 b->yy_fill_buffer = 1;
02221
02222
02223
02224
02225
02226 if (b != YY_CURRENT_BUFFER){
02227 b->yy_bs_lineno = 1;
02228 b->yy_bs_column = 0;
02229 }
02230
02231 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
02232
02233 errno = oerrno;
02234 }
02235
02240 void yy_flush_buffer (YY_BUFFER_STATE b )
02241 {
02242 if ( ! b )
02243 return;
02244
02245 b->yy_n_chars = 0;
02246
02247
02248
02249
02250
02251 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
02252 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
02253
02254 b->yy_buf_pos = &b->yy_ch_buf[0];
02255
02256 b->yy_at_bol = 1;
02257 b->yy_buffer_status = YY_BUFFER_NEW;
02258
02259 if ( b == YY_CURRENT_BUFFER )
02260 yy_load_buffer_state( );
02261 }
02262
02269 void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
02270 {
02271 if (new_buffer == NULL)
02272 return;
02273
02274 yyensure_buffer_stack();
02275
02276
02277 if ( YY_CURRENT_BUFFER )
02278 {
02279
02280 *(yy_c_buf_p) = (yy_hold_char);
02281 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
02282 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
02283 }
02284
02285
02286 if (YY_CURRENT_BUFFER)
02287 (yy_buffer_stack_top)++;
02288 YY_CURRENT_BUFFER_LVALUE = new_buffer;
02289
02290
02291 yy_load_buffer_state( );
02292 (yy_did_buffer_switch_on_eof) = 1;
02293 }
02294
02299 void yypop_buffer_state (void)
02300 {
02301 if (!YY_CURRENT_BUFFER)
02302 return;
02303
02304 yy_delete_buffer(YY_CURRENT_BUFFER );
02305 YY_CURRENT_BUFFER_LVALUE = NULL;
02306 if ((yy_buffer_stack_top) > 0)
02307 --(yy_buffer_stack_top);
02308
02309 if (YY_CURRENT_BUFFER) {
02310 yy_load_buffer_state( );
02311 (yy_did_buffer_switch_on_eof) = 1;
02312 }
02313 }
02314
02315
02316
02317
02318 static void yyensure_buffer_stack (void)
02319 {
02320 int num_to_alloc;
02321
02322 if (!(yy_buffer_stack)) {
02323
02324
02325
02326
02327
02328 num_to_alloc = 1;
02329 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
02330 (num_to_alloc * sizeof(struct yy_buffer_state*)
02331 );
02332 if ( ! (yy_buffer_stack) )
02333 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
02334
02335 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
02336
02337 (yy_buffer_stack_max) = num_to_alloc;
02338 (yy_buffer_stack_top) = 0;
02339 return;
02340 }
02341
02342 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
02343
02344
02345 int grow_size = 8 ;
02346
02347 num_to_alloc = (yy_buffer_stack_max) + grow_size;
02348 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
02349 ((yy_buffer_stack),
02350 num_to_alloc * sizeof(struct yy_buffer_state*)
02351 );
02352 if ( ! (yy_buffer_stack) )
02353 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
02354
02355
02356 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
02357 (yy_buffer_stack_max) = num_to_alloc;
02358 }
02359 }
02360
02367 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size )
02368 {
02369 YY_BUFFER_STATE b;
02370
02371 if ( size < 2 ||
02372 base[size-2] != YY_END_OF_BUFFER_CHAR ||
02373 base[size-1] != YY_END_OF_BUFFER_CHAR )
02374
02375 return 0;
02376
02377 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
02378 if ( ! b )
02379 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
02380
02381 b->yy_buf_size = size - 2;
02382 b->yy_buf_pos = b->yy_ch_buf = base;
02383 b->yy_is_our_buffer = 0;
02384 b->yy_input_file = 0;
02385 b->yy_n_chars = b->yy_buf_size;
02386 b->yy_is_interactive = 0;
02387 b->yy_at_bol = 1;
02388 b->yy_fill_buffer = 0;
02389 b->yy_buffer_status = YY_BUFFER_NEW;
02390
02391 yy_switch_to_buffer(b );
02392
02393 return b;
02394 }
02395
02404 YY_BUFFER_STATE yy_scan_string (yyconst char * yystr )
02405 {
02406
02407 return yy_scan_bytes(yystr,strlen(yystr) );
02408 }
02409
02417 YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, int _yybytes_len )
02418 {
02419 YY_BUFFER_STATE b;
02420 char *buf;
02421 yy_size_t n;
02422 int i;
02423
02424
02425 n = _yybytes_len + 2;
02426 buf = (char *) yyalloc(n );
02427 if ( ! buf )
02428 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
02429
02430 for ( i = 0; i < _yybytes_len; ++i )
02431 buf[i] = yybytes[i];
02432
02433 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
02434
02435 b = yy_scan_buffer(buf,n );
02436 if ( ! b )
02437 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
02438
02439
02440
02441
02442 b->yy_is_our_buffer = 1;
02443
02444 return b;
02445 }
02446
02447 #ifndef YY_EXIT_FAILURE
02448 #define YY_EXIT_FAILURE 2
02449 #endif
02450
02451 static void yy_fatal_error (yyconst char* msg )
02452 {
02453 (void) fprintf( stderr, "%s\n", msg );
02454 exit( YY_EXIT_FAILURE );
02455 }
02456
02457
02458
02459 #undef yyless
02460 #define yyless(n) \
02461 do \
02462 { \
02463 \
02464 int yyless_macro_arg = (n); \
02465 YY_LESS_LINENO(yyless_macro_arg);\
02466 yytext[yyleng] = (yy_hold_char); \
02467 (yy_c_buf_p) = yytext + yyless_macro_arg; \
02468 (yy_hold_char) = *(yy_c_buf_p); \
02469 *(yy_c_buf_p) = '\0'; \
02470 yyleng = yyless_macro_arg; \
02471 } \
02472 while ( 0 )
02473
02474
02475
02479 int yyget_lineno (void)
02480 {
02481
02482 return yylineno;
02483 }
02484
02488 FILE *yyget_in (void)
02489 {
02490 return yyin;
02491 }
02492
02496 FILE *yyget_out (void)
02497 {
02498 return yyout;
02499 }
02500
02504 int yyget_leng (void)
02505 {
02506 return yyleng;
02507 }
02508
02513 char *yyget_text (void)
02514 {
02515 return yytext;
02516 }
02517
02522 void yyset_lineno (int line_number )
02523 {
02524
02525 yylineno = line_number;
02526 }
02527
02534 void yyset_in (FILE * in_str )
02535 {
02536 yyin = in_str ;
02537 }
02538
02539 void yyset_out (FILE * out_str )
02540 {
02541 yyout = out_str ;
02542 }
02543
02544 int yyget_debug (void)
02545 {
02546 return yy_flex_debug;
02547 }
02548
02549 void yyset_debug (int bdebug )
02550 {
02551 yy_flex_debug = bdebug ;
02552 }
02553
02554 static int yy_init_globals (void)
02555 {
02556
02557
02558
02559
02560
02561 yylineno = 1;
02562
02563 (yy_buffer_stack) = 0;
02564 (yy_buffer_stack_top) = 0;
02565 (yy_buffer_stack_max) = 0;
02566 (yy_c_buf_p) = (char *) 0;
02567 (yy_init) = 0;
02568 (yy_start) = 0;
02569
02570
02571 #ifdef YY_STDINIT
02572 yyin = stdin;
02573 yyout = stdout;
02574 #else
02575 yyin = (FILE *) 0;
02576 yyout = (FILE *) 0;
02577 #endif
02578
02579
02580
02581
02582 return 0;
02583 }
02584
02585
02586 int yylex_destroy (void)
02587 {
02588
02589
02590 while(YY_CURRENT_BUFFER){
02591 yy_delete_buffer(YY_CURRENT_BUFFER );
02592 YY_CURRENT_BUFFER_LVALUE = NULL;
02593 yypop_buffer_state();
02594 }
02595
02596
02597 yyfree((yy_buffer_stack) );
02598 (yy_buffer_stack) = NULL;
02599
02600
02601
02602 yy_init_globals( );
02603
02604 return 0;
02605 }
02606
02607
02608
02609
02610
02611 #ifndef yytext_ptr
02612 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
02613 {
02614 register int i;
02615 for ( i = 0; i < n; ++i )
02616 s1[i] = s2[i];
02617 }
02618 #endif
02619
02620 #ifdef YY_NEED_STRLEN
02621 static int yy_flex_strlen (yyconst char * s )
02622 {
02623 register int n;
02624 for ( n = 0; s[n]; ++n )
02625 ;
02626
02627 return n;
02628 }
02629 #endif
02630
02631 void *yyalloc (yy_size_t size )
02632 {
02633 return (void *) malloc( size );
02634 }
02635
02636 void *yyrealloc (void * ptr, yy_size_t size )
02637 {
02638
02639
02640
02641
02642
02643
02644
02645 return (void *) realloc( (char *) ptr, size );
02646 }
02647
02648 void yyfree (void * ptr )
02649 {
02650 free( (char *) ptr );
02651 }
02652
02653 #define YYTABLES_NAME "yytables"
02654
02655 #line 189 "parser/faustlexer.l"
02656
02657
02658 int yywrap() { return 1; }
02659
02660