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