00001 #line 2 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.cpp"
00002
00003 #line 4 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.cpp"
00004
00005 #define YY_INT_ALIGNED short int
00006
00007
00008
00009 #define FLEX_SCANNER
00010 #define YY_FLEX_MAJOR_VERSION 2
00011 #define YY_FLEX_MINOR_VERSION 5
00012 #define YY_FLEX_SUBMINOR_VERSION 35
00013 #if YY_FLEX_SUBMINOR_VERSION > 0
00014 #define FLEX_BETA
00015 #endif
00016
00017
00018
00019
00020 #include <stdio.h>
00021 #include <string.h>
00022 #include <errno.h>
00023 #include <stdlib.h>
00024
00025
00026
00027
00028
00029 #ifndef FLEXINT_H
00030 #define FLEXINT_H
00031
00032
00033
00034 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
00035
00036
00037
00038
00039 #ifndef __STDC_LIMIT_MACROS
00040 #define __STDC_LIMIT_MACROS 1
00041 #endif
00042
00043 #include <inttypes.h>
00044 typedef int8_t flex_int8_t;
00045 typedef uint8_t flex_uint8_t;
00046 typedef int16_t flex_int16_t;
00047 typedef uint16_t flex_uint16_t;
00048 typedef int32_t flex_int32_t;
00049 typedef uint32_t flex_uint32_t;
00050 #else
00051 typedef signed char flex_int8_t;
00052 typedef short int flex_int16_t;
00053 typedef int flex_int32_t;
00054 typedef unsigned char flex_uint8_t;
00055 typedef unsigned short int flex_uint16_t;
00056 typedef unsigned int flex_uint32_t;
00057
00058
00059 #ifndef INT8_MIN
00060 #define INT8_MIN (-128)
00061 #endif
00062 #ifndef INT16_MIN
00063 #define INT16_MIN (-32767-1)
00064 #endif
00065 #ifndef INT32_MIN
00066 #define INT32_MIN (-2147483647-1)
00067 #endif
00068 #ifndef INT8_MAX
00069 #define INT8_MAX (127)
00070 #endif
00071 #ifndef INT16_MAX
00072 #define INT16_MAX (32767)
00073 #endif
00074 #ifndef INT32_MAX
00075 #define INT32_MAX (2147483647)
00076 #endif
00077 #ifndef UINT8_MAX
00078 #define UINT8_MAX (255U)
00079 #endif
00080 #ifndef UINT16_MAX
00081 #define UINT16_MAX (65535U)
00082 #endif
00083 #ifndef UINT32_MAX
00084 #define UINT32_MAX (4294967295U)
00085 #endif
00086
00087 #endif
00088
00089 #endif
00090
00091 #ifdef __cplusplus
00092
00093
00094 #define YY_USE_CONST
00095
00096 #else
00097
00098
00099 #if defined (__STDC__)
00100
00101 #define YY_USE_CONST
00102
00103 #endif
00104 #endif
00105
00106 #ifdef YY_USE_CONST
00107 #define yyconst const
00108 #else
00109 #define yyconst
00110 #endif
00111
00112
00113 #define YY_NULL 0
00114
00115
00116
00117
00118
00119
00120 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
00121
00122
00123 #ifndef YY_TYPEDEF_YY_SCANNER_T
00124 #define YY_TYPEDEF_YY_SCANNER_T
00125 typedef void* yyscan_t;
00126 #endif
00127
00128
00129
00130 #define yyin yyg->yyin_r
00131 #define yyout yyg->yyout_r
00132 #define yyextra yyg->yyextra_r
00133 #define yyleng yyg->yyleng_r
00134 #define yytext yyg->yytext_r
00135 #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
00136 #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
00137 #define yy_flex_debug yyg->yy_flex_debug_r
00138
00139
00140
00141
00142
00143 #define BEGIN yyg->yy_start = 1 + 2 *
00144
00145
00146
00147
00148
00149 #define YY_START ((yyg->yy_start - 1) / 2)
00150 #define YYSTATE YY_START
00151
00152
00153 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
00154
00155
00156 #define YY_NEW_FILE osilrestart(yyin ,yyscanner )
00157
00158 #define YY_END_OF_BUFFER_CHAR 0
00159
00160
00161 #ifndef YY_BUF_SIZE
00162 #ifdef __ia64__
00163
00164
00165
00166
00167 #define YY_BUF_SIZE 32768
00168 #else
00169 #define YY_BUF_SIZE 16384
00170 #endif
00171 #endif
00172
00173
00174
00175 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
00176
00177 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
00178 #define YY_TYPEDEF_YY_BUFFER_STATE
00179 typedef struct yy_buffer_state *YY_BUFFER_STATE;
00180 #endif
00181
00182 #define EOB_ACT_CONTINUE_SCAN 0
00183 #define EOB_ACT_END_OF_FILE 1
00184 #define EOB_ACT_LAST_MATCH 2
00185
00186
00187
00188
00189
00190
00191
00192
00193 #define YY_LESS_LINENO(n) \
00194 do { \
00195 int yyl;\
00196 for ( yyl = n; yyl < yyleng; ++yyl )\
00197 if ( yytext[yyl] == '\n' )\
00198 --yylineno;\
00199 }while(0)
00200
00201
00202 #define yyless(n) \
00203 do \
00204 { \
00205 \
00206 int yyless_macro_arg = (n); \
00207 YY_LESS_LINENO(yyless_macro_arg);\
00208 *yy_cp = yyg->yy_hold_char; \
00209 YY_RESTORE_YY_MORE_OFFSET \
00210 yyg->yy_c_buf_p = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
00211 YY_DO_BEFORE_ACTION; \
00212 } \
00213 while ( 0 )
00214
00215 #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
00216
00217 #ifndef YY_TYPEDEF_YY_SIZE_T
00218 #define YY_TYPEDEF_YY_SIZE_T
00219 typedef size_t yy_size_t;
00220 #endif
00221
00222 #ifndef YY_STRUCT_YY_BUFFER_STATE
00223 #define YY_STRUCT_YY_BUFFER_STATE
00224 struct yy_buffer_state
00225 {
00226 FILE *yy_input_file;
00227
00228 char *yy_ch_buf;
00229 char *yy_buf_pos;
00230
00231
00232
00233
00234 yy_size_t yy_buf_size;
00235
00236
00237
00238
00239 int yy_n_chars;
00240
00241
00242
00243
00244
00245 int yy_is_our_buffer;
00246
00247
00248
00249
00250
00251
00252 int yy_is_interactive;
00253
00254
00255
00256
00257
00258 int yy_at_bol;
00259
00260 int yy_bs_lineno;
00261 int yy_bs_column;
00263
00264
00265
00266 int yy_fill_buffer;
00267
00268 int yy_buffer_status;
00269
00270 #define YY_BUFFER_NEW 0
00271 #define YY_BUFFER_NORMAL 1
00272
00273
00274
00275
00276
00277
00278
00279
00280
00281
00282 #define YY_BUFFER_EOF_PENDING 2
00283
00284 };
00285 #endif
00286
00287
00288
00289
00290
00291
00292
00293 #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
00294 ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
00295 : NULL)
00296
00297
00298
00299
00300 #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
00301
00302 void osilrestart (FILE *input_file ,yyscan_t yyscanner );
00303 void osil_switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
00304 YY_BUFFER_STATE osil_create_buffer (FILE *file,int size ,yyscan_t yyscanner );
00305 void osil_delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
00306 void osil_flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
00307 void osilpush_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
00308 void osilpop_buffer_state (yyscan_t yyscanner );
00309
00310 static void osilensure_buffer_stack (yyscan_t yyscanner );
00311 static void osil_load_buffer_state (yyscan_t yyscanner );
00312 static void osil_init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yyscanner );
00313
00314 #define YY_FLUSH_BUFFER osil_flush_buffer(YY_CURRENT_BUFFER ,yyscanner)
00315
00316 YY_BUFFER_STATE osil_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
00317 YY_BUFFER_STATE osil_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
00318 YY_BUFFER_STATE osil_scan_bytes (yyconst char *bytes,int len ,yyscan_t yyscanner );
00319
00320 void *osilalloc (yy_size_t ,yyscan_t yyscanner );
00321 void *osilrealloc (void *,yy_size_t ,yyscan_t yyscanner );
00322 void osilfree (void * ,yyscan_t yyscanner );
00323
00324 #define yy_new_buffer osil_create_buffer
00325
00326 #define yy_set_interactive(is_interactive) \
00327 { \
00328 if ( ! YY_CURRENT_BUFFER ){ \
00329 osilensure_buffer_stack (yyscanner); \
00330 YY_CURRENT_BUFFER_LVALUE = \
00331 osil_create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
00332 } \
00333 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
00334 }
00335
00336 #define yy_set_bol(at_bol) \
00337 { \
00338 if ( ! YY_CURRENT_BUFFER ){\
00339 osilensure_buffer_stack (yyscanner); \
00340 YY_CURRENT_BUFFER_LVALUE = \
00341 osil_create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
00342 } \
00343 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
00344 }
00345
00346 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
00347
00348
00349
00350 #define osilwrap(n) 1
00351 #define YY_SKIP_YYWRAP
00352
00353 typedef unsigned char YY_CHAR;
00354
00355 typedef int yy_state_type;
00356
00357 #define yytext_ptr yytext_r
00358
00359 static yy_state_type yy_get_previous_state (yyscan_t yyscanner );
00360 static yy_state_type yy_try_NUL_trans (yy_state_type current_state ,yyscan_t yyscanner);
00361 static int yy_get_next_buffer (yyscan_t yyscanner );
00362 static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
00363
00364
00365
00366
00367 #define YY_DO_BEFORE_ACTION \
00368 yyg->yytext_ptr = yy_bp; \
00369 yyleng = (size_t) (yy_cp - yy_bp); \
00370 yyg->yy_hold_char = *yy_cp; \
00371 *yy_cp = '\0'; \
00372 yyg->yy_c_buf_p = yy_cp;
00373
00374 #define YY_NUM_RULES 117
00375 #define YY_END_OF_BUFFER 118
00376
00377
00378 struct yy_trans_info
00379 {
00380 flex_int32_t yy_verify;
00381 flex_int32_t yy_nxt;
00382 };
00383 static yyconst flex_int16_t yy_accept[790] =
00384 { 0,
00385 1, 1, 0, 0, 114, 114, 115, 115, 0, 0,
00386 0, 0, 0, 0, 0, 0, 118, 116, 1, 1,
00387 1, 2, 116, 5, 116, 4, 116, 3, 116, 117,
00388 114, 115, 107, 108, 107, 111, 112, 111, 1, 0,
00389 0, 3, 0, 0, 0, 0, 0, 0, 0, 5,
00390 4, 0, 5, 0, 6, 0, 0, 110, 80, 0,
00391 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00392 0, 0, 0, 0, 0, 114, 115, 0, 113, 0,
00393 0, 0, 0, 0, 0, 0, 0, 0, 5, 0,
00394 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00395
00396 0, 0, 0, 0, 0, 0, 82, 0, 0, 0,
00397 0, 0, 0, 0, 0, 0, 0, 0, 0, 36,
00398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00399 0, 0, 0, 0, 5, 109, 0, 0, 0, 0,
00400 0, 0, 0, 0, 0, 0, 106, 0, 81, 0,
00401 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00402 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00403 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00404 100, 0, 0, 0, 0, 0, 66, 0, 0, 0,
00405 50, 0, 0, 0, 0, 0, 102, 0, 0, 0,
00406
00407 0, 0, 0, 0, 0, 0, 0, 98, 0, 0,
00408 0, 21, 22, 0, 13, 0, 0, 0, 0, 0,
00409 0, 0, 81, 0, 83, 0, 0, 0, 0, 0,
00410 0, 0, 0, 67, 0, 0, 0, 51, 0, 0,
00411 0, 0, 37, 0, 0, 0, 0, 0, 0, 0,
00412 0, 0, 0, 0, 0, 0, 0, 0, 0, 62,
00413 0, 0, 0, 58, 0, 0, 64, 0, 60, 66,
00414 0, 0, 50, 0, 68, 0, 70, 0, 0, 0,
00415 0, 0, 0, 0, 0, 0, 0, 0, 56, 0,
00416 0, 0, 72, 0, 0, 0, 16, 0, 13, 0,
00417
00418 0, 0, 0, 0, 0, 0, 0, 0, 83, 0,
00419 63, 0, 0, 101, 0, 0, 59, 0, 0, 65,
00420 0, 61, 67, 0, 0, 51, 0, 69, 0, 71,
00421 0, 0, 37, 0, 0, 0, 103, 0, 0, 0,
00422 0, 0, 0, 0, 0, 57, 0, 0, 0, 73,
00423 0, 0, 99, 0, 62, 0, 0, 58, 0, 64,
00424 60, 0, 0, 68, 70, 0, 0, 0, 0, 0,
00425 0, 42, 0, 0, 32, 0, 56, 0, 90, 72,
00426 0, 0, 0, 16, 0, 0, 0, 0, 25, 26,
00427 0, 0, 20, 0, 0, 23, 24, 0, 17, 63,
00428
00429 0, 101, 0, 59, 0, 65, 61, 0, 0, 69,
00430 71, 0, 0, 0, 0, 103, 0, 0, 27, 0,
00431 43, 0, 0, 0, 0, 57, 0, 0, 73, 0,
00432 0, 99, 0, 0, 0, 0, 0, 0, 0, 44,
00433 0, 0, 78, 0, 42, 0, 48, 0, 0, 0,
00434 88, 0, 0, 38, 0, 0, 0, 14, 0, 15,
00435 0, 20, 0, 17, 0, 0, 0, 0, 0, 0,
00436 45, 0, 0, 0, 0, 27, 43, 0, 49, 0,
00437 0, 33, 0, 0, 0, 91, 0, 0, 0, 39,
00438 0, 0, 0, 0, 40, 0, 0, 44, 0, 46,
00439
00440 0, 0, 48, 0, 0, 0, 54, 0, 0, 38,
00441 0, 0, 19, 14, 15, 0, 0, 0, 0, 0,
00442 41, 0, 0, 45, 0, 47, 0, 0, 79, 0,
00443 49, 0, 33, 0, 0, 55, 0, 91, 0, 89,
00444 0, 39, 0, 0, 74, 0, 40, 0, 104, 46,
00445 0, 0, 0, 76, 0, 54, 0, 0, 84, 19,
00446 0, 0, 0, 0, 0, 0, 0, 18, 0, 75,
00447 0, 41, 0, 0, 47, 0, 79, 0, 0, 77,
00448 0, 55, 0, 89, 0, 0, 74, 0, 0, 0,
00449 0, 76, 0, 0, 0, 92, 0, 0, 0, 0,
00450
00451 0, 0, 18, 75, 0, 0, 0, 105, 0, 0,
00452 77, 0, 0, 0, 0, 85, 0, 0, 0, 0,
00453 96, 0, 0, 86, 0, 0, 0, 0, 0, 0,
00454 0, 0, 105, 0, 0, 0, 0, 0, 85, 0,
00455 93, 94, 0, 0, 0, 0, 52, 0, 0, 0,
00456 0, 0, 0, 0, 0, 0, 0, 97, 0, 0,
00457 53, 0, 87, 93, 0, 0, 0, 52, 0, 0,
00458 0, 0, 0, 0, 0, 95, 0, 0, 97, 0,
00459 53, 87, 0, 0, 0, 0, 0, 0, 0, 0,
00460 0, 0, 95, 0, 28, 0, 0, 29, 0, 0,
00461
00462 0, 0, 0, 0, 0, 12, 0, 28, 0, 0,
00463 29, 0, 0, 0, 0, 0, 0, 12, 0, 0,
00464 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00465 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,
00466 0, 0, 0, 0, 0, 9, 0, 7, 0, 0,
00467 0, 0, 0, 8, 0, 9, 0, 0, 0, 34,
00468 0, 8, 0, 0, 0, 0, 30, 0, 0, 0,
00469 35, 0, 0, 0, 10, 35, 0, 31, 0, 10,
00470 31, 0, 0, 0, 0, 0, 11, 11, 0
00471 } ;
00472
00473 static yyconst flex_int32_t yy_ec[256] =
00474 { 0,
00475 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
00476 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
00477 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00478 1, 4, 5, 6, 1, 1, 1, 1, 7, 1,
00479 1, 1, 8, 1, 9, 10, 11, 12, 12, 12,
00480 12, 12, 12, 12, 12, 12, 12, 1, 1, 13,
00481 14, 15, 16, 1, 1, 1, 17, 18, 19, 20,
00482 1, 1, 21, 1, 1, 1, 1, 22, 23, 24,
00483 25, 26, 27, 28, 1, 29, 1, 1, 1, 1,
00484 1, 1, 1, 1, 1, 1, 30, 31, 32, 33,
00485
00486 34, 35, 36, 37, 38, 39, 1, 40, 41, 42,
00487 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
00488 53, 54, 1, 55, 1, 1, 1, 1, 1, 1,
00489 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00490 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00491 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00492 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00493 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00494 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00495 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00496
00497 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00498 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00499 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00500 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00501 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00502 1, 1, 1, 1, 1
00503 } ;
00504
00505 static yyconst flex_int32_t yy_meta[56] =
00506 { 0,
00507 1, 1, 1, 1, 1, 2, 3, 1, 1, 1,
00508 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00509 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00510 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00511 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00512 1, 1, 1, 1, 1
00513 } ;
00514
00515 static yyconst flex_int16_t yy_base[798] =
00516 { 0,
00517 0, 54, 0, 0, 1693, 1692, 1690, 1689, 0, 0,
00518 0, 0, 5, 13, 2, 14, 1695, 1700, 108, 0,
00519 0, 1700, 13, 7, 1679, 17, 154, 1700, 1671, 1700,
00520 0, 0, 1700, 1700, 1683, 1700, 1700, 1676, 0, 1675,
00521 15, 1700, 1646, 1645, 1654, 3, 1638, 1632, 1654, 16,
00522 28, 1661, 20, 34, 1700, 1673, 186, 1700, 1700, 1660,
00523 13, 1637, 1641, 22, 35, 1636, 7, 38, 1646, 33,
00524 31, 44, 1638, 1645, 1654, 0, 0, 1658, 1700, 1638,
00525 1625, 81, 1629, 1628, 1638, 1623, 1626, 1653, 1652, 1654,
00526 98, 1641, 57, 1618, 1622, 44, 56, 1617, 56, 65,
00527
00528 73, 82, 75, 89, 1620, 1627, 1700, 1609, 1615, 84,
00529 1604, 1618, 1608, 114, 1, 139, 1599, 1608, 1613, 1700,
00530 1606, 1606, 1607, 1596, 1593, 1600, 1608, 1611, 1598, 1590,
00531 1608, 1596, 1595, 1589, 1700, 1700, 1599, 1595, 149, 165,
00532 209, 1598, 1600, 1584, 1595, 1579, 1700, 145, 172, 178,
00533 1580, 1586, 88, 1575, 1589, 1579, 236, 59, 239, 1570,
00534 1579, 1584, 242, 1577, 1577, 1578, 1578, 1566, 1563, 1570,
00535 1578, 1581, 1568, 1560, 1578, 1566, 1565, 1559, 245, 1586,
00536 1556, 259, 1564, 262, 265, 268, 187, 1553, 1566, 282,
00537 204, 285, 288, 1569, 1558, 1566, 1562, 1548, 1560, 1560,
00538
00539 1546, 1558, 291, 1560, 1553, 305, 1554, 1549, 308, 1532,
00540 311, 1700, 1700, 321, 324, 1543, 1533, 327, 1549, 1534,
00541 330, 1547, 336, 343, 346, 349, 1562, 352, 357, 1541,
00542 366, 371, 374, 380, 1530, 1543, 388, 391, 394, 398,
00543 1546, 402, 408, 1535, 1543, 412, 1533, 1525, 1537, 1537,
00544 1523, 1535, 416, 1537, 1530, 419, 1531, 422, 426, 436,
00545 1526, 1515, 440, 446, 1529, 449, 454, 459, 463, 466,
00546 1531, 1514, 469, 473, 476, 479, 482, 1512, 1510, 1519,
00547 1522, 1523, 487, 1508, 1504, 1511, 1505, 493, 496, 1504,
00548 1515, 501, 507, 97, 1518, 510, 515, 1504, 518, 1512,
00549
00550 1502, 523, 526, 1498, 532, 536, 541, 552, 555, 558,
00551 561, 1505, 565, 568, 1494, 572, 575, 1508, 579, 582,
00552 586, 589, 593, 1510, 1493, 596, 600, 603, 606, 609,
00553 1491, 1489, 614, 1498, 1501, 620, 623, 1502, 626, 629,
00554 1487, 1483, 1490, 1484, 634, 643, 1483, 1494, 648, 651,
00555 114, 654, 657, 1497, 662, 1491, 1479, 668, 1490, 671,
00556 674, 1481, 1472, 677, 680, 683, 1487, 1478, 1473, 1470,
00557 686, 689, 692, 1485, 1700, 1486, 700, 1481, 1467, 706,
00558 1467, 709, 1458, 712, 1446, 715, 718, 724, 1700, 1700,
00559 1450, 731, 734, 1426, 737, 1700, 1700, 744, 747, 750,
00560
00561 1423, 753, 1396, 757, 1406, 760, 763, 1371, 1362, 766,
00562 769, 772, 1363, 1354, 1348, 775, 1345, 778, 781, 786,
00563 792, 795, 1330, 800, 1324, 803, 1319, 809, 814, 1268,
00564 817, 823, 1279, 1267, 1264, 826, 1261, 1258, 831, 834,
00565 840, 1246, 1700, 1241, 845, 848, 855, 1226, 1212, 858,
00566 1700, 1218, 862, 865, 1217, 868, 872, 876, 885, 888,
00567 1221, 891, 1202, 894, 1205, 1209, 898, 1202, 1202, 901,
00568 904, 907, 1197, 915, 1188, 921, 924, 929, 932, 1177,
00569 935, 938, 1169, 943, 949, 952, 957, 1159, 963, 971,
00570 1106, 977, 1091, 980, 983, 1094, 1080, 986, 994, 997,
00571
00572 1076, 1055, 1000, 1003, 1062, 1008, 1011, 1043, 1055, 1017,
00573 1046, 1022, 1025, 1028, 1031, 1020, 1036, 1049, 1028, 1052,
00574 1055, 1031, 1023, 1058, 1066, 1069, 1018, 1072, 1075, 996,
00575 1080, 1086, 1089, 1006, 1092, 1095, 998, 1100, 1106, 1109,
00576 992, 1112, 983, 1115, 1120, 974, 1123, 990, 1700, 1129,
00577 948, 959, 1132, 1135, 959, 1138, 934, 938, 924, 1141,
00578 927, 925, 932, 913, 909, 919, 1146, 1149, 1152, 1155,
00579 906, 1159, 925, 1162, 1166, 883, 1169, 887, 1172, 1176,
00580 888, 1179, 872, 1182, 876, 1186, 1189, 864, 855, 864,
00581 834, 1192, 837, 805, 803, 1700, 798, 797, 792, 793,
00582
00583 792, 768, 1195, 1200, 761, 778, 1203, 1206, 781, 745,
00584 1209, 774, 738, 700, 1212, 1217, 1220, 678, 675, 654,
00585 1700, 662, 1226, 1700, 653, 659, 663, 635, 631, 624,
00586 601, 595, 1234, 590, 1240, 597, 1243, 1246, 1249, 1260,
00587 1263, 1700, 609, 590, 586, 1266, 1269, 571, 576, 520,
00588 505, 515, 512, 1274, 511, 487, 1280, 1283, 489, 1288,
00589 1294, 1297, 1302, 1305, 1311, 469, 472, 1314, 460, 459,
00590 445, 462, 440, 428, 1317, 1321, 1324, 408, 1327, 410,
00591 1331, 1334, 1338, 421, 401, 398, 402, 374, 369, 340,
00592 1341, 347, 1344, 1348, 1354, 351, 345, 1357, 332, 333,
00593
00594 328, 335, 313, 324, 1362, 1365, 323, 1368, 296, 304,
00595 1371, 289, 289, 277, 270, 271, 272, 1375, 255, 254,
00596 267, 260, 258, 234, 262, 232, 250, 1378, 238, 237,
00597 230, 225, 211, 204, 1381, 221, 1384, 1387, 210, 218,
00598 208, 193, 1397, 181, 1400, 1403, 176, 1406, 179, 175,
00599 168, 166, 1413, 1416, 163, 1419, 162, 153, 137, 1700,
00600 136, 1422, 145, 130, 1426, 119, 1700, 117, 1429, 1432,
00601 1435, 1442, 115, 1446, 1449, 1452, 1459, 1462, 119, 1465,
00602 1468, 96, 94, 24, 1473, 1476, 1479, 1482, 1700, 1490,
00603 1493, 1496, 1499, 1502, 1505, 1508, 1511
00604
00605 } ;
00606
00607 static yyconst flex_int16_t yy_def[798] =
00608 { 0,
00609 790, 790, 791, 791, 792, 792, 793, 793, 791, 791,
00610 791, 791, 794, 794, 795, 795, 789, 789, 789, 19,
00611 19, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00612 796, 797, 789, 789, 789, 789, 789, 789, 19, 789,
00613 27, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00614 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00615 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00616 789, 789, 789, 789, 789, 796, 797, 789, 789, 789,
00617 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00618 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00619
00620 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00621 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00622 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00623 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00624 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00625 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00626 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00627 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00628 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00629 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00630
00631 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00632 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00633 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00634 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00635 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00636 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00637 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00638 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00639 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00640 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00641
00642 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00643 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00644 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00645 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00646 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00647 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00648 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00649 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00650 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00651 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00652
00653 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00654 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00655 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00656 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00657 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00658 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00659 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00660 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00661 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00662 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00663
00664 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00665 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00666 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00667 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00668 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00669 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00670 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00671 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00672 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00673 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00674
00675 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00676 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00677 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00678 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00679 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00680 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00681 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00682 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00683 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00684 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00685
00686 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00687 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00688 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00689 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00690 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00691 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00692 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00693 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00694 789, 789, 789, 789, 789, 789, 789, 789, 0, 789,
00695 789, 789, 789, 789, 789, 789, 789
00696
00697 } ;
00698
00699 static yyconst flex_int16_t yy_nxt[1756] =
00700 { 0,
00701 789, 19, 20, 21, 37, 22, 22, 34, 23, 24,
00702 25, 26, 27, 35, 28, 34, 37, 38, 53, 789,
00703 29, 35, 50, 789, 51, 54, 50, 53, 51, 38,
00704 789, 53, 83, 52, 54, 54, 117, 50, 54, 51,
00705 54, 88, 88, 108, 118, 89, 54, 188, 189, 54,
00706 54, 84, 109, 54, 22, 19, 20, 21, 127, 22,
00707 22, 54, 23, 24, 25, 26, 27, 112, 28, 114,
00708 785, 119, 124, 113, 29, 125, 115, 120, 126, 128,
00709 121, 129, 139, 139, 139, 160, 122, 151, 130, 155,
00710 157, 131, 132, 161, 140, 156, 152, 158, 162, 148,
00711
00712 148, 148, 171, 166, 163, 235, 236, 164, 22, 39,
00713 39, 39, 149, 165, 381, 186, 186, 186, 40, 167,
00714 41, 168, 42, 172, 169, 181, 173, 170, 187, 228,
00715 182, 430, 141, 174, 229, 784, 175, 176, 783, 43,
00716 190, 190, 190, 382, 44, 45, 148, 148, 148, 46,
00717 139, 139, 139, 191, 47, 48, 782, 49, 56, 149,
00718 431, 779, 140, 773, 57, 772, 211, 211, 211, 58,
00719 212, 213, 59, 223, 223, 223, 769, 60, 768, 224,
00720 224, 224, 767, 61, 766, 62, 63, 64, 270, 270,
00721 270, 65, 225, 66, 67, 68, 69, 70, 71, 765,
00722
00723 72, 73, 764, 74, 91, 273, 273, 273, 763, 92,
00724 214, 214, 214, 761, 760, 93, 759, 94, 95, 96,
00725 758, 757, 215, 97, 755, 98, 99, 100, 101, 102,
00726 103, 216, 104, 105, 752, 106, 217, 233, 233, 233,
00727 237, 237, 237, 242, 242, 242, 259, 259, 259, 751,
00728 234, 750, 749, 238, 747, 744, 243, 743, 742, 260,
00729 263, 263, 263, 266, 266, 266, 268, 268, 268, 186,
00730 186, 186, 741, 264, 740, 739, 267, 736, 735, 269,
00731 734, 733, 187, 190, 190, 190, 274, 274, 274, 276,
00732 276, 276, 288, 288, 288, 732, 191, 731, 730, 275,
00733
00734 729, 728, 277, 727, 726, 289, 292, 292, 292, 296,
00735 296, 296, 211, 211, 211, 725, 212, 213, 724, 293,
00736 723, 297, 214, 214, 214, 299, 299, 299, 302, 302,
00737 302, 306, 306, 306, 215, 722, 278, 223, 223, 223,
00738 303, 721, 720, 307, 224, 224, 224, 309, 309, 309,
00739 310, 310, 310, 313, 313, 313, 719, 225, 316, 316,
00740 316, 717, 716, 311, 715, 714, 314, 319, 319, 319,
00741 713, 317, 321, 321, 321, 233, 233, 233, 712, 710,
00742 320, 323, 323, 323, 709, 322, 707, 704, 234, 237,
00743 237, 237, 326, 326, 326, 327, 327, 327, 315, 329,
00744
00745 329, 329, 238, 242, 242, 242, 703, 702, 328, 333,
00746 333, 333, 330, 336, 336, 336, 243, 345, 345, 345,
00747 349, 349, 349, 352, 352, 352, 337, 259, 259, 259,
00748 346, 701, 700, 350, 699, 698, 353, 355, 355, 355,
00749 260, 263, 263, 263, 697, 338, 331, 358, 358, 358,
00750 266, 266, 266, 696, 264, 360, 360, 360, 692, 354,
00751 268, 268, 268, 267, 361, 361, 361, 270, 270, 270,
00752 273, 273, 273, 269, 274, 274, 274, 364, 364, 364,
00753 276, 276, 276, 365, 365, 365, 691, 275, 371, 371,
00754 371, 690, 689, 277, 288, 288, 288, 377, 377, 377,
00755
00756 688, 372, 292, 292, 292, 687, 686, 289, 380, 380,
00757 380, 296, 296, 296, 685, 293, 384, 384, 384, 299,
00758 299, 299, 680, 297, 302, 302, 302, 388, 388, 388,
00759 678, 389, 390, 392, 392, 392, 303, 306, 306, 306,
00760 677, 674, 395, 395, 395, 393, 396, 397, 673, 307,
00761 672, 671, 394, 398, 398, 398, 309, 309, 309, 310,
00762 310, 310, 400, 400, 400, 399, 313, 313, 313, 402,
00763 402, 402, 311, 316, 316, 316, 404, 404, 404, 314,
00764 319, 319, 319, 406, 406, 406, 317, 321, 321, 321,
00765 407, 407, 407, 320, 323, 323, 323, 326, 326, 326,
00766
00767 322, 327, 327, 327, 410, 410, 410, 329, 329, 329,
00768 411, 411, 411, 670, 328, 333, 333, 333, 669, 667,
00769 330, 336, 336, 336, 416, 416, 416, 418, 418, 418,
00770 420, 420, 420, 666, 337, 345, 345, 345, 665, 659,
00771 419, 656, 655, 421, 426, 426, 426, 654, 346, 349,
00772 349, 349, 429, 429, 429, 352, 352, 352, 432, 432,
00773 432, 653, 350, 355, 355, 355, 652, 651, 353, 358,
00774 358, 358, 360, 360, 360, 361, 361, 361, 364, 364,
00775 364, 365, 365, 365, 439, 439, 439, 371, 371, 371,
00776 445, 445, 445, 446, 446, 446, 650, 440, 649, 648,
00777
00778 372, 377, 377, 377, 645, 644, 447, 380, 380, 380,
00779 453, 453, 453, 384, 384, 384, 457, 457, 457, 459,
00780 459, 459, 643, 454, 642, 388, 388, 388, 458, 389,
00781 390, 460, 392, 392, 392, 462, 462, 462, 395, 395,
00782 395, 638, 396, 397, 393, 398, 398, 398, 464, 464,
00783 464, 400, 400, 400, 402, 402, 402, 399, 404, 404,
00784 404, 406, 406, 406, 407, 407, 407, 410, 410, 410,
00785 411, 411, 411, 470, 470, 470, 416, 416, 416, 418,
00786 418, 418, 476, 476, 476, 637, 471, 420, 420, 420,
00787 636, 635, 419, 477, 477, 477, 478, 478, 478, 634,
00788
00789 421, 481, 481, 481, 426, 426, 426, 632, 631, 479,
00790 485, 485, 485, 630, 482, 429, 429, 429, 489, 489,
00791 489, 629, 628, 486, 432, 432, 432, 494, 494, 494,
00792 627, 490, 439, 439, 439, 498, 498, 498, 626, 625,
00793 495, 499, 499, 499, 624, 440, 445, 445, 445, 446,
00794 446, 446, 623, 622, 500, 487, 503, 503, 503, 506,
00795 506, 506, 447, 453, 453, 453, 510, 510, 510, 512,
00796 512, 512, 507, 457, 457, 457, 454, 514, 514, 514,
00797 621, 513, 620, 508, 619, 458, 459, 459, 459, 515,
00798 515, 515, 462, 462, 462, 464, 464, 464, 460, 520,
00799
00800 520, 520, 470, 470, 470, 524, 524, 524, 525, 525,
00801 525, 618, 521, 614, 613, 471, 528, 528, 528, 612,
00802 610, 526, 476, 476, 476, 477, 477, 477, 609, 529,
00803 478, 478, 478, 531, 531, 531, 481, 481, 481, 533,
00804 533, 533, 606, 479, 535, 535, 535, 605, 602, 482,
00805 485, 485, 485, 538, 538, 538, 601, 536, 539, 539,
00806 539, 600, 599, 486, 489, 489, 489, 598, 537, 597,
00807 596, 540, 542, 542, 542, 595, 594, 490, 544, 544,
00808 544, 494, 494, 494, 547, 547, 547, 498, 498, 498,
00809 593, 545, 591, 590, 495, 499, 499, 499, 550, 550,
00810
00811 550, 503, 503, 503, 553, 553, 553, 589, 500, 506,
00812 506, 506, 556, 556, 556, 588, 586, 554, 510, 510,
00813 510, 585, 507, 512, 512, 512, 560, 560, 560, 514,
00814 514, 514, 515, 515, 515, 513, 561, 567, 567, 567,
00815 583, 562, 563, 581, 564, 578, 565, 576, 566, 568,
00816 569, 569, 569, 520, 520, 520, 572, 572, 572, 524,
00817 524, 524, 574, 570, 573, 571, 521, 525, 525, 525,
00818 575, 575, 575, 528, 528, 528, 577, 577, 577, 559,
00819 526, 531, 531, 531, 558, 557, 529, 579, 579, 579,
00820 533, 533, 533, 535, 535, 535, 582, 582, 582, 555,
00821
00822 580, 538, 538, 538, 552, 551, 536, 539, 539, 539,
00823 584, 584, 584, 542, 542, 542, 544, 544, 544, 549,
00824 540, 587, 587, 587, 547, 547, 547, 548, 546, 545,
00825 550, 550, 550, 553, 553, 553, 592, 592, 592, 556,
00826 556, 556, 560, 560, 560, 543, 554, 567, 567, 567,
00827 603, 603, 603, 569, 569, 569, 604, 604, 604, 568,
00828 572, 572, 572, 607, 607, 607, 570, 575, 575, 575,
00829 577, 577, 577, 579, 579, 579, 608, 611, 611, 611,
00830 582, 582, 582, 584, 584, 584, 580, 615, 615, 615,
00831 587, 587, 587, 592, 592, 592, 603, 603, 603, 541,
00832
00833 616, 604, 604, 604, 607, 607, 607, 633, 633, 633,
00834 611, 611, 611, 615, 615, 615, 534, 608, 639, 639,
00835 639, 640, 640, 640, 532, 530, 616, 646, 646, 646,
00836 527, 523, 617, 522, 641, 633, 633, 633, 519, 518,
00837 647, 657, 657, 657, 660, 660, 660, 662, 662, 662,
00838 639, 639, 639, 517, 658, 516, 511, 661, 509, 505,
00839 663, 640, 640, 640, 664, 664, 664, 646, 646, 646,
00840 668, 668, 668, 504, 641, 675, 675, 675, 502, 501,
00841 647, 657, 657, 657, 679, 679, 679, 497, 676, 660,
00842 660, 660, 496, 493, 658, 681, 681, 681, 662, 662,
00843
00844 662, 492, 661, 682, 682, 682, 664, 664, 664, 491,
00845 488, 663, 683, 683, 683, 668, 668, 668, 675, 675,
00846 675, 684, 693, 693, 693, 694, 694, 694, 679, 679,
00847 679, 676, 681, 681, 681, 682, 682, 682, 695, 683,
00848 683, 683, 705, 705, 705, 693, 693, 693, 684, 694,
00849 694, 694, 484, 483, 706, 708, 708, 708, 711, 711,
00850 711, 480, 695, 705, 705, 705, 718, 718, 718, 708,
00851 708, 708, 711, 711, 711, 706, 718, 718, 718, 737,
00852 737, 737, 745, 745, 745, 737, 737, 737, 748, 748,
00853 748, 738, 475, 474, 746, 473, 472, 738, 753, 753,
00854
00855 753, 745, 745, 745, 756, 756, 756, 748, 748, 748,
00856 754, 469, 468, 746, 753, 753, 753, 762, 762, 762,
00857 756, 756, 756, 762, 762, 762, 754, 770, 770, 770,
00858 774, 774, 774, 770, 770, 770, 776, 776, 776, 467,
00859 771, 466, 775, 777, 777, 777, 771, 774, 774, 774,
00860 780, 780, 780, 776, 776, 776, 778, 465, 463, 775,
00861 777, 777, 777, 781, 781, 781, 780, 780, 780, 781,
00862 781, 781, 461, 778, 786, 786, 786, 786, 786, 786,
00863 788, 788, 788, 788, 788, 788, 787, 456, 455, 787,
00864 18, 18, 18, 30, 30, 30, 31, 31, 31, 32,
00865
00866 32, 32, 33, 33, 33, 36, 36, 36, 76, 452,
00867 76, 77, 77, 451, 450, 449, 448, 444, 443, 442,
00868 441, 438, 437, 436, 435, 434, 433, 428, 427, 425,
00869 424, 423, 422, 417, 415, 414, 413, 412, 409, 408,
00870 405, 403, 401, 391, 387, 386, 385, 383, 379, 378,
00871 376, 375, 374, 373, 370, 369, 368, 367, 366, 363,
00872 362, 359, 357, 356, 351, 348, 347, 344, 343, 342,
00873 341, 340, 339, 335, 334, 332, 325, 324, 318, 312,
00874 308, 305, 304, 301, 300, 298, 295, 294, 291, 290,
00875 287, 286, 285, 284, 283, 282, 281, 280, 279, 272,
00876
00877 271, 265, 262, 261, 258, 257, 256, 255, 254, 253,
00878 252, 251, 250, 249, 248, 247, 246, 245, 244, 241,
00879 240, 239, 232, 231, 230, 227, 226, 222, 221, 220,
00880 219, 218, 210, 209, 208, 207, 206, 205, 204, 203,
00881 202, 201, 200, 199, 198, 197, 196, 195, 194, 193,
00882 192, 185, 184, 183, 180, 179, 178, 177, 159, 154,
00883 153, 150, 147, 89, 89, 146, 145, 144, 143, 142,
00884 138, 137, 136, 135, 134, 133, 123, 116, 111, 110,
00885 107, 90, 75, 87, 86, 85, 82, 81, 80, 55,
00886 79, 78, 75, 55, 789, 30, 30, 30, 30, 17,
00887
00888 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00889 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00890 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00891 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00892 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
00893 789, 789, 789, 789, 789
00894 } ;
00895
00896 static yyconst flex_int16_t yy_chk[1756] =
00897 { 0,
00898 0, 1, 1, 1, 15, 1, 1, 13, 1, 1,
00899 1, 1, 1, 13, 1, 14, 16, 15, 24, 41,
00900 1, 14, 23, 0, 23, 24, 26, 50, 26, 16,
00901 41, 53, 46, 23, 50, 26, 67, 51, 53, 51,
00902 24, 54, 54, 61, 67, 54, 51, 115, 115, 50,
00903 26, 46, 61, 53, 1, 2, 2, 2, 71, 2,
00904 2, 51, 2, 2, 2, 2, 2, 64, 2, 65,
00905 784, 68, 70, 64, 2, 70, 65, 68, 70, 71,
00906 68, 72, 82, 82, 82, 99, 68, 93, 72, 96,
00907 97, 72, 72, 99, 82, 96, 93, 97, 100, 91,
00908
00909 91, 91, 103, 101, 100, 158, 158, 100, 2, 19,
00910 19, 19, 91, 100, 294, 114, 114, 114, 19, 101,
00911 19, 102, 19, 103, 102, 110, 104, 102, 114, 153,
00912 110, 351, 82, 104, 153, 783, 104, 104, 782, 19,
00913 116, 116, 116, 294, 19, 19, 148, 148, 148, 19,
00914 139, 139, 139, 116, 19, 19, 779, 19, 27, 148,
00915 351, 773, 139, 768, 27, 766, 140, 140, 140, 27,
00916 140, 140, 27, 149, 149, 149, 764, 27, 763, 150,
00917 150, 150, 761, 27, 759, 27, 27, 27, 187, 187,
00918 187, 27, 150, 27, 27, 27, 27, 27, 27, 758,
00919
00920 27, 27, 757, 27, 57, 191, 191, 191, 755, 57,
00921 141, 141, 141, 752, 751, 57, 750, 57, 57, 57,
00922 749, 747, 141, 57, 744, 57, 57, 57, 57, 57,
00923 57, 141, 57, 57, 742, 57, 141, 157, 157, 157,
00924 159, 159, 159, 163, 163, 163, 179, 179, 179, 741,
00925 157, 740, 739, 159, 736, 734, 163, 733, 732, 179,
00926 182, 182, 182, 184, 184, 184, 185, 185, 185, 186,
00927 186, 186, 731, 182, 730, 729, 184, 727, 726, 185,
00928 725, 724, 186, 190, 190, 190, 192, 192, 192, 193,
00929 193, 193, 203, 203, 203, 723, 190, 722, 721, 192,
00930
00931 720, 719, 193, 717, 716, 203, 206, 206, 206, 209,
00932 209, 209, 211, 211, 211, 715, 211, 211, 714, 206,
00933 713, 209, 214, 214, 214, 215, 215, 215, 218, 218,
00934 218, 221, 221, 221, 214, 712, 193, 223, 223, 223,
00935 218, 710, 709, 221, 224, 224, 224, 225, 225, 225,
00936 226, 226, 226, 228, 228, 228, 707, 224, 229, 229,
00937 229, 704, 703, 226, 702, 701, 228, 231, 231, 231,
00938 700, 229, 232, 232, 232, 233, 233, 233, 699, 697,
00939 231, 234, 234, 234, 696, 232, 692, 690, 233, 237,
00940 237, 237, 238, 238, 238, 239, 239, 239, 228, 240,
00941
00942 240, 240, 237, 242, 242, 242, 689, 688, 239, 243,
00943 243, 243, 240, 246, 246, 246, 242, 253, 253, 253,
00944 256, 256, 256, 258, 258, 258, 246, 259, 259, 259,
00945 253, 687, 686, 256, 685, 684, 258, 260, 260, 260,
00946 259, 263, 263, 263, 680, 246, 240, 264, 264, 264,
00947 266, 266, 266, 678, 263, 267, 267, 267, 674, 258,
00948 268, 268, 268, 266, 269, 269, 269, 270, 270, 270,
00949 273, 273, 273, 268, 274, 274, 274, 275, 275, 275,
00950 276, 276, 276, 277, 277, 277, 673, 274, 283, 283,
00951 283, 672, 671, 276, 288, 288, 288, 289, 289, 289,
00952
00953 670, 283, 292, 292, 292, 669, 667, 288, 293, 293,
00954 293, 296, 296, 296, 666, 292, 297, 297, 297, 299,
00955 299, 299, 659, 296, 302, 302, 302, 303, 303, 303,
00956 656, 303, 303, 305, 305, 305, 302, 306, 306, 306,
00957 655, 653, 307, 307, 307, 305, 307, 307, 652, 306,
00958 651, 650, 305, 308, 308, 308, 309, 309, 309, 310,
00959 310, 310, 311, 311, 311, 308, 313, 313, 313, 314,
00960 314, 314, 310, 316, 316, 316, 317, 317, 317, 313,
00961 319, 319, 319, 320, 320, 320, 316, 321, 321, 321,
00962 322, 322, 322, 319, 323, 323, 323, 326, 326, 326,
00963
00964 321, 327, 327, 327, 328, 328, 328, 329, 329, 329,
00965 330, 330, 330, 649, 327, 333, 333, 333, 648, 645,
00966 329, 336, 336, 336, 337, 337, 337, 339, 339, 339,
00967 340, 340, 340, 644, 336, 345, 345, 345, 643, 636,
00968 339, 634, 632, 340, 346, 346, 346, 631, 345, 349,
00969 349, 349, 350, 350, 350, 352, 352, 352, 353, 353,
00970 353, 630, 349, 355, 355, 355, 629, 628, 352, 358,
00971 358, 358, 360, 360, 360, 361, 361, 361, 364, 364,
00972 364, 365, 365, 365, 366, 366, 366, 371, 371, 371,
00973 372, 372, 372, 373, 373, 373, 627, 366, 626, 625,
00974
00975 371, 377, 377, 377, 622, 620, 373, 380, 380, 380,
00976 382, 382, 382, 384, 384, 384, 386, 386, 386, 387,
00977 387, 387, 619, 382, 618, 388, 388, 388, 386, 388,
00978 388, 387, 392, 392, 392, 393, 393, 393, 395, 395,
00979 395, 614, 395, 395, 392, 398, 398, 398, 399, 399,
00980 399, 400, 400, 400, 402, 402, 402, 398, 404, 404,
00981 404, 406, 406, 406, 407, 407, 407, 410, 410, 410,
00982 411, 411, 411, 412, 412, 412, 416, 416, 416, 418,
00983 418, 418, 419, 419, 419, 613, 412, 420, 420, 420,
00984 612, 610, 418, 421, 421, 421, 422, 422, 422, 609,
00985
00986 420, 424, 424, 424, 426, 426, 426, 606, 605, 422,
00987 428, 428, 428, 602, 424, 429, 429, 429, 431, 431,
00988 431, 601, 600, 428, 432, 432, 432, 436, 436, 436,
00989 599, 431, 439, 439, 439, 440, 440, 440, 598, 597,
00990 436, 441, 441, 441, 595, 439, 445, 445, 445, 446,
00991 446, 446, 594, 593, 441, 428, 447, 447, 447, 450,
00992 450, 450, 446, 453, 453, 453, 454, 454, 454, 456,
00993 456, 456, 450, 457, 457, 457, 453, 458, 458, 458,
00994 591, 456, 590, 450, 589, 457, 459, 459, 459, 460,
00995 460, 460, 462, 462, 462, 464, 464, 464, 459, 467,
00996
00997 467, 467, 470, 470, 470, 471, 471, 471, 472, 472,
00998 472, 588, 467, 585, 583, 470, 474, 474, 474, 581,
00999 578, 472, 476, 476, 476, 477, 477, 477, 576, 474,
01000 478, 478, 478, 479, 479, 479, 481, 481, 481, 482,
01001 482, 482, 573, 478, 484, 484, 484, 571, 566, 481,
01002 485, 485, 485, 486, 486, 486, 565, 484, 487, 487,
01003 487, 564, 563, 485, 489, 489, 489, 562, 484, 561,
01004 559, 487, 490, 490, 490, 558, 557, 489, 492, 492,
01005 492, 494, 494, 494, 495, 495, 495, 498, 498, 498,
01006 555, 492, 552, 551, 494, 499, 499, 499, 500, 500,
01007
01008 500, 503, 503, 503, 504, 504, 504, 548, 499, 506,
01009 506, 506, 507, 507, 507, 546, 543, 504, 510, 510,
01010 510, 541, 506, 512, 512, 512, 513, 513, 513, 514,
01011 514, 514, 515, 515, 515, 512, 516, 517, 517, 517,
01012 537, 516, 516, 534, 516, 530, 516, 527, 516, 517,
01013 518, 518, 518, 520, 520, 520, 521, 521, 521, 524,
01014 524, 524, 523, 518, 522, 519, 520, 525, 525, 525,
01015 526, 526, 526, 528, 528, 528, 529, 529, 529, 511,
01016 525, 531, 531, 531, 509, 508, 528, 532, 532, 532,
01017 533, 533, 533, 535, 535, 535, 536, 536, 536, 505,
01018
01019 532, 538, 538, 538, 502, 501, 535, 539, 539, 539,
01020 540, 540, 540, 542, 542, 542, 544, 544, 544, 497,
01021 539, 545, 545, 545, 547, 547, 547, 496, 493, 544,
01022 550, 550, 550, 553, 553, 553, 554, 554, 554, 556,
01023 556, 556, 560, 560, 560, 491, 553, 567, 567, 567,
01024 568, 568, 568, 569, 569, 569, 570, 570, 570, 567,
01025 572, 572, 572, 574, 574, 574, 569, 575, 575, 575,
01026 577, 577, 577, 579, 579, 579, 574, 580, 580, 580,
01027 582, 582, 582, 584, 584, 584, 579, 586, 586, 586,
01028 587, 587, 587, 592, 592, 592, 603, 603, 603, 488,
01029
01030 586, 604, 604, 604, 607, 607, 607, 608, 608, 608,
01031 611, 611, 611, 615, 615, 615, 483, 607, 616, 616,
01032 616, 617, 617, 617, 480, 475, 615, 623, 623, 623,
01033 473, 469, 586, 468, 617, 633, 633, 633, 466, 465,
01034 623, 635, 635, 635, 637, 637, 637, 638, 638, 638,
01035 639, 639, 639, 463, 635, 461, 455, 637, 452, 449,
01036 638, 640, 640, 640, 641, 641, 641, 646, 646, 646,
01037 647, 647, 647, 448, 640, 654, 654, 654, 444, 442,
01038 646, 657, 657, 657, 658, 658, 658, 438, 654, 660,
01039 660, 660, 437, 435, 657, 661, 661, 661, 662, 662,
01040
01041 662, 434, 660, 663, 663, 663, 664, 664, 664, 433,
01042 430, 662, 665, 665, 665, 668, 668, 668, 675, 675,
01043 675, 665, 676, 676, 676, 677, 677, 677, 679, 679,
01044 679, 675, 681, 681, 681, 682, 682, 682, 677, 683,
01045 683, 683, 691, 691, 691, 693, 693, 693, 683, 694,
01046 694, 694, 427, 425, 691, 695, 695, 695, 698, 698,
01047 698, 423, 694, 705, 705, 705, 706, 706, 706, 708,
01048 708, 708, 711, 711, 711, 705, 718, 718, 718, 728,
01049 728, 728, 735, 735, 735, 737, 737, 737, 738, 738,
01050 738, 728, 417, 415, 735, 414, 413, 737, 743, 743,
01051
01052 743, 745, 745, 745, 746, 746, 746, 748, 748, 748,
01053 743, 409, 408, 745, 753, 753, 753, 754, 754, 754,
01054 756, 756, 756, 762, 762, 762, 753, 765, 765, 765,
01055 769, 769, 769, 770, 770, 770, 771, 771, 771, 405,
01056 765, 403, 769, 772, 772, 772, 770, 774, 774, 774,
01057 775, 775, 775, 776, 776, 776, 772, 401, 394, 774,
01058 777, 777, 777, 778, 778, 778, 780, 780, 780, 781,
01059 781, 781, 391, 777, 785, 785, 785, 786, 786, 786,
01060 787, 787, 787, 788, 788, 788, 785, 385, 383, 786,
01061 790, 790, 790, 791, 791, 791, 792, 792, 792, 793,
01062
01063 793, 793, 794, 794, 794, 795, 795, 795, 796, 381,
01064 796, 797, 797, 379, 378, 376, 374, 370, 369, 368,
01065 367, 363, 362, 359, 357, 356, 354, 348, 347, 344,
01066 343, 342, 341, 338, 335, 334, 332, 331, 325, 324,
01067 318, 315, 312, 304, 301, 300, 298, 295, 291, 290,
01068 287, 286, 285, 284, 282, 281, 280, 279, 278, 272,
01069 271, 265, 262, 261, 257, 255, 254, 252, 251, 250,
01070 249, 248, 247, 245, 244, 241, 236, 235, 230, 227,
01071 222, 220, 219, 217, 216, 210, 208, 207, 205, 204,
01072 202, 201, 200, 199, 198, 197, 196, 195, 194, 189,
01073
01074 188, 183, 181, 180, 178, 177, 176, 175, 174, 173,
01075 172, 171, 170, 169, 168, 167, 166, 165, 164, 162,
01076 161, 160, 156, 155, 154, 152, 151, 146, 145, 144,
01077 143, 142, 138, 137, 134, 133, 132, 131, 130, 129,
01078 128, 127, 126, 125, 124, 123, 122, 121, 119, 118,
01079 117, 113, 112, 111, 109, 108, 106, 105, 98, 95,
01080 94, 92, 90, 89, 88, 87, 86, 85, 84, 83,
01081 81, 80, 78, 75, 74, 73, 69, 66, 63, 62,
01082 60, 56, 52, 49, 48, 47, 45, 44, 43, 40,
01083 38, 35, 29, 25, 17, 8, 7, 6, 5, 789,
01084
01085 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
01086 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
01087 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
01088 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
01089 789, 789, 789, 789, 789, 789, 789, 789, 789, 789,
01090 789, 789, 789, 789, 789
01091 } ;
01092
01093
01094 static yyconst flex_int32_t yy_rule_can_match_eol[118] =
01095 { 0,
01096 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01097 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01098 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01099 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01100 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01101 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, };
01102
01103
01104
01105
01106 #define REJECT reject_used_but_not_detected
01107 #define yymore() yymore_used_but_not_detected
01108 #define YY_MORE_ADJ 0
01109 #define YY_RESTORE_YY_MORE_OFFSET
01110 #line 1 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01111
01126 #line 17 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01127
01128 #include <iostream>
01129 #include "OSDataStructures.h"
01130 #include "OSMathUtil.h"
01131 #include "OSConfig.h"
01132
01133 #ifdef HAVE_CSTDIO
01134 # include <cstdio>
01135 #else
01136 # ifdef HAVE_STDIO_H
01137 # include <stdio.h>
01138 # else
01139 # error "don't have header file for stdio"
01140 # endif
01141 #endif
01142
01143 #ifdef HAVE_CTIME
01144 # include <ctime>
01145 #else
01146 # ifdef HAVE_TIME_H
01147 # include <time.h>
01148 # else
01149 # error "don't have header file for time"
01150 # endif
01151 #endif
01152
01153 #ifdef HAVE_CMATH
01154 # include <cmath>
01155 #else
01156 # ifdef HAVE_MATH_H
01157 # include <math.h>
01158 # else
01159 # error "don't have header file for math"
01160 # endif
01161 #endif
01162
01163 #include <sstream>
01164 #include "OSiLParserData.h"
01165 #include "OSErrorClass.h"
01166 #include "OSParseosil.tab.hpp"
01167 #include "OSInstance.h"
01168
01169
01170
01171
01172 #ifdef PARSERDEBUG
01173 #define YY_PRINT printf("%s", yytext);
01174 #else
01175 #define YY_PRINT ;
01176 #endif
01177
01178
01179 #ifdef WIN_
01180 #define YY_NO_UNISTD_H
01181 #include <io.h>
01182 #include <process.h>
01183 #ifdef USE_OLD_UNISTD
01184 #include<sys/unistd.h>
01185 #endif
01186 #endif
01187
01188 using std::cout;
01189 using std::endl;
01190 using std::ostringstream;
01191
01192
01193
01194
01195
01196
01197
01198
01199 #line 100 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01200 #define YY_EXTRA_TYPE OSiLParserData*
01201 #line 1202 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.cpp"
01202
01203 #define INITIAL 0
01204 #define osilattributetext 1
01205 #define doublequoteattributetext 2
01206 #define singlequoteattributetext 3
01207 #define startelement 4
01208 #define elementtext 5
01209 #define comment 6
01210 #define xmldeclaration 7
01211
01212 #ifndef YY_NO_UNISTD_H
01213
01214
01215
01216
01217 #include <unistd.h>
01218 #endif
01219
01220 #ifndef YY_EXTRA_TYPE
01221 #define YY_EXTRA_TYPE void *
01222 #endif
01223
01224
01225 struct yyguts_t
01226 {
01227
01228
01229 YY_EXTRA_TYPE yyextra_r;
01230
01231
01232 FILE *yyin_r, *yyout_r;
01233 size_t yy_buffer_stack_top;
01234 size_t yy_buffer_stack_max;
01235 YY_BUFFER_STATE * yy_buffer_stack;
01236 char yy_hold_char;
01237 int yy_n_chars;
01238 int yyleng_r;
01239 char *yy_c_buf_p;
01240 int yy_init;
01241 int yy_start;
01242 int yy_did_buffer_switch_on_eof;
01243 int yy_start_stack_ptr;
01244 int yy_start_stack_depth;
01245 int *yy_start_stack;
01246 yy_state_type yy_last_accepting_state;
01247 char* yy_last_accepting_cpos;
01248
01249 int yylineno_r;
01250 int yy_flex_debug_r;
01251
01252 char *yytext_r;
01253 int yy_more_flag;
01254 int yy_more_len;
01255
01256 YYSTYPE * yylval_r;
01257
01258 YYLTYPE * yylloc_r;
01259
01260 };
01261
01262 static int yy_init_globals (yyscan_t yyscanner );
01263
01264
01265
01266 # define yylval yyg->yylval_r
01267
01268 # define yylloc yyg->yylloc_r
01269
01270 int osillex_init (yyscan_t* scanner);
01271
01272 int osillex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
01273
01274
01275
01276
01277 int osillex_destroy (yyscan_t yyscanner );
01278
01279 int osilget_debug (yyscan_t yyscanner );
01280
01281 void osilset_debug (int debug_flag ,yyscan_t yyscanner );
01282
01283 YY_EXTRA_TYPE osilget_extra (yyscan_t yyscanner );
01284
01285 void osilset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
01286
01287 FILE *osilget_in (yyscan_t yyscanner );
01288
01289 void osilset_in (FILE * in_str ,yyscan_t yyscanner );
01290
01291 FILE *osilget_out (yyscan_t yyscanner );
01292
01293 void osilset_out (FILE * out_str ,yyscan_t yyscanner );
01294
01295 int osilget_leng (yyscan_t yyscanner );
01296
01297 char *osilget_text (yyscan_t yyscanner );
01298
01299 int osilget_lineno (yyscan_t yyscanner );
01300
01301 void osilset_lineno (int line_number ,yyscan_t yyscanner );
01302
01303 YYSTYPE * osilget_lval (yyscan_t yyscanner );
01304
01305 void osilset_lval (YYSTYPE * yylval_param ,yyscan_t yyscanner );
01306
01307 YYLTYPE *osilget_lloc (yyscan_t yyscanner );
01308
01309 void osilset_lloc (YYLTYPE * yylloc_param ,yyscan_t yyscanner );
01310
01311
01312
01313
01314
01315 #ifndef YY_SKIP_YYWRAP
01316 #ifdef __cplusplus
01317 extern "C" int osilwrap (yyscan_t yyscanner );
01318 #else
01319 extern int osilwrap (yyscan_t yyscanner );
01320 #endif
01321 #endif
01322
01323 #ifndef yytext_ptr
01324 static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
01325 #endif
01326
01327 #ifdef YY_NEED_STRLEN
01328 static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
01329 #endif
01330
01331 #ifndef YY_NO_INPUT
01332
01333 #ifdef __cplusplus
01334 static int yyinput (yyscan_t yyscanner );
01335 #else
01336 static int input (yyscan_t yyscanner );
01337 #endif
01338
01339 #endif
01340
01341
01342 #ifndef YY_READ_BUF_SIZE
01343 #ifdef __ia64__
01344
01345 #define YY_READ_BUF_SIZE 16384
01346 #else
01347 #define YY_READ_BUF_SIZE 8192
01348 #endif
01349 #endif
01350
01351
01352 #ifndef ECHO
01353
01354
01355
01356 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
01357 #endif
01358
01359
01360
01361
01362 #ifndef YY_INPUT
01363 #define YY_INPUT(buf,result,max_size) \
01364 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
01365 { \
01366 int c = '*'; \
01367 size_t n; \
01368 for ( n = 0; n < max_size && \
01369 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
01370 buf[n] = (char) c; \
01371 if ( c == '\n' ) \
01372 buf[n++] = (char) c; \
01373 if ( c == EOF && ferror( yyin ) ) \
01374 YY_FATAL_ERROR( "input in flex scanner failed" ); \
01375 result = n; \
01376 } \
01377 else \
01378 { \
01379 errno=0; \
01380 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
01381 { \
01382 if( errno != EINTR) \
01383 { \
01384 YY_FATAL_ERROR( "input in flex scanner failed" ); \
01385 break; \
01386 } \
01387 errno=0; \
01388 clearerr(yyin); \
01389 } \
01390 }\
01391 \
01392
01393 #endif
01394
01395
01396
01397
01398
01399 #ifndef yyterminate
01400 #define yyterminate() return YY_NULL
01401 #endif
01402
01403
01404 #ifndef YY_START_STACK_INCR
01405 #define YY_START_STACK_INCR 25
01406 #endif
01407
01408
01409 #ifndef YY_FATAL_ERROR
01410 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg , yyscanner)
01411 #endif
01412
01413
01414
01415
01416
01417
01418 #ifndef YY_DECL
01419 #define YY_DECL_IS_OURS 1
01420
01421 extern int osillex \
01422 (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
01423
01424 #define YY_DECL int osillex \
01425 (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
01426 #endif
01427
01428
01429
01430
01431 #ifndef YY_USER_ACTION
01432 #define YY_USER_ACTION
01433 #endif
01434
01435
01436 #ifndef YY_BREAK
01437 #define YY_BREAK break;
01438 #endif
01439
01440 #define YY_RULE_SETUP \
01441 YY_USER_ACTION
01442
01445 YY_DECL
01446 {
01447 register yy_state_type yy_current_state;
01448 register char *yy_cp, *yy_bp;
01449 register int yy_act;
01450 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
01451
01452 #line 111 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01453
01454
01455 #line 1456 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.cpp"
01456
01457 yylval = yylval_param;
01458
01459 yylloc = yylloc_param;
01460
01461 if ( !yyg->yy_init )
01462 {
01463 yyg->yy_init = 1;
01464
01465 #ifdef YY_USER_INIT
01466 YY_USER_INIT;
01467 #endif
01468
01469 if ( ! yyg->yy_start )
01470 yyg->yy_start = 1;
01471
01472 if ( ! yyin )
01473 yyin = stdin;
01474
01475 if ( ! yyout )
01476 yyout = stdout;
01477
01478 if ( ! YY_CURRENT_BUFFER ) {
01479 osilensure_buffer_stack (yyscanner);
01480 YY_CURRENT_BUFFER_LVALUE =
01481 osil_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
01482 }
01483
01484 osil_load_buffer_state(yyscanner );
01485 }
01486
01487 while ( 1 )
01488 {
01489 yy_cp = yyg->yy_c_buf_p;
01490
01491
01492 *yy_cp = yyg->yy_hold_char;
01493
01494
01495
01496
01497 yy_bp = yy_cp;
01498
01499 yy_current_state = yyg->yy_start;
01500 yy_match:
01501 do
01502 {
01503 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
01504 if ( yy_accept[yy_current_state] )
01505 {
01506 yyg->yy_last_accepting_state = yy_current_state;
01507 yyg->yy_last_accepting_cpos = yy_cp;
01508 }
01509 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
01510 {
01511 yy_current_state = (int) yy_def[yy_current_state];
01512 if ( yy_current_state >= 790 )
01513 yy_c = yy_meta[(unsigned int) yy_c];
01514 }
01515 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
01516 ++yy_cp;
01517 }
01518 while ( yy_base[yy_current_state] != 1700 );
01519
01520 yy_find_action:
01521 yy_act = yy_accept[yy_current_state];
01522 if ( yy_act == 0 )
01523 {
01524 yy_cp = yyg->yy_last_accepting_cpos;
01525 yy_current_state = yyg->yy_last_accepting_state;
01526 yy_act = yy_accept[yy_current_state];
01527 }
01528
01529 YY_DO_BEFORE_ACTION;
01530
01531 if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
01532 {
01533 int yyl;
01534 for ( yyl = 0; yyl < yyleng; ++yyl )
01535 if ( yytext[yyl] == '\n' )
01536
01537 do{ yylineno++;
01538 yycolumn=0;
01539 }while(0)
01540 ;
01541 }
01542
01543 do_action:
01544
01545 switch ( yy_act )
01546 {
01547 case 0:
01548
01549 *yy_cp = yyg->yy_hold_char;
01550 yy_cp = yyg->yy_last_accepting_cpos;
01551 yy_current_state = yyg->yy_last_accepting_state;
01552 goto yy_find_action;
01553
01554 case 1:
01555
01556 YY_RULE_SETUP
01557 #line 113 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01558
01559 YY_BREAK
01560
01561 case 2:
01562 YY_RULE_SETUP
01563 #line 118 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01564 {YY_PRINT; yylval->sval = yytext; return(QUOTE);}
01565 YY_BREAK
01566 case 3:
01567
01568 YY_RULE_SETUP
01569 #line 119 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01570 {YY_PRINT; return(GREATERTHAN);}
01571 YY_BREAK
01572 case 4:
01573 YY_RULE_SETUP
01574 #line 120 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01575 {YY_PRINT; yylval->ival = atoi(yytext); return(INTEGER);}
01576 YY_BREAK
01577 case 5:
01578 YY_RULE_SETUP
01579 #line 122 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01580 {YY_PRINT;
01581 char *yytextEnd;
01582 yylval->dval = os_strtod_wrap( yytext, &yytextEnd);
01583 if( (unsigned)(yytextEnd - yytext) != strlen( yytext)){
01584 std::ostringstream outStr;
01585 outStr << "encountered a spurious character in the lexer" << endl;
01586 outStr << "The first character is: ";
01587 outStr << yytext;
01588 outStr << endl;
01589 outStr << "See line number: " << yylineno << endl;
01590 throw ErrorClass( outStr.str());
01591 }
01592 return(DOUBLE);}
01593 YY_BREAK
01594 case 6:
01595
01596 YY_RULE_SETUP
01597 #line 138 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01598 {YY_PRINT; return(ENDOFELEMENT);}
01599 YY_BREAK
01600 case 7:
01601
01602 YY_RULE_SETUP
01603 #line 141 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01604 {YY_PRINT; return(NUMBEROFVARIABLESATT);}
01605 YY_BREAK
01606 case 8:
01607
01608 YY_RULE_SETUP
01609 #line 142 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01610 {YY_PRINT; return(NUMBEROFCONSTRAINTSATT);}
01611 YY_BREAK
01612 case 9:
01613
01614 YY_RULE_SETUP
01615 #line 143 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01616 {YY_PRINT; return(NUMBEROFOBJECTIVESATT);}
01617 YY_BREAK
01618 case 10:
01619
01620 YY_RULE_SETUP
01621 #line 144 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01622 {YY_PRINT; return(NUMBEROFQTERMSATT);}
01623 YY_BREAK
01624 case 11:
01625
01626 YY_RULE_SETUP
01627 #line 145 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01628 {YY_PRINT; return(NUMBEROFNONLINEAREXPRESSIONS);}
01629 YY_BREAK
01630 case 12:
01631
01632 YY_RULE_SETUP
01633 #line 146 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01634 {YY_PRINT; return(NUMBEROFSTAGESATT);}
01635 YY_BREAK
01636 case 13:
01637
01638 YY_RULE_SETUP
01639 #line 149 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01640 {YY_PRINT; return(IDXATT);}
01641 YY_BREAK
01642 case 14:
01643
01644 YY_RULE_SETUP
01645 #line 150 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01646 {YY_PRINT; return(IDXONEATT);}
01647 YY_BREAK
01648 case 15:
01649
01650 YY_RULE_SETUP
01651 #line 151 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01652 {YY_PRINT; return(IDXTWOATT);}
01653 YY_BREAK
01654 case 16:
01655
01656 YY_RULE_SETUP
01657 #line 152 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01658 {YY_PRINT; return(COEFATT);}
01659 YY_BREAK
01660 case 17:
01661
01662 YY_RULE_SETUP
01663 #line 153 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01664 {YY_PRINT; return(VALUEATT);}
01665 YY_BREAK
01666 case 18:
01667
01668 YY_RULE_SETUP
01669 #line 154 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01670 {YY_PRINT; return(STARTIDXATT);}
01671 YY_BREAK
01672 case 19:
01673
01674 YY_RULE_SETUP
01675 #line 155 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01676 {YY_PRINT; return(HORIZONATT);}
01677 YY_BREAK
01678 case 20:
01679
01680 YY_RULE_SETUP
01681 #line 156 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01682 {YY_PRINT; return(STARTATT);}
01683 YY_BREAK
01684 case 21:
01685
01686 YY_RULE_SETUP
01687 #line 158 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01688 {YY_PRINT; BEGIN doublequoteattributetext; return(IDATT);}
01689 YY_BREAK
01690 case 22:
01691
01692 YY_RULE_SETUP
01693 #line 159 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01694 {YY_PRINT; BEGIN singlequoteattributetext; return(IDATT);}
01695 YY_BREAK
01696 case 23:
01697
01698 YY_RULE_SETUP
01699 #line 160 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01700 {YY_PRINT; BEGIN doublequoteattributetext; return(TYPEATT);}
01701 YY_BREAK
01702 case 24:
01703
01704 YY_RULE_SETUP
01705 #line 161 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01706 {YY_PRINT; BEGIN singlequoteattributetext; return(TYPEATT);}
01707 YY_BREAK
01708 case 25:
01709
01710 YY_RULE_SETUP
01711 #line 162 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01712 {YY_PRINT; BEGIN doublequoteattributetext; return(NAMEATT);}
01713 YY_BREAK
01714 case 26:
01715
01716 YY_RULE_SETUP
01717 #line 163 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01718 {YY_PRINT; BEGIN singlequoteattributetext; return(NAMEATT);}
01719 YY_BREAK
01720
01721 case 27:
01722
01723 YY_RULE_SETUP
01724 #line 166 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01725 {YY_PRINT; return(OSILEND);}
01726 YY_BREAK
01727 case 28:
01728
01729 YY_RULE_SETUP
01730 #line 167 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01731 {YY_PRINT; return(INSTANCEDATAEND);}
01732 YY_BREAK
01733 case 29:
01734
01735 YY_RULE_SETUP
01736 #line 168 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01737 {YY_PRINT; return(INSTANCEDATASTARTEND);}
01738 YY_BREAK
01739 case 30:
01740
01741 YY_RULE_SETUP
01742 #line 169 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01743 {YY_PRINT; return(QUADRATICCOEFFICIENTSSTART);}
01744 YY_BREAK
01745 case 31:
01746
01747 YY_RULE_SETUP
01748 #line 170 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01749 {YY_PRINT; return(QUADRATICCOEFFICIENTSEND);}
01750 YY_BREAK
01751 case 32:
01752
01753 YY_RULE_SETUP
01754 #line 171 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01755 {YY_PRINT; return(QTERMSTART);}
01756 YY_BREAK
01757 case 33:
01758
01759 YY_RULE_SETUP
01760 #line 172 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01761 {YY_PRINT; return(QTERMEND);}
01762 YY_BREAK
01763
01764 case 34:
01765
01766 YY_RULE_SETUP
01767 #line 175 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01768 {YY_PRINT; return(NONLINEAREXPRESSIONSSTART);}
01769 YY_BREAK
01770 case 35:
01771
01772 YY_RULE_SETUP
01773 #line 176 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01774 {YY_PRINT; return(NONLINEAREXPRESSIONSEND);}
01775 YY_BREAK
01776 case 36:
01777
01778 YY_RULE_SETUP
01779 #line 177 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01780 {YY_PRINT; return(NLSTART);}
01781 YY_BREAK
01782 case 37:
01783
01784 YY_RULE_SETUP
01785 #line 178 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01786 {YY_PRINT; return(NLEND);}
01787 YY_BREAK
01788 case 38:
01789
01790 YY_RULE_SETUP
01791 #line 179 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01792 {YY_PRINT; return(TIMESSTART);}
01793 YY_BREAK
01794 case 39:
01795
01796 YY_RULE_SETUP
01797 #line 180 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01798 {YY_PRINT; return(TIMESEND);}
01799 YY_BREAK
01800 case 40:
01801
01802 YY_RULE_SETUP
01803 #line 181 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01804 {YY_PRINT; return(DIVIDESTART);}
01805 YY_BREAK
01806 case 41:
01807
01808 YY_RULE_SETUP
01809 #line 182 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01810 {YY_PRINT; return(DIVIDEEND);}
01811 YY_BREAK
01812 case 42:
01813
01814 YY_RULE_SETUP
01815 #line 183 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01816 {YY_PRINT; return(PLUSSTART);}
01817 YY_BREAK
01818 case 43:
01819
01820 YY_RULE_SETUP
01821 #line 184 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01822 {YY_PRINT; return(PLUSEND);}
01823 YY_BREAK
01824 case 44:
01825
01826 YY_RULE_SETUP
01827 #line 185 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01828 {YY_PRINT; return(MINUSSTART);}
01829 YY_BREAK
01830 case 45:
01831
01832 YY_RULE_SETUP
01833 #line 186 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01834 {YY_PRINT; return(MINUSEND);}
01835 YY_BREAK
01836 case 46:
01837
01838 YY_RULE_SETUP
01839 #line 187 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01840 {YY_PRINT; return(NEGATESTART);}
01841 YY_BREAK
01842 case 47:
01843
01844 YY_RULE_SETUP
01845 #line 188 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01846 {YY_PRINT; return(NEGATEEND);}
01847 YY_BREAK
01848 case 48:
01849
01850 YY_RULE_SETUP
01851 #line 189 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01852 {YY_PRINT; return(POWERSTART);}
01853 YY_BREAK
01854 case 49:
01855
01856 YY_RULE_SETUP
01857 #line 190 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01858 {YY_PRINT; return(POWEREND);}
01859 YY_BREAK
01860 case 50:
01861
01862 YY_RULE_SETUP
01863 #line 191 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01864 {YY_PRINT; return(LNSTART);}
01865 YY_BREAK
01866 case 51:
01867
01868 YY_RULE_SETUP
01869 #line 192 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01870 {YY_PRINT; return(LNEND);}
01871 YY_BREAK
01872 case 52:
01873
01874 YY_RULE_SETUP
01875 #line 193 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01876 {YY_PRINT; return(SQRTSTART);}
01877 YY_BREAK
01878 case 53:
01879
01880 YY_RULE_SETUP
01881 #line 194 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01882 {YY_PRINT; return(SQRTEND);}
01883 YY_BREAK
01884 case 54:
01885
01886 YY_RULE_SETUP
01887 #line 195 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01888 {YY_PRINT; return(SQUARESTART);}
01889 YY_BREAK
01890 case 55:
01891
01892 YY_RULE_SETUP
01893 #line 196 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01894 {YY_PRINT; return(SQUAREEND);}
01895 YY_BREAK
01896 case 56:
01897
01898 YY_RULE_SETUP
01899 #line 197 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01900 {YY_PRINT; return(SINSTART);}
01901 YY_BREAK
01902 case 57:
01903
01904 YY_RULE_SETUP
01905 #line 198 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01906 {YY_PRINT; return(SINEND);}
01907 YY_BREAK
01908 case 58:
01909
01910 YY_RULE_SETUP
01911 #line 199 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01912 {YY_PRINT; return(COSSTART);}
01913 YY_BREAK
01914 case 59:
01915
01916 YY_RULE_SETUP
01917 #line 200 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01918 {YY_PRINT; return(COSEND);}
01919 YY_BREAK
01920 case 60:
01921
01922 YY_RULE_SETUP
01923 #line 201 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01924 {YY_PRINT; return(EXPSTART);}
01925 YY_BREAK
01926 case 61:
01927
01928 YY_RULE_SETUP
01929 #line 202 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01930 {YY_PRINT; return(EXPEND);}
01931 YY_BREAK
01932 case 62:
01933
01934 YY_RULE_SETUP
01935 #line 203 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01936 {YY_PRINT; return(ABSSTART);}
01937 YY_BREAK
01938 case 63:
01939
01940 YY_RULE_SETUP
01941 #line 204 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01942 {YY_PRINT; return(ABSEND);}
01943 YY_BREAK
01944 case 64:
01945
01946 YY_RULE_SETUP
01947 #line 205 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01948 {YY_PRINT; return(ERFSTART);}
01949 YY_BREAK
01950 case 65:
01951
01952 YY_RULE_SETUP
01953 #line 206 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01954 {YY_PRINT; return(ERFEND);}
01955 YY_BREAK
01956 case 66:
01957
01958 YY_RULE_SETUP
01959 #line 207 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01960 {YY_PRINT; return(IFSTART);}
01961 YY_BREAK
01962 case 67:
01963
01964 YY_RULE_SETUP
01965 #line 208 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01966 {YY_PRINT; return(IFEND);}
01967 YY_BREAK
01968 case 68:
01969
01970 YY_RULE_SETUP
01971 #line 209 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01972 {YY_PRINT; return(MAXSTART);}
01973 YY_BREAK
01974 case 69:
01975
01976 YY_RULE_SETUP
01977 #line 210 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01978 {YY_PRINT; return(MAXEND);}
01979 YY_BREAK
01980 case 70:
01981
01982 YY_RULE_SETUP
01983 #line 211 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01984 {YY_PRINT; return(MINSTART);}
01985 YY_BREAK
01986 case 71:
01987
01988 YY_RULE_SETUP
01989 #line 212 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01990 {YY_PRINT; return(MINEND);}
01991 YY_BREAK
01992 case 72:
01993
01994 YY_RULE_SETUP
01995 #line 213 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
01996 {YY_PRINT; return(SUMSTART);}
01997 YY_BREAK
01998 case 73:
01999
02000 YY_RULE_SETUP
02001 #line 214 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02002 {YY_PRINT; return(SUMEND);}
02003 YY_BREAK
02004 case 74:
02005
02006 YY_RULE_SETUP
02007 #line 215 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02008 {YY_PRINT; return(ALLDIFFSTART);}
02009 YY_BREAK
02010 case 75:
02011
02012 YY_RULE_SETUP
02013 #line 216 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02014 {YY_PRINT; return(ALLDIFFEND);}
02015 YY_BREAK
02016 case 76:
02017
02018 YY_RULE_SETUP
02019 #line 217 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02020 {YY_PRINT; return(PRODUCTSTART);}
02021 YY_BREAK
02022 case 77:
02023
02024 YY_RULE_SETUP
02025 #line 218 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02026 {YY_PRINT; return(PRODUCTEND);}
02027 YY_BREAK
02028 case 78:
02029
02030 YY_RULE_SETUP
02031 #line 220 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02032 {YY_PRINT; return(NUMBERSTART);}
02033 YY_BREAK
02034 case 79:
02035
02036 YY_RULE_SETUP
02037 #line 221 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02038 {YY_PRINT; return(NUMBEREND);}
02039 YY_BREAK
02040 case 80:
02041
02042 YY_RULE_SETUP
02043 #line 222 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02044 {YY_PRINT; return(ESTART);}
02045 YY_BREAK
02046 case 81:
02047
02048 YY_RULE_SETUP
02049 #line 223 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02050 {YY_PRINT; return(EEND);}
02051 YY_BREAK
02052 case 82:
02053
02054 YY_RULE_SETUP
02055 #line 224 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02056 {YY_PRINT; return(PISTART);}
02057 YY_BREAK
02058 case 83:
02059
02060 YY_RULE_SETUP
02061 #line 225 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02062 {YY_PRINT; return(PIEND);}
02063 YY_BREAK
02064 case 84:
02065
02066 YY_RULE_SETUP
02067 #line 226 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02068 {YY_PRINT; return(VARIABLESTART);}
02069 YY_BREAK
02070 case 85:
02071
02072 YY_RULE_SETUP
02073 #line 227 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02074 {YY_PRINT; return(VARIABLEEND);}
02075 YY_BREAK
02076
02077 case 86:
02078
02079 YY_RULE_SETUP
02080 #line 230 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02081 {YY_PRINT; return(TIMEDOMAINSTART);}
02082 YY_BREAK
02083 case 87:
02084
02085 YY_RULE_SETUP
02086 #line 231 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02087 {YY_PRINT; return(TIMEDOMAINEND);}
02088 YY_BREAK
02089 case 88:
02090
02091 YY_RULE_SETUP
02092 #line 232 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02093 {YY_PRINT; return(STAGESSTART);}
02094 YY_BREAK
02095 case 89:
02096
02097 YY_RULE_SETUP
02098 #line 233 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02099 {YY_PRINT; return(STAGESEND);}
02100 YY_BREAK
02101 case 90:
02102
02103 YY_RULE_SETUP
02104 #line 234 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02105 {YY_PRINT; return(STAGESTART);}
02106 YY_BREAK
02107 case 91:
02108
02109 YY_RULE_SETUP
02110 #line 235 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02111 {YY_PRINT; return(STAGEEND);}
02112 YY_BREAK
02113 case 92:
02114
02115 YY_RULE_SETUP
02116 #line 236 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02117 {YY_PRINT; return(VARIABLESSTART);}
02118 YY_BREAK
02119 case 93:
02120
02121 YY_RULE_SETUP
02122 #line 237 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02123 {YY_PRINT; return(VARIABLESEND);}
02124 YY_BREAK
02125 case 94:
02126
02127 YY_RULE_SETUP
02128 #line 238 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02129 {YY_PRINT; return(CONSTRAINTSSTART);}
02130 YY_BREAK
02131 case 95:
02132
02133 YY_RULE_SETUP
02134 #line 239 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02135 {YY_PRINT; return(CONSTRAINTSEND);}
02136 YY_BREAK
02137 case 96:
02138
02139 YY_RULE_SETUP
02140 #line 240 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02141 {YY_PRINT; return(OBJECTIVESSTART);}
02142 YY_BREAK
02143 case 97:
02144
02145 YY_RULE_SETUP
02146 #line 241 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02147 {YY_PRINT; return(OBJECTIVESEND);}
02148 YY_BREAK
02149 case 98:
02150
02151 YY_RULE_SETUP
02152 #line 242 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02153 {YY_PRINT; return(VARSTART);}
02154 YY_BREAK
02155 case 99:
02156
02157 YY_RULE_SETUP
02158 #line 243 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02159 {YY_PRINT; return(VAREND);}
02160 YY_BREAK
02161 case 100:
02162
02163 YY_RULE_SETUP
02164 #line 244 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02165 {YY_PRINT; return(CONSTART);}
02166 YY_BREAK
02167 case 101:
02168
02169 YY_RULE_SETUP
02170 #line 245 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02171 {YY_PRINT; return(CONEND);}
02172 YY_BREAK
02173 case 102:
02174
02175 YY_RULE_SETUP
02176 #line 246 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02177 {YY_PRINT; return(OBJSTART);}
02178 YY_BREAK
02179 case 103:
02180
02181 YY_RULE_SETUP
02182 #line 247 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02183 {YY_PRINT; return(OBJEND);}
02184 YY_BREAK
02185 case 104:
02186
02187 YY_RULE_SETUP
02188 #line 248 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02189 {YY_PRINT; return(INTERVALSTART);}
02190 YY_BREAK
02191 case 105:
02192
02193 YY_RULE_SETUP
02194 #line 249 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02195 {YY_PRINT; return(INTERVALEND);}
02196 YY_BREAK
02197
02198
02199
02200
02201
02202
02203 case 106:
02204 YY_RULE_SETUP
02205 #line 259 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02206 BEGIN comment;
02207 YY_BREAK
02208 case 107:
02209 #line 261 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02210 case 108:
02211
02212 YY_RULE_SETUP
02213 #line 261 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02214 ;
02215 YY_BREAK
02216 case 109:
02217 YY_RULE_SETUP
02218 #line 262 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02219 BEGIN 0;
02220 YY_BREAK
02221 case 110:
02222 YY_RULE_SETUP
02223 #line 264 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02224 BEGIN xmldeclaration;
02225 YY_BREAK
02226 case 111:
02227 #line 266 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02228 case 112:
02229
02230 YY_RULE_SETUP
02231 #line 266 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02232 ;
02233 YY_BREAK
02234 case 113:
02235 YY_RULE_SETUP
02236 #line 267 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02237 BEGIN 0;
02238 YY_BREAK
02239 case 114:
02240
02241 YY_RULE_SETUP
02242 #line 270 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02243 {YY_PRINT; BEGIN 0; yylval->sval = yytext; return(ATTRIBUTETEXT);}
02244 YY_BREAK
02245 case 115:
02246
02247 YY_RULE_SETUP
02248 #line 271 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02249 {YY_PRINT; BEGIN 0; yylval->sval = yytext; return(ATTRIBUTETEXT);}
02250 YY_BREAK
02251 case 116:
02252 YY_RULE_SETUP
02253 #line 273 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02254 {
02255 std::string error;
02256 std::ostringstream outStr;
02257 outStr << "encountered a spurious character in the lexer" << endl;
02258 outStr << "The first character is: ";
02259 outStr << yytext;
02260 outStr << endl;
02261 outStr << "See line number: " << yylineno << endl;
02262 error = outStr.str();
02263 throw ErrorClass( error);
02264 }
02265 YY_BREAK
02266 case 117:
02267 YY_RULE_SETUP
02268 #line 285 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
02269 ECHO;
02270 YY_BREAK
02271 #line 2272 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.cpp"
02272 case YY_STATE_EOF(INITIAL):
02273 case YY_STATE_EOF(osilattributetext):
02274 case YY_STATE_EOF(doublequoteattributetext):
02275 case YY_STATE_EOF(singlequoteattributetext):
02276 case YY_STATE_EOF(startelement):
02277 case YY_STATE_EOF(elementtext):
02278 case YY_STATE_EOF(comment):
02279 case YY_STATE_EOF(xmldeclaration):
02280 yyterminate();
02281
02282 case YY_END_OF_BUFFER:
02283 {
02284
02285 int yy_amount_of_matched_text = (int) (yy_cp - yyg->yytext_ptr) - 1;
02286
02287
02288 *yy_cp = yyg->yy_hold_char;
02289 YY_RESTORE_YY_MORE_OFFSET
02290
02291 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
02292 {
02293
02294
02295
02296
02297
02298
02299
02300
02301
02302 yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
02303 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
02304 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
02305 }
02306
02307
02308
02309
02310
02311
02312
02313
02314 if ( yyg->yy_c_buf_p <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
02315 {
02316 yy_state_type yy_next_state;
02317
02318 yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched_text;
02319
02320 yy_current_state = yy_get_previous_state( yyscanner );
02321
02322
02323
02324
02325
02326
02327
02328
02329
02330
02331 yy_next_state = yy_try_NUL_trans( yy_current_state , yyscanner);
02332
02333 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
02334
02335 if ( yy_next_state )
02336 {
02337
02338 yy_cp = ++yyg->yy_c_buf_p;
02339 yy_current_state = yy_next_state;
02340 goto yy_match;
02341 }
02342
02343 else
02344 {
02345 yy_cp = yyg->yy_c_buf_p;
02346 goto yy_find_action;
02347 }
02348 }
02349
02350 else switch ( yy_get_next_buffer( yyscanner ) )
02351 {
02352 case EOB_ACT_END_OF_FILE:
02353 {
02354 yyg->yy_did_buffer_switch_on_eof = 0;
02355
02356 if ( osilwrap(yyscanner ) )
02357 {
02358
02359
02360
02361
02362
02363
02364
02365
02366
02367 yyg->yy_c_buf_p = yyg->yytext_ptr + YY_MORE_ADJ;
02368
02369 yy_act = YY_STATE_EOF(YY_START);
02370 goto do_action;
02371 }
02372
02373 else
02374 {
02375 if ( ! yyg->yy_did_buffer_switch_on_eof )
02376 YY_NEW_FILE;
02377 }
02378 break;
02379 }
02380
02381 case EOB_ACT_CONTINUE_SCAN:
02382 yyg->yy_c_buf_p =
02383 yyg->yytext_ptr + yy_amount_of_matched_text;
02384
02385 yy_current_state = yy_get_previous_state( yyscanner );
02386
02387 yy_cp = yyg->yy_c_buf_p;
02388 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
02389 goto yy_match;
02390
02391 case EOB_ACT_LAST_MATCH:
02392 yyg->yy_c_buf_p =
02393 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars];
02394
02395 yy_current_state = yy_get_previous_state( yyscanner );
02396
02397 yy_cp = yyg->yy_c_buf_p;
02398 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
02399 goto yy_find_action;
02400 }
02401 break;
02402 }
02403
02404 default:
02405 YY_FATAL_ERROR(
02406 "fatal flex scanner internal error--no action found" );
02407 }
02408 }
02409 }
02410
02411
02412
02413
02414
02415
02416
02417
02418 static int yy_get_next_buffer (yyscan_t yyscanner)
02419 {
02420 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02421 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
02422 register char *source = yyg->yytext_ptr;
02423 register int number_to_move, i;
02424 int ret_val;
02425
02426 if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] )
02427 YY_FATAL_ERROR(
02428 "fatal flex scanner internal error--end of buffer missed" );
02429
02430 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
02431 {
02432 if ( yyg->yy_c_buf_p - yyg->yytext_ptr - YY_MORE_ADJ == 1 )
02433 {
02434
02435
02436
02437 return EOB_ACT_END_OF_FILE;
02438 }
02439
02440 else
02441 {
02442
02443
02444
02445 return EOB_ACT_LAST_MATCH;
02446 }
02447 }
02448
02449
02450
02451
02452 number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1;
02453
02454 for ( i = 0; i < number_to_move; ++i )
02455 *(dest++) = *(source++);
02456
02457 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
02458
02459
02460
02461 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
02462
02463 else
02464 {
02465 int num_to_read =
02466 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
02467
02468 while ( num_to_read <= 0 )
02469 {
02470
02471
02472 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
02473
02474 int yy_c_buf_p_offset =
02475 (int) (yyg->yy_c_buf_p - b->yy_ch_buf);
02476
02477 if ( b->yy_is_our_buffer )
02478 {
02479 int new_size = b->yy_buf_size * 2;
02480
02481 if ( new_size <= 0 )
02482 b->yy_buf_size += b->yy_buf_size / 8;
02483 else
02484 b->yy_buf_size *= 2;
02485
02486 b->yy_ch_buf = (char *)
02487
02488 osilrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ,yyscanner );
02489 }
02490 else
02491
02492 b->yy_ch_buf = 0;
02493
02494 if ( ! b->yy_ch_buf )
02495 YY_FATAL_ERROR(
02496 "fatal error - scanner input buffer overflow" );
02497
02498 yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
02499
02500 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
02501 number_to_move - 1;
02502
02503 }
02504
02505 if ( num_to_read > YY_READ_BUF_SIZE )
02506 num_to_read = YY_READ_BUF_SIZE;
02507
02508
02509 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
02510 yyg->yy_n_chars, (size_t) num_to_read );
02511
02512 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
02513 }
02514
02515 if ( yyg->yy_n_chars == 0 )
02516 {
02517 if ( number_to_move == YY_MORE_ADJ )
02518 {
02519 ret_val = EOB_ACT_END_OF_FILE;
02520 osilrestart(yyin ,yyscanner);
02521 }
02522
02523 else
02524 {
02525 ret_val = EOB_ACT_LAST_MATCH;
02526 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
02527 YY_BUFFER_EOF_PENDING;
02528 }
02529 }
02530
02531 else
02532 ret_val = EOB_ACT_CONTINUE_SCAN;
02533
02534 if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
02535
02536 yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
02537 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) osilrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
02538 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
02539 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
02540 }
02541
02542 yyg->yy_n_chars += number_to_move;
02543 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] = YY_END_OF_BUFFER_CHAR;
02544 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
02545
02546 yyg->yytext_ptr = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
02547
02548 return ret_val;
02549 }
02550
02551
02552
02553 static yy_state_type yy_get_previous_state (yyscan_t yyscanner)
02554 {
02555 register yy_state_type yy_current_state;
02556 register char *yy_cp;
02557 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02558
02559 yy_current_state = yyg->yy_start;
02560
02561 for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
02562 {
02563 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
02564 if ( yy_accept[yy_current_state] )
02565 {
02566 yyg->yy_last_accepting_state = yy_current_state;
02567 yyg->yy_last_accepting_cpos = yy_cp;
02568 }
02569 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
02570 {
02571 yy_current_state = (int) yy_def[yy_current_state];
02572 if ( yy_current_state >= 790 )
02573 yy_c = yy_meta[(unsigned int) yy_c];
02574 }
02575 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
02576 }
02577
02578 return yy_current_state;
02579 }
02580
02581
02582
02583
02584
02585
02586 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state , yyscan_t yyscanner)
02587 {
02588 register int yy_is_jam;
02589 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02590 register char *yy_cp = yyg->yy_c_buf_p;
02591
02592 register YY_CHAR yy_c = 1;
02593 if ( yy_accept[yy_current_state] )
02594 {
02595 yyg->yy_last_accepting_state = yy_current_state;
02596 yyg->yy_last_accepting_cpos = yy_cp;
02597 }
02598 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
02599 {
02600 yy_current_state = (int) yy_def[yy_current_state];
02601 if ( yy_current_state >= 790 )
02602 yy_c = yy_meta[(unsigned int) yy_c];
02603 }
02604 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
02605 yy_is_jam = (yy_current_state == 789);
02606
02607 return yy_is_jam ? 0 : yy_current_state;
02608 }
02609
02610 #ifndef YY_NO_INPUT
02611 #ifdef __cplusplus
02612 static int yyinput (yyscan_t yyscanner)
02613 #else
02614 static int input (yyscan_t yyscanner)
02615 #endif
02616
02617 {
02618 int c;
02619 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02620
02621 *yyg->yy_c_buf_p = yyg->yy_hold_char;
02622
02623 if ( *yyg->yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
02624 {
02625
02626
02627
02628
02629 if ( yyg->yy_c_buf_p < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
02630
02631 *yyg->yy_c_buf_p = '\0';
02632
02633 else
02634 {
02635 int offset = yyg->yy_c_buf_p - yyg->yytext_ptr;
02636 ++yyg->yy_c_buf_p;
02637
02638 switch ( yy_get_next_buffer( yyscanner ) )
02639 {
02640 case EOB_ACT_LAST_MATCH:
02641
02642
02643
02644
02645
02646
02647
02648
02649
02650
02651
02652 osilrestart(yyin ,yyscanner);
02653
02654
02655
02656 case EOB_ACT_END_OF_FILE:
02657 {
02658 if ( osilwrap(yyscanner ) )
02659 return EOF;
02660
02661 if ( ! yyg->yy_did_buffer_switch_on_eof )
02662 YY_NEW_FILE;
02663 #ifdef __cplusplus
02664 return yyinput(yyscanner);
02665 #else
02666 return input(yyscanner);
02667 #endif
02668 }
02669
02670 case EOB_ACT_CONTINUE_SCAN:
02671 yyg->yy_c_buf_p = yyg->yytext_ptr + offset;
02672 break;
02673 }
02674 }
02675 }
02676
02677 c = *(unsigned char *) yyg->yy_c_buf_p;
02678 *yyg->yy_c_buf_p = '\0';
02679 yyg->yy_hold_char = *++yyg->yy_c_buf_p;
02680
02681 if ( c == '\n' )
02682
02683 do{ yylineno++;
02684 yycolumn=0;
02685 }while(0)
02686 ;
02687
02688 return c;
02689 }
02690 #endif
02691
02697 void osilrestart (FILE * input_file , yyscan_t yyscanner)
02698 {
02699 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02700
02701 if ( ! YY_CURRENT_BUFFER ){
02702 osilensure_buffer_stack (yyscanner);
02703 YY_CURRENT_BUFFER_LVALUE =
02704 osil_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
02705 }
02706
02707 osil_init_buffer(YY_CURRENT_BUFFER,input_file ,yyscanner);
02708 osil_load_buffer_state(yyscanner );
02709 }
02710
02715 void osil_switch_to_buffer (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
02716 {
02717 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02718
02719
02720
02721
02722
02723
02724 osilensure_buffer_stack (yyscanner);
02725 if ( YY_CURRENT_BUFFER == new_buffer )
02726 return;
02727
02728 if ( YY_CURRENT_BUFFER )
02729 {
02730
02731 *yyg->yy_c_buf_p = yyg->yy_hold_char;
02732 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
02733 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
02734 }
02735
02736 YY_CURRENT_BUFFER_LVALUE = new_buffer;
02737 osil_load_buffer_state(yyscanner );
02738
02739
02740
02741
02742
02743
02744 yyg->yy_did_buffer_switch_on_eof = 1;
02745 }
02746
02747 static void osil_load_buffer_state (yyscan_t yyscanner)
02748 {
02749 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02750 yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
02751 yyg->yytext_ptr = yyg->yy_c_buf_p = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
02752 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
02753 yyg->yy_hold_char = *yyg->yy_c_buf_p;
02754 }
02755
02762 YY_BUFFER_STATE osil_create_buffer (FILE * file, int size , yyscan_t yyscanner)
02763 {
02764 YY_BUFFER_STATE b;
02765
02766 b = (YY_BUFFER_STATE) osilalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
02767 if ( ! b )
02768 YY_FATAL_ERROR( "out of dynamic memory in osil_create_buffer()" );
02769
02770 b->yy_buf_size = size;
02771
02772
02773
02774
02775 b->yy_ch_buf = (char *) osilalloc(b->yy_buf_size + 2 ,yyscanner );
02776 if ( ! b->yy_ch_buf )
02777 YY_FATAL_ERROR( "out of dynamic memory in osil_create_buffer()" );
02778
02779 b->yy_is_our_buffer = 1;
02780
02781 osil_init_buffer(b,file ,yyscanner);
02782
02783 return b;
02784 }
02785
02790 void osil_delete_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
02791 {
02792 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02793
02794 if ( ! b )
02795 return;
02796
02797 if ( b == YY_CURRENT_BUFFER )
02798 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
02799
02800 if ( b->yy_is_our_buffer )
02801 osilfree((void *) b->yy_ch_buf ,yyscanner );
02802
02803 osilfree((void *) b ,yyscanner );
02804 }
02805
02806 #ifndef __cplusplus
02807 extern int isatty (int );
02808 #endif
02809
02810
02811
02812
02813
02814 static void osil_init_buffer (YY_BUFFER_STATE b, FILE * file , yyscan_t yyscanner)
02815
02816 {
02817 int oerrno = errno;
02818 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02819
02820 osil_flush_buffer(b ,yyscanner);
02821
02822 b->yy_input_file = file;
02823 b->yy_fill_buffer = 1;
02824
02825
02826
02827
02828
02829 if (b != YY_CURRENT_BUFFER){
02830 b->yy_bs_lineno = 1;
02831 b->yy_bs_column = 0;
02832 }
02833
02834 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
02835
02836 errno = oerrno;
02837 }
02838
02843 void osil_flush_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
02844 {
02845 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02846 if ( ! b )
02847 return;
02848
02849 b->yy_n_chars = 0;
02850
02851
02852
02853
02854
02855 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
02856 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
02857
02858 b->yy_buf_pos = &b->yy_ch_buf[0];
02859
02860 b->yy_at_bol = 1;
02861 b->yy_buffer_status = YY_BUFFER_NEW;
02862
02863 if ( b == YY_CURRENT_BUFFER )
02864 osil_load_buffer_state(yyscanner );
02865 }
02866
02873 void osilpush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
02874 {
02875 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02876 if (new_buffer == NULL)
02877 return;
02878
02879 osilensure_buffer_stack(yyscanner);
02880
02881
02882 if ( YY_CURRENT_BUFFER )
02883 {
02884
02885 *yyg->yy_c_buf_p = yyg->yy_hold_char;
02886 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
02887 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
02888 }
02889
02890
02891 if (YY_CURRENT_BUFFER)
02892 yyg->yy_buffer_stack_top++;
02893 YY_CURRENT_BUFFER_LVALUE = new_buffer;
02894
02895
02896 osil_load_buffer_state(yyscanner );
02897 yyg->yy_did_buffer_switch_on_eof = 1;
02898 }
02899
02904 void osilpop_buffer_state (yyscan_t yyscanner)
02905 {
02906 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02907 if (!YY_CURRENT_BUFFER)
02908 return;
02909
02910 osil_delete_buffer(YY_CURRENT_BUFFER ,yyscanner);
02911 YY_CURRENT_BUFFER_LVALUE = NULL;
02912 if (yyg->yy_buffer_stack_top > 0)
02913 --yyg->yy_buffer_stack_top;
02914
02915 if (YY_CURRENT_BUFFER) {
02916 osil_load_buffer_state(yyscanner );
02917 yyg->yy_did_buffer_switch_on_eof = 1;
02918 }
02919 }
02920
02921
02922
02923
02924 static void osilensure_buffer_stack (yyscan_t yyscanner)
02925 {
02926 int num_to_alloc;
02927 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02928
02929 if (!yyg->yy_buffer_stack) {
02930
02931
02932
02933
02934
02935 num_to_alloc = 1;
02936 yyg->yy_buffer_stack = (struct yy_buffer_state**)osilalloc
02937 (num_to_alloc * sizeof(struct yy_buffer_state*)
02938 , yyscanner);
02939 if ( ! yyg->yy_buffer_stack )
02940 YY_FATAL_ERROR( "out of dynamic memory in osilensure_buffer_stack()" );
02941
02942 memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
02943
02944 yyg->yy_buffer_stack_max = num_to_alloc;
02945 yyg->yy_buffer_stack_top = 0;
02946 return;
02947 }
02948
02949 if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){
02950
02951
02952 int grow_size = 8 ;
02953
02954 num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
02955 yyg->yy_buffer_stack = (struct yy_buffer_state**)osilrealloc
02956 (yyg->yy_buffer_stack,
02957 num_to_alloc * sizeof(struct yy_buffer_state*)
02958 , yyscanner);
02959 if ( ! yyg->yy_buffer_stack )
02960 YY_FATAL_ERROR( "out of dynamic memory in osilensure_buffer_stack()" );
02961
02962
02963 memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_size * sizeof(struct yy_buffer_state*));
02964 yyg->yy_buffer_stack_max = num_to_alloc;
02965 }
02966 }
02967
02974 YY_BUFFER_STATE osil_scan_buffer (char * base, yy_size_t size , yyscan_t yyscanner)
02975 {
02976 YY_BUFFER_STATE b;
02977
02978 if ( size < 2 ||
02979 base[size-2] != YY_END_OF_BUFFER_CHAR ||
02980 base[size-1] != YY_END_OF_BUFFER_CHAR )
02981
02982 return 0;
02983
02984 b = (YY_BUFFER_STATE) osilalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
02985 if ( ! b )
02986 YY_FATAL_ERROR( "out of dynamic memory in osil_scan_buffer()" );
02987
02988 b->yy_buf_size = size - 2;
02989 b->yy_buf_pos = b->yy_ch_buf = base;
02990 b->yy_is_our_buffer = 0;
02991 b->yy_input_file = 0;
02992 b->yy_n_chars = b->yy_buf_size;
02993 b->yy_is_interactive = 0;
02994 b->yy_at_bol = 1;
02995 b->yy_fill_buffer = 0;
02996 b->yy_buffer_status = YY_BUFFER_NEW;
02997
02998 osil_switch_to_buffer(b ,yyscanner );
02999
03000 return b;
03001 }
03002
03011 YY_BUFFER_STATE osil_scan_string (yyconst char * yystr , yyscan_t yyscanner)
03012 {
03013
03014 return osil_scan_bytes(yystr,strlen(yystr) ,yyscanner);
03015 }
03016
03024 YY_BUFFER_STATE osil_scan_bytes (yyconst char * yybytes, int _yybytes_len , yyscan_t yyscanner)
03025 {
03026 YY_BUFFER_STATE b;
03027 char *buf;
03028 yy_size_t n;
03029 int i;
03030
03031
03032 n = _yybytes_len + 2;
03033 buf = (char *) osilalloc(n ,yyscanner );
03034 if ( ! buf )
03035 YY_FATAL_ERROR( "out of dynamic memory in osil_scan_bytes()" );
03036
03037 for ( i = 0; i < _yybytes_len; ++i )
03038 buf[i] = yybytes[i];
03039
03040 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
03041
03042 b = osil_scan_buffer(buf,n ,yyscanner);
03043 if ( ! b )
03044 YY_FATAL_ERROR( "bad buffer in osil_scan_bytes()" );
03045
03046
03047
03048
03049 b->yy_is_our_buffer = 1;
03050
03051 return b;
03052 }
03053
03054 #ifndef YY_EXIT_FAILURE
03055 #define YY_EXIT_FAILURE 2
03056 #endif
03057
03058 static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
03059 {
03060 (void) fprintf( stderr, "%s\n", msg );
03061 exit( YY_EXIT_FAILURE );
03062 }
03063
03064
03065
03066 #undef yyless
03067 #define yyless(n) \
03068 do \
03069 { \
03070 \
03071 int yyless_macro_arg = (n); \
03072 YY_LESS_LINENO(yyless_macro_arg);\
03073 yytext[yyleng] = yyg->yy_hold_char; \
03074 yyg->yy_c_buf_p = yytext + yyless_macro_arg; \
03075 yyg->yy_hold_char = *yyg->yy_c_buf_p; \
03076 *yyg->yy_c_buf_p = '\0'; \
03077 yyleng = yyless_macro_arg; \
03078 } \
03079 while ( 0 )
03080
03081
03082
03086 YY_EXTRA_TYPE osilget_extra (yyscan_t yyscanner)
03087 {
03088 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03089 return yyextra;
03090 }
03091
03095 int osilget_lineno (yyscan_t yyscanner)
03096 {
03097 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03098
03099 if (! YY_CURRENT_BUFFER)
03100 return 0;
03101
03102 return yylineno;
03103 }
03104
03108 int osilget_column (yyscan_t yyscanner)
03109 {
03110 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03111
03112 if (! YY_CURRENT_BUFFER)
03113 return 0;
03114
03115 return yycolumn;
03116 }
03117
03121 FILE *osilget_in (yyscan_t yyscanner)
03122 {
03123 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03124 return yyin;
03125 }
03126
03130 FILE *osilget_out (yyscan_t yyscanner)
03131 {
03132 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03133 return yyout;
03134 }
03135
03139 int osilget_leng (yyscan_t yyscanner)
03140 {
03141 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03142 return yyleng;
03143 }
03144
03149 char *osilget_text (yyscan_t yyscanner)
03150 {
03151 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03152 return yytext;
03153 }
03154
03159 void osilset_extra (YY_EXTRA_TYPE user_defined , yyscan_t yyscanner)
03160 {
03161 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03162 yyextra = user_defined ;
03163 }
03164
03169 void osilset_lineno (int line_number , yyscan_t yyscanner)
03170 {
03171 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03172
03173
03174 if (! YY_CURRENT_BUFFER )
03175 yy_fatal_error( "osilset_lineno called with no buffer" , yyscanner);
03176
03177 yylineno = line_number;
03178 }
03179
03184 void osilset_column (int column_no , yyscan_t yyscanner)
03185 {
03186 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03187
03188
03189 if (! YY_CURRENT_BUFFER )
03190 yy_fatal_error( "osilset_column called with no buffer" , yyscanner);
03191
03192 yycolumn = column_no;
03193 }
03194
03201 void osilset_in (FILE * in_str , yyscan_t yyscanner)
03202 {
03203 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03204 yyin = in_str ;
03205 }
03206
03207 void osilset_out (FILE * out_str , yyscan_t yyscanner)
03208 {
03209 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03210 yyout = out_str ;
03211 }
03212
03213 int osilget_debug (yyscan_t yyscanner)
03214 {
03215 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03216 return yy_flex_debug;
03217 }
03218
03219 void osilset_debug (int bdebug , yyscan_t yyscanner)
03220 {
03221 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03222 yy_flex_debug = bdebug ;
03223 }
03224
03225
03226
03227 YYSTYPE * osilget_lval (yyscan_t yyscanner)
03228 {
03229 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03230 return yylval;
03231 }
03232
03233 void osilset_lval (YYSTYPE * yylval_param , yyscan_t yyscanner)
03234 {
03235 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03236 yylval = yylval_param;
03237 }
03238
03239 YYLTYPE *osilget_lloc (yyscan_t yyscanner)
03240 {
03241 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03242 return yylloc;
03243 }
03244
03245 void osilset_lloc (YYLTYPE * yylloc_param , yyscan_t yyscanner)
03246 {
03247 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03248 yylloc = yylloc_param;
03249 }
03250
03251
03252
03253
03254
03255
03256
03257
03258 int osillex_init(yyscan_t* ptr_yy_globals)
03259
03260 {
03261 if (ptr_yy_globals == NULL){
03262 errno = EINVAL;
03263 return 1;
03264 }
03265
03266 *ptr_yy_globals = (yyscan_t) osilalloc ( sizeof( struct yyguts_t ), NULL );
03267
03268 if (*ptr_yy_globals == NULL){
03269 errno = ENOMEM;
03270 return 1;
03271 }
03272
03273
03274 memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
03275
03276 return yy_init_globals ( *ptr_yy_globals );
03277 }
03278
03279
03280
03281
03282
03283
03284
03285
03286
03287 int osillex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_globals )
03288
03289 {
03290 struct yyguts_t dummy_yyguts;
03291
03292 osilset_extra (yy_user_defined, &dummy_yyguts);
03293
03294 if (ptr_yy_globals == NULL){
03295 errno = EINVAL;
03296 return 1;
03297 }
03298
03299 *ptr_yy_globals = (yyscan_t) osilalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
03300
03301 if (*ptr_yy_globals == NULL){
03302 errno = ENOMEM;
03303 return 1;
03304 }
03305
03306
03307
03308 memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
03309
03310 osilset_extra (yy_user_defined, *ptr_yy_globals);
03311
03312 return yy_init_globals ( *ptr_yy_globals );
03313 }
03314
03315 static int yy_init_globals (yyscan_t yyscanner)
03316 {
03317 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03318
03319
03320
03321
03322 yyg->yy_buffer_stack = 0;
03323 yyg->yy_buffer_stack_top = 0;
03324 yyg->yy_buffer_stack_max = 0;
03325 yyg->yy_c_buf_p = (char *) 0;
03326 yyg->yy_init = 0;
03327 yyg->yy_start = 0;
03328
03329 yyg->yy_start_stack_ptr = 0;
03330 yyg->yy_start_stack_depth = 0;
03331 yyg->yy_start_stack = NULL;
03332
03333
03334 #ifdef YY_STDINIT
03335 yyin = stdin;
03336 yyout = stdout;
03337 #else
03338 yyin = (FILE *) 0;
03339 yyout = (FILE *) 0;
03340 #endif
03341
03342
03343
03344
03345 return 0;
03346 }
03347
03348
03349 int osillex_destroy (yyscan_t yyscanner)
03350 {
03351 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03352
03353
03354 while(YY_CURRENT_BUFFER){
03355 osil_delete_buffer(YY_CURRENT_BUFFER ,yyscanner );
03356 YY_CURRENT_BUFFER_LVALUE = NULL;
03357 osilpop_buffer_state(yyscanner);
03358 }
03359
03360
03361 osilfree(yyg->yy_buffer_stack ,yyscanner);
03362 yyg->yy_buffer_stack = NULL;
03363
03364
03365 osilfree(yyg->yy_start_stack ,yyscanner );
03366 yyg->yy_start_stack = NULL;
03367
03368
03369
03370 yy_init_globals( yyscanner);
03371
03372
03373 osilfree ( yyscanner , yyscanner );
03374 yyscanner = NULL;
03375 return 0;
03376 }
03377
03378
03379
03380
03381
03382 #ifndef yytext_ptr
03383 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner)
03384 {
03385 register int i;
03386 for ( i = 0; i < n; ++i )
03387 s1[i] = s2[i];
03388 }
03389 #endif
03390
03391 #ifdef YY_NEED_STRLEN
03392 static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
03393 {
03394 register int n;
03395 for ( n = 0; s[n]; ++n )
03396 ;
03397
03398 return n;
03399 }
03400 #endif
03401
03402 void *osilalloc (yy_size_t size , yyscan_t yyscanner)
03403 {
03404 return (void *) malloc( size );
03405 }
03406
03407 void *osilrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner)
03408 {
03409
03410
03411
03412
03413
03414
03415
03416 return (void *) realloc( (char *) ptr, size );
03417 }
03418
03419 void osilfree (void * ptr , yyscan_t yyscanner)
03420 {
03421 free( (char *) ptr );
03422 }
03423
03424 #define YYTABLES_NAME "yytables"
03425
03426 #line 285 "/Users/kmartin/coin/os-nov6/OS/src/OSParsers/OSParseosil.l"
03427
03428
03429
03430