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