scide: DocumentManager - fix default selection length when opening file
[supercollider.git] / SCDoc / lex.scdoc.cpp
blobf9c747a6ecc24dc09ccf134d781143074a14087d
1 #line 2 "lex.scdoc.cpp"
3 #line 4 "lex.scdoc.cpp"
5 #define YY_INT_ALIGNED short int
7 /* A lexical scanner generated by flex */
9 #define yy_create_buffer scdoc_create_buffer
10 #define yy_delete_buffer scdoc_delete_buffer
11 #define yy_flex_debug scdoc_flex_debug
12 #define yy_init_buffer scdoc_init_buffer
13 #define yy_flush_buffer scdoc_flush_buffer
14 #define yy_load_buffer_state scdoc_load_buffer_state
15 #define yy_switch_to_buffer scdoc_switch_to_buffer
16 #define yyin scdocin
17 #define yyleng scdocleng
18 #define yylex scdoclex
19 #define yylineno scdoclineno
20 #define yyout scdocout
21 #define yyrestart scdocrestart
22 #define yytext scdoctext
23 #define yywrap scdocwrap
24 #define yyalloc scdocalloc
25 #define yyrealloc scdocrealloc
26 #define yyfree scdocfree
28 #define FLEX_SCANNER
29 #define YY_FLEX_MAJOR_VERSION 2
30 #define YY_FLEX_MINOR_VERSION 5
31 #define YY_FLEX_SUBMINOR_VERSION 35
32 #if YY_FLEX_SUBMINOR_VERSION > 0
33 #define FLEX_BETA
34 #endif
36 /* First, we deal with platform-specific or compiler-specific issues. */
38 /* begin standard C headers. */
39 #include <stdio.h>
40 #include <string.h>
41 #include <errno.h>
42 #include <stdlib.h>
44 /* end standard C headers. */
46 /* flex integer type definitions */
48 #ifndef FLEXINT_H
49 #define FLEXINT_H
51 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
53 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
55 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
56 * if you want the limit (max/min) macros for int types.
58 #ifndef __STDC_LIMIT_MACROS
59 #define __STDC_LIMIT_MACROS 1
60 #endif
62 #include <inttypes.h>
63 typedef int8_t flex_int8_t;
64 typedef uint8_t flex_uint8_t;
65 typedef int16_t flex_int16_t;
66 typedef uint16_t flex_uint16_t;
67 typedef int32_t flex_int32_t;
68 typedef uint32_t flex_uint32_t;
69 #else
70 typedef signed char flex_int8_t;
71 typedef short int flex_int16_t;
72 typedef int flex_int32_t;
73 typedef unsigned char flex_uint8_t;
74 typedef unsigned short int flex_uint16_t;
75 typedef unsigned int flex_uint32_t;
77 /* Limits of integral types. */
78 #ifndef INT8_MIN
79 #define INT8_MIN (-128)
80 #endif
81 #ifndef INT16_MIN
82 #define INT16_MIN (-32767-1)
83 #endif
84 #ifndef INT32_MIN
85 #define INT32_MIN (-2147483647-1)
86 #endif
87 #ifndef INT8_MAX
88 #define INT8_MAX (127)
89 #endif
90 #ifndef INT16_MAX
91 #define INT16_MAX (32767)
92 #endif
93 #ifndef INT32_MAX
94 #define INT32_MAX (2147483647)
95 #endif
96 #ifndef UINT8_MAX
97 #define UINT8_MAX (255U)
98 #endif
99 #ifndef UINT16_MAX
100 #define UINT16_MAX (65535U)
101 #endif
102 #ifndef UINT32_MAX
103 #define UINT32_MAX (4294967295U)
104 #endif
106 #endif /* ! C99 */
108 #endif /* ! FLEXINT_H */
110 #ifdef __cplusplus
112 /* The "const" storage-class-modifier is valid. */
113 #define YY_USE_CONST
115 #else /* ! __cplusplus */
117 /* C99 requires __STDC__ to be defined as 1. */
118 #if defined (__STDC__)
120 #define YY_USE_CONST
122 #endif /* defined (__STDC__) */
123 #endif /* ! __cplusplus */
125 #ifdef YY_USE_CONST
126 #define yyconst const
127 #else
128 #define yyconst
129 #endif
131 /* Returned upon end-of-file. */
132 #define YY_NULL 0
134 /* Promotes a possibly negative, possibly signed char to an unsigned
135 * integer for use as an array index. If the signed char is negative,
136 * we want to instead treat it as an 8-bit unsigned char, hence the
137 * double cast.
139 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
141 /* Enter a start condition. This macro really ought to take a parameter,
142 * but we do it the disgusting crufty way forced on us by the ()-less
143 * definition of BEGIN.
145 #define BEGIN (yy_start) = 1 + 2 *
147 /* Translate the current start state into a value that can be later handed
148 * to BEGIN to return to the state. The YYSTATE alias is for lex
149 * compatibility.
151 #define YY_START (((yy_start) - 1) / 2)
152 #define YYSTATE YY_START
154 /* Action number for EOF rule of a given start state. */
155 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
157 /* Special action meaning "start processing a new file". */
158 #define YY_NEW_FILE scdocrestart(scdocin )
160 #define YY_END_OF_BUFFER_CHAR 0
162 /* Size of default input buffer. */
163 #ifndef YY_BUF_SIZE
164 #ifdef __ia64__
165 /* On IA-64, the buffer size is 16k, not 8k.
166 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
167 * Ditto for the __ia64__ case accordingly.
169 #define YY_BUF_SIZE 32768
170 #else
171 #define YY_BUF_SIZE 16384
172 #endif /* __ia64__ */
173 #endif
175 /* The state buf must be large enough to hold one state per character in the main buffer.
177 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
179 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
180 #define YY_TYPEDEF_YY_BUFFER_STATE
181 typedef struct yy_buffer_state *YY_BUFFER_STATE;
182 #endif
184 extern int scdocleng;
186 extern FILE *scdocin, *scdocout;
188 #define EOB_ACT_CONTINUE_SCAN 0
189 #define EOB_ACT_END_OF_FILE 1
190 #define EOB_ACT_LAST_MATCH 2
192 /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
193 * access to the local variable yy_act. Since yyless() is a macro, it would break
194 * existing scanners that call yyless() from OUTSIDE scdoclex.
195 * One obvious solution it to make yy_act a global. I tried that, and saw
196 * a 5% performance hit in a non-scdoclineno scanner, because yy_act is
197 * normally declared as a register variable-- so it is not worth it.
199 #define YY_LESS_LINENO(n) \
200 do { \
201 int yyl;\
202 for ( yyl = n; yyl < scdocleng; ++yyl )\
203 if ( scdoctext[yyl] == '\n' )\
204 --scdoclineno;\
205 }while(0)
207 /* Return all but the first "n" matched characters back to the input stream. */
208 #define yyless(n) \
209 do \
211 /* Undo effects of setting up scdoctext. */ \
212 int yyless_macro_arg = (n); \
213 YY_LESS_LINENO(yyless_macro_arg);\
214 *yy_cp = (yy_hold_char); \
215 YY_RESTORE_YY_MORE_OFFSET \
216 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
217 YY_DO_BEFORE_ACTION; /* set up scdoctext again */ \
219 while ( 0 )
221 #define unput(c) yyunput( c, (yytext_ptr) )
223 #ifndef YY_TYPEDEF_YY_SIZE_T
224 #define YY_TYPEDEF_YY_SIZE_T
225 typedef size_t yy_size_t;
226 #endif
228 #ifndef YY_STRUCT_YY_BUFFER_STATE
229 #define YY_STRUCT_YY_BUFFER_STATE
230 struct yy_buffer_state
232 FILE *yy_input_file;
234 char *yy_ch_buf; /* input buffer */
235 char *yy_buf_pos; /* current position in input buffer */
237 /* Size of input buffer in bytes, not including room for EOB
238 * characters.
240 yy_size_t yy_buf_size;
242 /* Number of characters read into yy_ch_buf, not including EOB
243 * characters.
245 int yy_n_chars;
247 /* Whether we "own" the buffer - i.e., we know we created it,
248 * and can realloc() it to grow it, and should free() it to
249 * delete it.
251 int yy_is_our_buffer;
253 /* Whether this is an "interactive" input source; if so, and
254 * if we're using stdio for input, then we want to use getc()
255 * instead of fread(), to make sure we stop fetching input after
256 * each newline.
258 int yy_is_interactive;
260 /* Whether we're considered to be at the beginning of a line.
261 * If so, '^' rules will be active on the next match, otherwise
262 * not.
264 int yy_at_bol;
266 int yy_bs_lineno; /**< The line count. */
267 int yy_bs_column; /**< The column count. */
269 /* Whether to try to fill the input buffer when we reach the
270 * end of it.
272 int yy_fill_buffer;
274 int yy_buffer_status;
276 #define YY_BUFFER_NEW 0
277 #define YY_BUFFER_NORMAL 1
278 /* When an EOF's been seen but there's still some text to process
279 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
280 * shouldn't try reading from the input source any more. We might
281 * still have a bunch of tokens to match, though, because of
282 * possible backing-up.
284 * When we actually see the EOF, we change the status to "new"
285 * (via scdocrestart()), so that the user can continue scanning by
286 * just pointing scdocin at a new input file.
288 #define YY_BUFFER_EOF_PENDING 2
291 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
293 /* Stack of input buffers. */
294 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
295 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
296 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
298 /* We provide macros for accessing buffer states in case in the
299 * future we want to put the buffer states in a more general
300 * "scanner state".
302 * Returns the top of the stack, or NULL.
304 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
305 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
306 : NULL)
308 /* Same as previous macro, but useful when we know that the buffer stack is not
309 * NULL or when we need an lvalue. For internal use only.
311 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
313 /* yy_hold_char holds the character lost when scdoctext is formed. */
314 static char yy_hold_char;
315 static int yy_n_chars; /* number of characters read into yy_ch_buf */
316 int scdocleng;
318 /* Points to current character in buffer. */
319 static char *yy_c_buf_p = (char *) 0;
320 static int yy_init = 0; /* whether we need to initialize */
321 static int yy_start = 0; /* start state number */
323 /* Flag which is used to allow scdocwrap()'s to do buffer switches
324 * instead of setting up a fresh scdocin. A bit of a hack ...
326 static int yy_did_buffer_switch_on_eof;
328 void scdocrestart (FILE *input_file );
329 void scdoc_switch_to_buffer (YY_BUFFER_STATE new_buffer );
330 YY_BUFFER_STATE scdoc_create_buffer (FILE *file,int size );
331 void scdoc_delete_buffer (YY_BUFFER_STATE b );
332 void scdoc_flush_buffer (YY_BUFFER_STATE b );
333 void scdocpush_buffer_state (YY_BUFFER_STATE new_buffer );
334 void scdocpop_buffer_state (void );
336 static void scdocensure_buffer_stack (void );
337 static void scdoc_load_buffer_state (void );
338 static void scdoc_init_buffer (YY_BUFFER_STATE b,FILE *file );
340 #define YY_FLUSH_BUFFER scdoc_flush_buffer(YY_CURRENT_BUFFER )
342 YY_BUFFER_STATE scdoc_scan_buffer (char *base,yy_size_t size );
343 YY_BUFFER_STATE scdoc_scan_string (yyconst char *yy_str );
344 YY_BUFFER_STATE scdoc_scan_bytes (yyconst char *bytes,int len );
346 void *scdocalloc (yy_size_t );
347 void *scdocrealloc (void *,yy_size_t );
348 void scdocfree (void * );
350 #define yy_new_buffer scdoc_create_buffer
352 #define yy_set_interactive(is_interactive) \
354 if ( ! YY_CURRENT_BUFFER ){ \
355 scdocensure_buffer_stack (); \
356 YY_CURRENT_BUFFER_LVALUE = \
357 scdoc_create_buffer(scdocin,YY_BUF_SIZE ); \
359 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
362 #define yy_set_bol(at_bol) \
364 if ( ! YY_CURRENT_BUFFER ){\
365 scdocensure_buffer_stack (); \
366 YY_CURRENT_BUFFER_LVALUE = \
367 scdoc_create_buffer(scdocin,YY_BUF_SIZE ); \
369 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
372 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
374 /* Begin user sect3 */
376 #define scdocwrap(n) 1
377 #define YY_SKIP_YYWRAP
379 typedef unsigned char YY_CHAR;
381 FILE *scdocin = (FILE *) 0, *scdocout = (FILE *) 0;
383 typedef int yy_state_type;
385 extern int scdoclineno;
387 int scdoclineno = 1;
389 extern char *scdoctext;
390 #define yytext_ptr scdoctext
392 static yy_state_type yy_get_previous_state (void );
393 static yy_state_type yy_try_NUL_trans (yy_state_type current_state );
394 static int yy_get_next_buffer (void );
395 static void yy_fatal_error (yyconst char msg[] );
397 /* Done after the current pattern has been matched and before the
398 * corresponding action - sets up scdoctext.
400 #define YY_DO_BEFORE_ACTION \
401 (yytext_ptr) = yy_bp; \
402 scdocleng = (size_t) (yy_cp - yy_bp); \
403 (yy_hold_char) = *yy_cp; \
404 *yy_cp = '\0'; \
405 (yy_c_buf_p) = yy_cp;
407 #define YY_NUM_RULES 107
408 #define YY_END_OF_BUFFER 108
409 /* This struct is not used in this scanner,
410 but its presence is necessary. */
411 struct yy_trans_info
413 flex_int32_t yy_verify;
414 flex_int32_t yy_nxt;
416 static yyconst flex_int16_t yy_accept[1261] =
417 { 0,
418 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
419 0, 0, 0, 0, 0, 0, 108, 66, 55, 48,
420 56, 64, 66, 50, 67, 63, 63, 63, 63, 63,
421 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
422 63, 67, 66, 65, 54, 47, 67, 64, 67, 54,
423 46, 56, 67, 89, 89, 85, 56, 86, 88, 90,
424 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
425 87, 90, 106, 106, 56, 106, 106, 106, 106, 106,
426 106, 106, 106, 106, 106, 106, 106, 106, 56, 106,
427 106, 62, 60, 61, 56, 58, 62, 50, 58, 55,
429 0, 0, 50, 0, 0, 0, 0, 0, 0, 0,
430 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
431 0, 49, 64, 45, 50, 41, 0, 63, 63, 63,
432 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
433 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
434 63, 63, 63, 63, 63, 63, 63, 0, 0, 0,
435 44, 65, 47, 64, 0, 0, 0, 0, 89, 89,
436 86, 89, 89, 89, 89, 89, 89, 89, 89, 89,
437 89, 86, 88, 87, 87, 87, 87, 87, 87, 87,
438 87, 87, 87, 87, 87, 87, 87, 0, 0, 0,
440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
443 0, 0, 104, 0, 0, 60, 60, 58, 0, 58,
444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
445 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
446 0, 0, 0, 0, 45, 0, 63, 63, 63, 63,
447 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
448 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
449 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
451 63, 52, 53, 51, 44, 42, 0, 89, 89, 89,
452 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
453 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
454 87, 87, 87, 87, 87, 91, 0, 0, 0, 0,
455 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
457 0, 0, 0, 105, 59, 0, 0, 0, 0, 0,
458 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
460 0, 0, 0, 0, 0, 63, 63, 63, 63, 63,
462 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
463 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
464 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
465 43, 89, 89, 89, 89, 89, 89, 89, 89, 89,
466 89, 89, 89, 89, 89, 89, 87, 87, 87, 87,
467 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
468 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
470 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
471 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
473 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
474 0, 0, 0, 0, 0, 0, 0, 57, 63, 63,
475 63, 63, 0, 63, 63, 63, 63, 63, 63, 63,
476 63, 63, 63, 0, 0, 0, 63, 0, 63, 63,
477 63, 63, 63, 63, 0, 63, 63, 63, 63, 63,
478 63, 0, 63, 89, 89, 89, 89, 89, 89, 89,
479 89, 89, 89, 89, 89, 89, 89, 89, 87, 87,
480 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
481 87, 87, 87, 0, 0, 0, 0, 0, 0, 0,
482 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
484 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
486 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
487 0, 0, 0, 0, 0, 0, 0, 0, 0, 63,
488 63, 63, 0, 63, 63, 35, 63, 63, 63, 63,
489 63, 63, 63, 0, 63, 63, 29, 21, 37, 63,
490 28, 63, 63, 63, 63, 63, 63, 32, 63, 63,
491 63, 0, 63, 0, 22, 63, 89, 89, 89, 89,
492 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
493 89, 87, 0, 87, 87, 87, 87, 87, 87, 87,
495 87, 87, 87, 87, 87, 87, 87, 0, 0, 0,
496 0, 0, 0, 0, 0, 98, 0, 0, 0, 0,
497 0, 0, 0, 92, 100, 0, 0, 0, 0, 0,
498 95, 0, 0, 0, 0, 0, 0, 0, 0, 0,
499 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
500 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
501 0, 0, 0, 0, 63, 63, 1, 63, 63, 35,
502 38, 63, 63, 63, 63, 63, 63, 63, 31, 63,
503 63, 29, 21, 37, 40, 0, 28, 63, 63, 63,
504 63, 63, 63, 32, 0, 63, 63, 25, 63, 2,
506 22, 63, 89, 89, 89, 89, 89, 89, 89, 89,
507 89, 89, 89, 89, 89, 89, 89, 87, 68, 87,
508 87, 87, 87, 87, 87, 87, 0, 87, 87, 87,
509 87, 87, 87, 69, 0, 0, 0, 0, 0, 0,
510 0, 98, 101, 0, 0, 0, 0, 94, 0, 0,
511 92, 100, 103, 0, 0, 0, 0, 95, 0, 0,
512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
514 0, 0, 0, 0, 0, 0, 0, 30, 63, 63,
515 1, 63, 63, 63, 63, 63, 63, 63, 63, 63,
517 31, 63, 0, 13, 63, 0, 63, 0, 0, 0,
518 33, 63, 0, 25, 63, 2, 0, 89, 89, 89,
519 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
520 89, 87, 68, 87, 87, 87, 87, 87, 87, 0,
521 80, 0, 87, 0, 0, 87, 0, 69, 0, 0,
522 0, 93, 0, 0, 0, 0, 0, 0, 0, 94,
523 0, 0, 96, 0, 0, 0, 0, 0, 0, 0,
524 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
525 0, 0, 0, 0, 0, 0, 0, 30, 0, 63,
526 63, 63, 63, 63, 63, 63, 0, 0, 0, 63,
528 8, 13, 63, 9, 0, 4, 19, 10, 33, 63,
529 3, 0, 27, 89, 89, 89, 89, 89, 89, 89,
530 89, 89, 87, 87, 87, 87, 87, 0, 87, 75,
531 80, 76, 0, 71, 77, 87, 70, 0, 93, 0,
532 0, 0, 0, 0, 0, 0, 96, 0, 0, 0,
533 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
534 0, 0, 0, 0, 14, 63, 63, 0, 63, 63,
535 63, 63, 34, 18, 26, 63, 8, 63, 9, 6,
536 4, 19, 10, 63, 3, 36, 27, 89, 89, 89,
537 89, 89, 89, 89, 87, 87, 0, 87, 87, 84,
539 87, 75, 76, 73, 71, 77, 87, 70, 0, 0,
540 0, 0, 0, 97, 0, 0, 99, 0, 0, 0,
541 0, 0, 0, 0, 0, 0, 0, 0, 14, 0,
542 63, 7, 0, 63, 63, 0, 34, 18, 26, 63,
543 63, 6, 0, 36, 39, 89, 89, 89, 89, 89,
544 89, 0, 87, 74, 0, 87, 84, 87, 73, 0,
545 0, 0, 0, 97, 0, 99, 102, 0, 0, 0,
546 0, 0, 0, 0, 0, 0, 0, 5, 63, 7,
547 12, 63, 0, 20, 63, 63, 11, 89, 89, 89,
548 72, 87, 74, 79, 0, 87, 78, 0, 0, 0,
550 0, 0, 0, 0, 0, 5, 0, 12, 63, 15,
551 20, 63, 0, 11, 89, 89, 72, 0, 79, 81,
552 87, 78, 0, 0, 0, 0, 0, 16, 63, 15,
553 63, 23, 89, 82, 81, 87, 0, 0, 0, 16,
554 0, 63, 23, 89, 82, 87, 0, 0, 0, 24,
555 0, 89, 0, 0, 24, 17, 83, 17, 83, 0
558 static yyconst flex_int32_t yy_ec[256] =
559 { 0,
560 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
561 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
562 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
563 1, 5, 6, 7, 8, 1, 9, 9, 7, 10,
564 11, 9, 9, 12, 9, 7, 13, 14, 14, 14,
565 14, 14, 14, 14, 14, 14, 14, 15, 1, 9,
566 9, 9, 6, 9, 16, 17, 18, 19, 20, 21,
567 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
568 25, 32, 33, 34, 35, 36, 37, 38, 39, 25,
569 7, 40, 7, 1, 41, 1, 42, 43, 44, 45,
571 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
572 56, 57, 51, 58, 59, 60, 61, 62, 63, 64,
573 65, 51, 7, 66, 7, 1, 1, 1, 1, 1,
574 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
575 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
576 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
577 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
578 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
579 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
580 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
582 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
583 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
584 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
585 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
586 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
587 1, 1, 1, 1, 1
590 static yyconst flex_int32_t yy_meta[67] =
591 { 0,
592 1, 2, 3, 3, 2, 1, 1, 1, 1, 4,
593 4, 5, 1, 6, 7, 8, 8, 8, 8, 8,
594 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
595 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
596 6, 8, 8, 8, 8, 8, 8, 8, 8, 8,
597 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
598 8, 8, 8, 8, 8, 1
601 static yyconst flex_int16_t yy_base[1269] =
602 { 0,
603 0, 0, 65, 104, 143, 182, 222, 0, 288, 0,
604 353, 0, 79, 83, 413, 0, 3961, 3962, 478, 87,
605 118, 89, 3952, 72, 3944, 97, 3943, 109, 117, 102,
606 86, 144, 58, 119, 159, 146, 145, 175, 519, 346,
607 348, 476, 3891, 0, 514, 543, 557, 202, 3941, 3962,
608 566, 3962, 3962, 0, 605, 3962, 3962, 126, 3941, 3962,
609 665, 731, 536, 558, 605, 574, 661, 666, 667, 782,
610 727, 3939, 3962, 842, 3962, 109, 164, 158, 337, 354,
611 347, 350, 557, 344, 467, 665, 563, 638, 760, 3938,
612 786, 3962, 593, 3962, 166, 639, 0, 209, 0, 0,
614 790, 3944, 213, 3936, 456, 674, 728, 457, 470, 472,
615 530, 543, 739, 654, 554, 582, 776, 783, 602, 3884,
616 816, 848, 871, 852, 487, 3962, 3936, 3933, 735, 734,
617 789, 798, 827, 850, 653, 703, 864, 874, 875, 878,
618 761, 883, 880, 888, 890, 892, 895, 917, 903, 908,
619 911, 924, 791, 900, 920, 913, 934, 3939, 3931, 3879,
620 969, 0, 979, 950, 983, 997, 3929, 3928, 0, 0,
621 538, 963, 634, 664, 781, 888, 943, 933, 975, 976,
622 979, 765, 3928, 988, 990, 998, 1018, 1026, 1031, 1036,
623 1061, 1056, 1077, 1078, 1095, 1136, 1094, 3926, 0, 1102,
625 987, 971, 981, 993, 1060, 999, 1018, 1035, 1121, 1117,
626 1108, 1127, 1141, 1116, 1125, 1141, 1143, 1129, 1126, 1141,
627 1139, 1140, 1152, 1168, 1159, 1159, 1149, 1176, 1157, 1160,
628 1212, 3925, 3962, 1220, 3922, 1224, 1207, 1225, 3924, 0,
629 1196, 1198, 1217, 1218, 1218, 1207, 1225, 1212, 1210, 1206,
630 1213, 1213, 1214, 1216, 1224, 1229, 1261, 1237, 1265, 1240,
631 1233, 1227, 1244, 1238, 1295, 3920, 1269, 1270, 1274, 1289,
632 1287, 1286, 1288, 1295, 1308, 1294, 1296, 1300, 1313, 1312,
633 1317, 1314, 1315, 1321, 1322, 1327, 1338, 1326, 1341, 1342,
634 1344, 1348, 1349, 1359, 1352, 1362, 1371, 1372, 1379, 1380,
636 1378, 3962, 3962, 3962, 1399, 3962, 3917, 1362, 1381, 1368,
637 1377, 1396, 1380, 1375, 1383, 1395, 1401, 1403, 1413, 1393,
638 1428, 1433, 1434, 1441, 1475, 1466, 1479, 1488, 1497, 1522,
639 1518, 1524, 1540, 1560, 1565, 3962, 1560, 1417, 1425, 1439,
640 1452, 1477, 1523, 1518, 1545, 1545, 1557, 1564, 1563, 1561,
641 1574, 1578, 1580, 1568, 1582, 1592, 1575, 1576, 1585, 1586,
642 1592, 1602, 1598, 3962, 3962, 1593, 1611, 1600, 1617, 1599,
643 1615, 1622, 1624, 1615, 1610, 1613, 1612, 1616, 1629, 1630,
644 1635, 1639, 1622, 1636, 1645, 1627, 1633, 1638, 1644, 1647,
645 1657, 1653, 1663, 1656, 0, 1674, 1677, 1679, 1675, 3914,
647 1684, 1681, 1687, 1680, 1698, 1676, 1703, 1701, 1707, 1705,
648 3907, 3902, 3900, 1709, 3898, 1722, 1710, 1714, 1728, 1735,
649 1729, 3894, 1740, 1736, 1744, 1751, 1739, 1755, 3892, 1733,
650 3962, 1743, 1731, 1735, 1758, 1749, 1744, 1743, 1758, 1748,
651 1761, 1771, 1757, 1759, 1766, 1769, 1799, 1798, 1807, 1800,
652 1843, 1848, 1849, 1850, 1856, 1881, 1891, 1900, 1899, 1901,
653 1942, 1778, 1789, 1799, 1806, 1821, 1834, 3890, 1840, 1852,
654 1872, 1889, 1902, 1919, 1908, 3886, 3882, 1910, 1933, 1927,
655 1926, 1939, 3881, 1936, 1947, 1952, 1936, 1951, 1945, 1952,
656 1943, 3855, 1949, 1949, 1947, 1945, 1950, 1953, 1967, 1957,
658 3854, 3852, 1960, 3851, 1972, 1985, 1978, 1977, 1980, 1990,
659 1995, 2001, 1999, 1986, 2001, 3840, 1998, 0, 2010, 2008,
660 2009, 2016, 542, 2014, 2011, 2034, 2018, 2038, 2037, 2042,
661 3833, 2040, 2041, 753, 817, 854, 2044, 1052, 2047, 2051,
662 2060, 2063, 2052, 2071, 1125, 2072, 2073, 2078, 3832, 2077,
663 3829, 1241, 2067, 2052, 2069, 2075, 2072, 2077, 2096, 2083,
664 2084, 2099, 2086, 2085, 2097, 2103, 2108, 2105, 2116, 2158,
665 2137, 2154, 2138, 2179, 2171, 2201, 2203, 2220, 2222, 2228,
666 2253, 2258, 2271, 3826, 3807, 2092, 2101, 2105, 2274, 3804,
667 2117, 2132, 2138, 2149, 3801, 2160, 2167, 3779, 3776, 2203,
669 2205, 2221, 2231, 2223, 3769, 2269, 2274, 2261, 2255, 3701,
670 2276, 2269, 2295, 3700, 2284, 2281, 2283, 2279, 2288, 2291,
671 2297, 2300, 3654, 3622, 2316, 3606, 2304, 2303, 2319, 2320,
672 2313, 2313, 2326, 2313, 3601, 2307, 3554, 3486, 2319, 3485,
673 2335, 2341, 1363, 2339, 2345, 1432, 2342, 2352, 2360, 2363,
674 2364, 2367, 2366, 1416, 2365, 2374, 843, 2402, 2392, 3470,
675 2425, 2395, 2396, 2403, 2405, 2410, 2408, 2429, 3464, 2420,
676 2421, 1499, 2424, 1510, 2454, 2423, 2410, 2433, 2424, 2422,
677 2422, 2422, 2420, 2434, 2428, 2444, 2445, 2438, 2455, 2442,
678 3405, 2476, 3359, 2482, 2489, 2480, 2521, 2523, 2528, 2541,
680 2572, 2573, 2574, 2579, 2604, 2620, 2622, 3322, 3315, 3306,
681 2446, 3295, 2457, 2477, 2469, 2559, 2470, 2510, 2525, 2534,
682 3290, 2538, 2540, 1203, 2605, 3251, 2571, 2578, 2592, 2584,
683 2638, 3241, 2610, 2606, 2617, 2622, 2621, 3211, 2635, 2624,
684 2663, 2624, 2629, 2636, 2636, 2652, 2649, 2667, 2667, 2689,
685 3168, 2668, 2670, 2678, 2678, 2666, 2671, 2667, 2663, 3133,
686 2672, 3129, 2682, 1831, 2690, 2691, 1560, 2698, 2716, 2705,
687 3110, 2719, 2720, 2703, 2723, 2706, 2718, 2725, 1803, 2728,
688 3080, 2221, 2750, 2754, 3091, 1835, 2776, 2745, 3067, 2751,
689 3046, 3028, 3024, 2784, 1874, 2752, 2948, 2789, 2780, 2396,
691 2794, 2932, 2688, 2729, 2750, 2749, 2753, 2781, 2785, 2785,
692 2927, 2785, 2788, 2788, 2783, 2779, 2775, 2818, 2515, 2819,
693 2827, 2828, 2860, 2862, 2866, 2884, 2902, 2908, 2909, 2914,
694 2918, 2952, 2957, 2767, 2813, 2817, 2793, 2895, 2812, 2803,
695 2821, 2904, 2900, 2836, 2831, 2868, 2872, 2823, 2908, 2883,
696 2944, 2950, 2894, 2873, 2898, 2841, 2837, 2986, 2802, 2933,
697 2746, 2939, 2932, 2951, 2943, 2958, 2993, 2957, 2957, 2952,
698 2969, 2964, 2980, 2989, 2608, 3012, 2597, 2992, 2590, 2982,
699 2558, 2551, 2511, 2994, 2510, 3000, 2498, 3019, 2480, 3007,
700 3023, 3015, 3014, 3017, 3018, 3016, 3021, 2468, 2461, 2393,
702 3047, 3026, 2017, 3053, 3030, 2147, 2377, 2162, 2338, 2469,
703 3065, 3035, 2704, 3082, 2369, 3054, 2808, 3038, 3029, 3051,
704 3049, 3041, 3043, 3058, 2288, 2267, 3045, 2257, 2246, 3057,
705 2245, 3076, 3088, 3093, 3094, 3101, 3103, 3136, 3142, 2201,
706 3106, 2190, 3146, 2151, 2140, 3144, 2133, 3110, 3136, 3162,
707 3079, 3132, 3080, 3132, 3148, 3145, 3153, 2116, 1921, 3177,
708 3152, 1917, 3205, 3155, 1880, 1867, 3167, 3167, 3171, 3163,
709 3174, 3181, 3182, 1866, 1856, 3186, 1824, 3188, 1818, 1794,
710 1713, 1702, 1546, 3188, 1540, 1532, 1505, 3218, 2851, 3206,
711 3207, 1492, 3209, 3214, 3212, 3217, 3220, 3221, 3232, 3233,
713 3247, 3253, 3235, 3255, 3249, 3265, 3271, 3275, 3279, 3263,
714 3284, 3275, 3291, 3205, 3238, 3251, 3261, 3274, 1486, 3271,
715 1465, 3270, 3286, 3285, 3293, 3313, 3306, 1464, 3334, 3301,
716 3302, 3309, 1454, 3329, 3342, 3341, 3351, 1450, 3358, 3318,
717 3322, 1427, 3346, 3337, 1354, 3352, 3397, 3350, 1353, 1301,
718 3348, 3352, 1247, 3365, 3356, 3356, 3359, 1186, 1182, 3369,
719 3368, 1131, 3366, 1100, 3401, 1084, 3394, 3360, 1047, 3389,
720 3402, 1012, 3420, 3424, 3430, 3404, 3435, 3415, 3439, 3441,
721 3445, 3449, 3453, 1011, 3454, 3458, 3463, 3403, 3415, 993,
722 3430, 3439, 3450, 3443, 3461, 3462, 982, 3467, 3457, 3522,
724 3503, 3488, 3500, 3506, 3526, 3527, 3519, 3534, 961, 960,
725 3461, 953, 3487, 3548, 3487, 943, 3538, 916, 3503, 910,
726 898, 3511, 3515, 849, 3520, 3522, 844, 3555, 3560, 3553,
727 3552, 3569, 3563, 3558, 824, 3564, 3584, 3588, 3592, 3583,
728 3568, 3598, 3586, 3602, 824, 801, 3565, 771, 3580, 3578,
729 756, 731, 3597, 3612, 720, 3604, 3638, 3606, 3613, 714,
730 3642, 3590, 677, 3661, 3602, 3665, 666, 641, 3593, 631,
731 3630, 611, 604, 3635, 3627, 600, 3669, 3671, 593, 3673,
732 3677, 3662, 3668, 3686, 3670, 576, 3691, 3653, 569, 3669,
733 3692, 3683, 3699, 3700, 549, 3687, 3704, 3717, 536, 3677,
735 493, 3675, 488, 3681, 470, 3722, 3715, 3730, 3708, 3742,
736 3746, 3737, 3740, 3736, 379, 3701, 3756, 374, 3757, 3761,
737 3751, 3767, 3735, 345, 3726, 3752, 344, 3771, 204, 3785,
738 3762, 3796, 3760, 3806, 3810, 3790, 3759, 195, 3769, 3822,
739 3770, 185, 3831, 3770, 3835, 3815, 167, 120, 112, 3848,
740 3841, 98, 82, 78, 3856, 3860, 3870, 3874, 3878, 3962,
741 3883, 3886, 3894, 3902, 3910, 3918, 3922, 3930
744 static yyconst flex_int16_t yy_def[1269] =
745 { 0,
746 1260, 1, 1261, 1261, 1261, 1261, 1260, 7, 1260, 9,
747 9, 11, 11, 11, 1260, 15, 1260, 1260, 1260, 1260,
748 1260, 1260, 1260, 1260, 1260, 1262, 1262, 1262, 1262, 1262,
749 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
750 1262, 1260, 1260, 1263, 1260, 1260, 1260, 1263, 1260, 1260,
751 1260, 1260, 1260, 1264, 1264, 1260, 1260, 1260, 1264, 1260,
752 1265, 1265, 62, 62, 62, 62, 62, 62, 62, 62,
753 62, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
754 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
755 1260, 1260, 1260, 1260, 1260, 1260, 1266, 1260, 1267, 19,
757 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
758 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
759 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1262, 1262,
760 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
761 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
762 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1260, 1260, 1260,
763 1260, 1263, 1260, 1263, 1260, 1260, 1260, 1260, 1264, 55,
764 1260, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
765 1264, 1260, 1264, 62, 62, 62, 62, 62, 62, 62,
766 62, 62, 62, 62, 62, 62, 62, 1260, 74, 1260,
768 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
769 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
770 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
771 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1266, 1267,
772 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
773 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
774 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1262, 1262, 1262,
775 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
776 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
777 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
779 1262, 1260, 1260, 1260, 1260, 1260, 1260, 1264, 1264, 1264,
780 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
781 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
782 62, 62, 62, 62, 62, 1260, 1260, 1260, 1260, 1260,
783 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
784 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
785 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
786 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
787 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
788 1260, 1260, 1260, 1260, 1268, 1262, 1262, 1262, 1262, 1262,
790 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
791 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
792 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
793 1260, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
794 1264, 1264, 1264, 1264, 1264, 1264, 62, 62, 62, 62,
795 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
796 62, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
797 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
798 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
799 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
801 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
802 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1268, 1262, 1262,
803 1262, 1262, 1260, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
804 1262, 1262, 1262, 1260, 1260, 1260, 1262, 1260, 1262, 1262,
805 1262, 1262, 1262, 1262, 1260, 1262, 1262, 1262, 1262, 1262,
806 1262, 1260, 1262, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
807 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 62, 62,
808 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
809 62, 62, 62, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
810 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
812 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
813 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
814 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
815 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262,
816 1262, 1262, 1260, 1262, 1262, 1260, 1262, 1262, 1262, 1262,
817 1262, 1262, 1262, 1260, 1262, 1262, 1260, 1260, 1260, 1262,
818 1260, 1262, 1262, 1262, 1262, 1262, 1262, 1260, 1262, 1262,
819 1262, 1260, 1262, 1260, 1260, 1262, 1264, 1264, 1264, 1264,
820 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
821 1264, 62, 1260, 62, 62, 62, 62, 62, 62, 62,
823 62, 62, 62, 62, 62, 62, 62, 1260, 1260, 1260,
824 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
825 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
826 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
827 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
828 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
829 1260, 1260, 1260, 1260, 1262, 1262, 1260, 1262, 1262, 1260,
830 1260, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1260, 1262,
831 1262, 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1262, 1262,
832 1262, 1262, 1262, 1260, 1260, 1262, 1262, 1260, 1262, 1260,
834 1260, 1262, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
835 1264, 1264, 1264, 1264, 1264, 1264, 1264, 62, 1260, 62,
836 62, 62, 62, 62, 62, 62, 1260, 62, 62, 62,
837 62, 62, 62, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
838 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
839 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
840 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
841 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
842 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1262,
843 1260, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262,
845 1260, 1262, 1260, 1260, 1262, 1260, 1262, 1260, 1260, 1260,
846 1260, 1262, 1260, 1260, 1262, 1260, 1260, 1264, 1264, 1264,
847 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
848 1264, 62, 1260, 62, 62, 62, 62, 62, 62, 1260,
849 1260, 1260, 62, 1260, 1260, 62, 1260, 1260, 1260, 1260,
850 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
851 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
852 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
853 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262,
854 1262, 1262, 1262, 1262, 1262, 1262, 1260, 1260, 1260, 1262,
856 1260, 1260, 1262, 1260, 1260, 1260, 1260, 1260, 1260, 1262,
857 1260, 1260, 1260, 1264, 1264, 1264, 1264, 1264, 1264, 1264,
858 1264, 1264, 62, 62, 62, 62, 62, 1260, 62, 1260,
859 1260, 1260, 1260, 1260, 1260, 62, 1260, 1260, 1260, 1260,
860 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
861 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
862 1260, 1260, 1260, 1260, 1260, 1262, 1262, 1260, 1262, 1262,
863 1262, 1262, 1260, 1260, 1260, 1262, 1260, 1262, 1260, 1260,
864 1260, 1260, 1260, 1262, 1260, 1260, 1260, 1264, 1264, 1264,
865 1264, 1264, 1264, 1264, 62, 62, 1260, 62, 62, 1260,
867 62, 1260, 1260, 1260, 1260, 1260, 62, 1260, 1260, 1260,
868 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
869 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
870 1262, 1260, 1260, 1262, 1262, 1260, 1260, 1260, 1260, 1262,
871 1262, 1260, 1260, 1260, 1260, 1264, 1264, 1264, 1264, 1264,
872 1264, 1260, 62, 1260, 1260, 62, 1260, 62, 1260, 1260,
873 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
874 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1260,
875 1260, 1262, 1260, 1260, 1262, 1262, 1260, 1264, 1264, 1264,
876 1260, 62, 1260, 1260, 1260, 62, 1260, 1260, 1260, 1260,
878 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1260,
879 1260, 1262, 1260, 1260, 1264, 1264, 1260, 1260, 1260, 1260,
880 62, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1262, 1260,
881 1262, 1260, 1264, 1260, 1260, 62, 1260, 1260, 1260, 1260,
882 1260, 1262, 1260, 1264, 1260, 62, 1260, 1260, 1260, 1260,
883 1260, 1264, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 0,
884 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260
887 static yyconst flex_int16_t yy_nxt[4029] =
888 { 0,
889 18, 19, 20, 21, 19, 22, 22, 23, 18, 22,
890 22, 24, 18, 22, 25, 26, 27, 28, 29, 30,
891 31, 27, 27, 32, 27, 33, 34, 35, 36, 27,
892 37, 38, 39, 40, 27, 27, 41, 27, 27, 42,
893 18, 26, 27, 28, 29, 30, 31, 27, 27, 32,
894 27, 33, 34, 35, 36, 27, 37, 38, 39, 40,
895 27, 27, 41, 27, 27, 43, 45, 46, 21, 47,
896 48, 48, 127, 125, 48, 48, 125, 141, 48, 25,
897 73, 91, 75, 73, 73, 91, 75, 73, 121, 122,
898 121, 121, 1256, 73, 123, 123, 1257, 73, 123, 123,
900 127, 104, 123, 141, 49, 45, 46, 21, 47, 48,
901 48, 127, 1253, 48, 48, 138, 127, 48, 25, 101,
902 101, 101, 101, 127, 131, 129, 1254, 182, 130, 136,
903 182, 127, 104, 127, 1250, 132, 134, 210, 133, 137,
904 135, 138, 142, 49, 50, 51, 52, 53, 48, 48,
905 131, 129, 48, 48, 130, 136, 48, 53, 127, 127,
906 127, 132, 134, 210, 133, 137, 135, 237, 142, 237,
907 237, 139, 140, 127, 143, 145, 147, 214, 144, 211,
908 146, 1253, 53, 50, 51, 52, 53, 48, 48, 127,
909 212, 48, 48, 213, 148, 48, 53, 139, 140, 1251,
911 143, 145, 147, 214, 144, 211, 146, 164, 164, 1248,
912 125, 164, 164, 125, 125, 164, 212, 125, 1241, 213,
913 148, 53, 54, 55, 56, 57, 55, 54, 54, 54,
914 54, 54, 54, 58, 54, 59, 60, 61, 61, 62,
915 63, 64, 61, 61, 61, 65, 61, 66, 61, 67,
916 61, 61, 68, 69, 70, 71, 61, 61, 61, 61,
917 61, 72, 54, 61, 61, 62, 63, 64, 61, 61,
918 61, 65, 61, 66, 61, 67, 61, 61, 68, 69,
919 70, 71, 61, 61, 61, 61, 61, 54, 73, 74,
920 73, 75, 74, 73, 73, 73, 73, 73, 73, 73,
922 73, 73, 73, 76, 73, 77, 78, 79, 73, 73,
923 73, 80, 73, 81, 82, 83, 73, 73, 84, 85,
924 86, 87, 73, 73, 73, 73, 73, 73, 73, 76,
925 73, 77, 78, 79, 73, 73, 73, 80, 73, 81,
926 82, 83, 73, 73, 84, 85, 86, 87, 73, 73,
927 73, 73, 73, 73, 88, 88, 89, 88, 1232, 1228,
928 127, 153, 127, 157, 215, 154, 219, 90, 73, 155,
929 73, 73, 73, 220, 216, 223, 73, 156, 73, 73,
930 73, 217, 218, 73, 73, 73, 73, 153, 1234, 157,
931 215, 154, 219, 1218, 73, 155, 73, 73, 73, 220,
933 216, 223, 73, 156, 73, 73, 73, 217, 218, 73,
934 73, 73, 73, 92, 93, 94, 95, 93, 96, 92,
935 92, 96, 97, 92, 98, 96, 92, 92, 92, 92,
936 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
937 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
938 92, 92, 92, 92, 99, 99, 99, 99, 99, 99,
939 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
940 99, 99, 99, 99, 99, 99, 99, 99, 96, 100,
941 101, 101, 100, 158, 1227, 102, 224, 241, 125, 103,
942 159, 125, 104, 105, 247, 106, 107, 108, 109, 248,
944 249, 110, 1210, 111, 112, 113, 114, 1224, 115, 116,
945 117, 118, 224, 241, 119, 101, 101, 101, 101, 105,
946 247, 106, 107, 108, 109, 248, 249, 110, 104, 111,
947 112, 113, 114, 127, 115, 116, 117, 118, 149, 182,
948 119, 160, 182, 120, 101, 163, 101, 101, 150, 250,
949 1218, 184, 151, 152, 266, 188, 646, 104, 101, 101,
950 101, 101, 184, 1220, 149, 184, 251, 165, 166, 166,
951 165, 104, 221, 184, 150, 250, 222, 184, 151, 152,
952 167, 188, 229, 1195, 184, 256, 230, 184, 184, 184,
953 1213, 184, 251, 191, 236, 189, 237, 236, 221, 184,
955 184, 257, 222, 184, 103, 168, 170, 1207, 229, 170,
956 184, 256, 230, 184, 1187, 184, 171, 264, 1184, 191,
957 184, 189, 172, 173, 174, 1203, 184, 257, 175, 184,
958 176, 184, 177, 190, 184, 178, 179, 180, 181, 231,
959 231, 231, 231, 264, 238, 1181, 184, 238, 172, 173,
960 174, 238, 232, 311, 175, 1178, 176, 184, 177, 190,
961 184, 178, 179, 180, 181, 169, 169, 127, 1167, 169,
962 169, 169, 169, 169, 169, 169, 184, 169, 169, 311,
963 192, 184, 184, 254, 225, 275, 194, 184, 255, 242,
964 184, 1195, 184, 184, 226, 184, 184, 193, 227, 228,
966 243, 312, 184, 244, 238, 169, 192, 184, 184, 254,
967 225, 275, 194, 184, 255, 242, 184, 127, 184, 184,
968 226, 184, 184, 193, 227, 228, 243, 312, 1197, 244,
969 169, 169, 169, 276, 1194, 169, 169, 169, 169, 169,
970 169, 169, 184, 169, 169, 1191, 185, 245, 127, 127,
971 197, 246, 267, 184, 252, 268, 184, 186, 253, 276,
972 187, 231, 231, 231, 231, 266, 182, 657, 184, 182,
973 1160, 169, 185, 245, 232, 127, 197, 246, 267, 184,
974 252, 268, 184, 186, 253, 1155, 187, 234, 234, 234,
975 234, 101, 101, 101, 101, 258, 169, 184, 260, 281,
977 235, 195, 261, 127, 104, 127, 262, 297, 184, 313,
978 259, 184, 127, 270, 263, 1152, 196, 121, 122, 121,
979 121, 258, 269, 184, 260, 281, 1145, 195, 261, 266,
980 104, 658, 262, 297, 184, 313, 259, 184, 1183, 270,
981 263, 127, 196, 199, 782, 271, 199, 782, 269, 121,
982 122, 121, 121, 265, 265, 265, 265, 272, 1176, 200,
983 201, 202, 104, 1173, 127, 203, 266, 204, 659, 205,
984 273, 271, 206, 207, 208, 209, 123, 123, 127, 277,
985 123, 123, 274, 272, 123, 200, 201, 202, 127, 127,
986 279, 203, 127, 204, 127, 205, 273, 127, 206, 207,
988 208, 209, 127, 278, 127, 277, 127, 314, 274, 127,
989 280, 282, 1170, 284, 127, 283, 279, 127, 288, 287,
990 292, 285, 127, 286, 1132, 127, 298, 127, 293, 278,
991 1168, 127, 300, 314, 127, 289, 280, 282, 127, 284,
992 295, 283, 294, 290, 288, 287, 292, 285, 127, 286,
993 291, 296, 298, 299, 293, 164, 164, 1160, 300, 164,
994 164, 289, 315, 164, 316, 301, 295, 1155, 294, 290,
995 305, 305, 305, 305, 1152, 1161, 291, 296, 308, 299,
996 101, 163, 101, 101, 165, 166, 166, 165, 315, 309,
997 316, 301, 310, 104, 317, 318, 1154, 167, 166, 166,
999 166, 166, 320, 184, 308, 184, 214, 1097, 216, 218,
1000 319, 167, 219, 322, 184, 309, 184, 184, 310, 184,
1001 317, 318, 168, 321, 184, 1143, 1136, 184, 320, 184,
1002 223, 184, 214, 184, 216, 218, 319, 224, 219, 322,
1003 184, 184, 184, 184, 184, 184, 325, 184, 323, 321,
1004 184, 184, 184, 184, 225, 184, 223, 184, 324, 184,
1005 184, 1133, 184, 224, 266, 184, 661, 184, 326, 228,
1006 184, 184, 325, 184, 323, 338, 184, 184, 184, 222,
1007 225, 184, 184, 184, 324, 184, 184, 184, 184, 328,
1008 184, 184, 184, 184, 326, 228, 330, 184, 1130, 327,
1010 329, 338, 184, 184, 331, 222, 184, 184, 184, 184,
1011 184, 184, 332, 184, 1128, 328, 184, 211, 184, 184,
1012 184, 184, 330, 184, 184, 327, 329, 335, 212, 184,
1013 331, 337, 184, 184, 340, 184, 184, 266, 332, 668,
1014 339, 341, 342, 211, 230, 1080, 184, 184, 345, 184,
1015 184, 184, 333, 335, 212, 346, 347, 337, 348, 343,
1016 340, 349, 184, 334, 350, 184, 339, 341, 342, 351,
1017 230, 344, 352, 353, 345, 354, 357, 184, 333, 358,
1018 359, 346, 347, 362, 348, 343, 355, 349, 184, 334,
1019 350, 184, 360, 363, 356, 351, 1075, 344, 352, 353,
1021 1074, 354, 357, 361, 851, 358, 359, 851, 237, 362,
1022 237, 237, 355, 231, 231, 231, 231, 366, 360, 363,
1023 356, 234, 234, 234, 234, 236, 232, 237, 236, 361,
1024 238, 367, 368, 238, 235, 103, 369, 238, 371, 373,
1025 374, 375, 376, 366, 377, 378, 379, 380, 370, 381,
1026 372, 382, 383, 266, 387, 675, 390, 367, 368, 391,
1027 392, 1120, 369, 393, 371, 373, 374, 375, 376, 394,
1028 377, 378, 379, 380, 370, 381, 372, 382, 383, 384,
1029 387, 388, 390, 127, 127, 391, 392, 385, 127, 393,
1030 238, 396, 389, 398, 386, 394, 265, 265, 265, 265,
1032 127, 127, 127, 127, 397, 384, 400, 388, 127, 127,
1033 127, 402, 403, 385, 127, 1065, 405, 396, 389, 398,
1034 386, 399, 127, 406, 401, 404, 127, 127, 127, 127,
1035 397, 127, 400, 407, 408, 127, 127, 402, 403, 411,
1036 127, 127, 405, 413, 414, 409, 415, 399, 412, 406,
1037 401, 404, 127, 410, 416, 127, 127, 419, 127, 407,
1038 408, 417, 127, 127, 418, 411, 127, 1117, 1114, 413,
1039 414, 409, 415, 127, 412, 266, 127, 767, 420, 410,
1040 416, 421, 422, 419, 424, 127, 127, 417, 423, 425,
1041 418, 427, 127, 127, 127, 432, 433, 426, 434, 429,
1043 305, 305, 305, 305, 420, 428, 430, 421, 422, 435,
1044 424, 436, 437, 438, 423, 425, 439, 427, 440, 441,
1045 443, 432, 433, 426, 434, 429, 446, 442, 266, 444,
1046 779, 428, 430, 770, 771, 435, 770, 436, 437, 438,
1047 445, 1097, 439, 184, 440, 441, 443, 447, 184, 184,
1048 463, 464, 446, 442, 184, 444, 184, 184, 450, 184,
1049 184, 465, 184, 184, 1109, 448, 445, 184, 1104, 184,
1050 184, 466, 449, 447, 184, 184, 463, 464, 1100, 1033,
1051 184, 184, 184, 184, 450, 184, 184, 465, 184, 184,
1052 184, 448, 184, 184, 184, 184, 184, 466, 449, 452,
1054 1028, 184, 451, 184, 184, 184, 1068, 184, 184, 467,
1055 454, 266, 184, 798, 184, 453, 184, 184, 184, 1013,
1056 184, 184, 266, 184, 800, 452, 184, 184, 451, 184,
1057 184, 184, 455, 457, 184, 467, 454, 184, 184, 184,
1058 184, 453, 468, 184, 184, 456, 1064, 184, 184, 184,
1059 184, 184, 184, 184, 1011, 184, 469, 458, 455, 457,
1060 1008, 891, 470, 184, 891, 184, 184, 471, 468, 184,
1061 184, 456, 459, 184, 184, 184, 184, 184, 462, 184,
1062 184, 184, 469, 458, 472, 473, 184, 460, 470, 184,
1063 344, 461, 184, 471, 184, 184, 474, 475, 459, 476,
1065 477, 184, 478, 479, 462, 480, 184, 481, 482, 483,
1066 472, 473, 184, 460, 484, 184, 344, 461, 485, 486,
1067 184, 487, 474, 475, 488, 476, 477, 489, 478, 479,
1068 490, 480, 491, 481, 482, 483, 492, 493, 494, 495,
1069 484, 496, 497, 498, 485, 486, 499, 487, 500, 501,
1070 488, 502, 503, 489, 504, 505, 490, 506, 491, 507,
1071 508, 509, 492, 493, 494, 495, 510, 496, 497, 498,
1072 511, 512, 499, 513, 500, 501, 514, 502, 503, 515,
1073 504, 505, 516, 506, 517, 507, 508, 509, 127, 127,
1074 127, 127, 510, 127, 127, 127, 511, 512, 127, 513,
1076 521, 127, 514, 519, 520, 515, 529, 522, 516, 525,
1077 517, 524, 127, 528, 527, 127, 1007, 127, 526, 127,
1078 531, 127, 532, 127, 127, 540, 521, 1006, 127, 519,
1079 520, 530, 529, 522, 533, 525, 127, 524, 537, 528,
1080 527, 539, 127, 127, 526, 541, 531, 127, 532, 127,
1081 127, 540, 544, 127, 127, 547, 553, 530, 127, 548,
1082 533, 542, 554, 555, 537, 127, 543, 539, 546, 127,
1083 549, 541, 550, 556, 551, 557, 558, 559, 544, 560,
1084 561, 547, 553, 562, 563, 548, 564, 542, 554, 555,
1085 565, 566, 543, 567, 546, 568, 549, 584, 550, 556,
1087 551, 557, 558, 559, 901, 560, 561, 901, 1062, 562,
1088 563, 585, 564, 184, 184, 184, 565, 566, 586, 567,
1089 569, 568, 184, 584, 184, 184, 184, 184, 184, 184,
1090 570, 572, 1004, 184, 571, 587, 184, 585, 1001, 184,
1091 184, 184, 588, 266, 586, 888, 569, 266, 184, 904,
1092 184, 184, 184, 184, 184, 184, 570, 572, 184, 184,
1093 571, 587, 184, 574, 184, 184, 589, 591, 588, 184,
1094 1059, 577, 184, 573, 184, 184, 184, 184, 575, 576,
1095 1058, 1050, 184, 592, 184, 184, 266, 593, 911, 574,
1096 184, 184, 589, 591, 1049, 184, 184, 577, 184, 573,
1098 184, 184, 184, 184, 575, 576, 184, 184, 184, 592,
1099 184, 184, 578, 593, 184, 184, 582, 184, 581, 594,
1100 184, 595, 184, 580, 579, 184, 184, 184, 184, 184,
1101 184, 1033, 184, 184, 596, 1028, 184, 597, 578, 600,
1102 184, 184, 582, 184, 581, 594, 184, 595, 601, 580,
1103 579, 184, 184, 184, 184, 184, 184, 184, 602, 603,
1104 596, 583, 604, 597, 606, 600, 607, 608, 184, 609,
1105 610, 184, 611, 612, 601, 613, 615, 616, 617, 618,
1106 619, 620, 621, 184, 602, 603, 622, 583, 604, 625,
1107 606, 627, 607, 608, 184, 609, 610, 184, 611, 612,
1109 628, 613, 615, 616, 617, 618, 619, 620, 621, 629,
1110 630, 631, 622, 632, 633, 625, 634, 627, 635, 636,
1111 637, 639, 127, 127, 127, 127, 628, 641, 127, 266,
1112 643, 1001, 127, 647, 648, 629, 630, 631, 642, 632,
1113 633, 640, 634, 644, 635, 636, 637, 639, 127, 645,
1114 650, 127, 127, 641, 127, 127, 127, 649, 127, 647,
1115 648, 127, 660, 652, 642, 127, 127, 640, 655, 644,
1116 651, 653, 656, 677, 127, 645, 650, 127, 662, 664,
1117 666, 127, 665, 649, 663, 127, 127, 127, 660, 652,
1118 670, 127, 127, 669, 655, 676, 651, 653, 656, 677,
1120 667, 678, 679, 680, 662, 664, 666, 681, 665, 671,
1121 663, 682, 683, 684, 685, 673, 670, 686, 687, 669,
1122 688, 676, 689, 690, 691, 711, 667, 678, 679, 680,
1123 1045, 184, 712, 681, 713, 671, 717, 682, 683, 684,
1124 685, 673, 184, 686, 687, 692, 688, 1037, 689, 690,
1125 691, 711, 184, 184, 1035, 718, 696, 184, 712, 266,
1126 713, 1004, 717, 184, 698, 1034, 184, 184, 184, 184,
1127 719, 692, 693, 184, 266, 720, 1006, 697, 184, 184,
1128 184, 718, 696, 184, 184, 694, 184, 184, 722, 184,
1129 698, 695, 184, 184, 184, 184, 719, 184, 723, 184,
1131 184, 720, 700, 697, 1032, 184, 184, 699, 184, 184,
1132 184, 694, 184, 184, 722, 1030, 184, 695, 184, 701,
1133 184, 726, 782, 184, 723, 782, 184, 184, 700, 184,
1134 184, 184, 184, 699, 184, 184, 702, 184, 727, 703,
1135 728, 704, 184, 184, 184, 701, 184, 726, 184, 184,
1136 729, 184, 730, 184, 184, 184, 184, 705, 184, 947,
1137 945, 184, 702, 184, 727, 703, 728, 704, 184, 184,
1138 706, 944, 184, 184, 184, 184, 729, 184, 730, 184,
1139 184, 942, 184, 705, 184, 708, 184, 184, 693, 707,
1140 732, 733, 734, 735, 184, 736, 706, 184, 737, 184,
1142 184, 714, 940, 742, 743, 184, 744, 715, 184, 738,
1143 184, 745, 184, 184, 746, 707, 732, 733, 734, 735,
1144 747, 736, 739, 184, 737, 748, 184, 714, 740, 742,
1145 743, 749, 744, 715, 751, 752, 753, 745, 754, 755,
1146 746, 756, 757, 758, 759, 761, 747, 763, 739, 127,
1147 266, 748, 1007, 127, 740, 127, 127, 749, 768, 127,
1148 751, 752, 753, 765, 754, 755, 127, 756, 757, 758,
1149 759, 761, 766, 763, 127, 772, 769, 127, 127, 127,
1150 127, 127, 780, 1012, 768, 773, 777, 776, 127, 765,
1151 774, 1005, 781, 784, 785, 775, 784, 916, 766, 778,
1153 916, 772, 769, 783, 783, 783, 783, 999, 780, 127,
1154 127, 773, 777, 776, 788, 789, 774, 127, 781, 127,
1155 790, 775, 127, 791, 127, 778, 787, 787, 787, 787,
1156 794, 794, 794, 794, 127, 127, 793, 127, 127, 803,
1157 788, 789, 792, 806, 802, 807, 790, 693, 808, 791,
1158 809, 810, 811, 796, 799, 801, 801, 801, 801, 797,
1159 804, 812, 793, 813, 814, 803, 805, 815, 792, 806,
1160 802, 807, 816, 817, 808, 998, 809, 810, 811, 796,
1161 799, 266, 997, 1008, 837, 797, 804, 812, 839, 813,
1162 814, 184, 805, 815, 989, 184, 840, 184, 816, 817,
1164 841, 820, 184, 844, 184, 184, 184, 818, 184, 184,
1165 837, 184, 987, 822, 839, 184, 933, 184, 184, 933,
1166 821, 184, 840, 184, 985, 983, 841, 820, 184, 844,
1167 184, 184, 184, 818, 184, 184, 184, 184, 184, 822,
1168 845, 184, 824, 184, 184, 825, 821, 184, 846, 184,
1169 184, 823, 184, 847, 184, 849, 184, 184, 850, 826,
1170 842, 843, 184, 842, 184, 982, 845, 184, 824, 184,
1171 184, 825, 981, 184, 846, 184, 184, 823, 184, 847,
1172 184, 849, 184, 184, 850, 826, 827, 184, 184, 184,
1173 854, 829, 828, 184, 184, 855, 184, 830, 184, 184,
1175 184, 184, 184, 184, 979, 184, 852, 853, 184, 852,
1176 856, 904, 857, 184, 184, 184, 854, 829, 828, 184,
1177 184, 855, 977, 830, 184, 184, 184, 184, 184, 184,
1178 184, 184, 831, 184, 184, 184, 856, 184, 857, 858,
1179 858, 858, 858, 860, 861, 184, 184, 862, 184, 184,
1180 863, 184, 864, 832, 865, 866, 184, 868, 831, 184,
1181 833, 184, 869, 184, 867, 771, 870, 867, 871, 860,
1182 861, 872, 184, 862, 184, 184, 863, 184, 864, 832,
1183 865, 866, 873, 868, 874, 875, 833, 878, 869, 879,
1184 876, 785, 870, 876, 871, 880, 881, 872, 882, 883,
1186 884, 885, 886, 887, 127, 127, 770, 771, 873, 770,
1187 874, 875, 127, 878, 890, 879, 266, 127, 1011, 918,
1188 127, 880, 881, 889, 882, 883, 884, 885, 886, 887,
1189 127, 892, 127, 127, 127, 893, 896, 127, 898, 127,
1190 890, 894, 127, 895, 900, 918, 897, 902, 919, 889,
1191 899, 783, 783, 783, 783, 784, 785, 892, 784, 127,
1192 947, 893, 896, 905, 898, 127, 127, 894, 948, 895,
1193 900, 948, 897, 902, 919, 912, 899, 787, 787, 787,
1194 787, 920, 921, 922, 907, 794, 794, 794, 794, 905,
1195 914, 914, 914, 914, 127, 801, 801, 801, 801, 915,
1197 923, 912, 924, 925, 926, 927, 928, 920, 921, 922,
1198 907, 929, 930, 931, 949, 843, 963, 949, 950, 853,
1199 266, 950, 1013, 951, 960, 915, 923, 960, 924, 925,
1200 926, 927, 928, 184, 184, 953, 954, 929, 930, 931,
1201 955, 932, 184, 184, 184, 184, 935, 184, 184, 951,
1202 936, 945, 934, 184, 184, 944, 184, 184, 956, 184,
1203 184, 953, 954, 266, 957, 1065, 955, 932, 184, 184,
1204 184, 184, 935, 184, 184, 184, 936, 184, 934, 184,
1205 184, 184, 184, 184, 956, 939, 184, 942, 184, 184,
1206 957, 184, 184, 937, 938, 184, 853, 940, 940, 184,
1208 958, 184, 843, 184, 959, 842, 843, 184, 842, 952,
1209 184, 939, 184, 184, 184, 184, 941, 184, 184, 937,
1210 938, 184, 942, 184, 184, 184, 958, 961, 944, 184,
1211 959, 962, 945, 184, 184, 184, 184, 184, 184, 184,
1212 184, 827, 943, 184, 184, 851, 917, 184, 851, 184,
1213 184, 852, 853, 961, 852, 184, 964, 962, 965, 184,
1214 184, 184, 913, 184, 184, 966, 184, 184, 943, 184,
1215 184, 947, 184, 184, 967, 946, 968, 969, 184, 970,
1216 971, 184, 964, 184, 965, 972, 184, 858, 858, 858,
1217 858, 966, 973, 184, 867, 771, 974, 867, 184, 975,
1219 967, 946, 968, 969, 184, 970, 971, 184, 976, 184,
1220 978, 972, 184, 876, 785, 980, 876, 984, 973, 986,
1221 988, 127, 974, 988, 891, 975, 990, 891, 127, 127,
1222 127, 127, 127, 992, 976, 127, 978, 991, 910, 995,
1223 127, 980, 909, 984, 127, 986, 993, 994, 901, 127,
1224 996, 901, 990, 1000, 1002, 916, 1003, 1002, 916, 992,
1225 908, 1014, 1015, 991, 1010, 995, 1009, 1009, 1009, 1009,
1226 1016, 1017, 993, 994, 1018, 1019, 996, 1020, 1021, 1000,
1227 1022, 906, 1003, 914, 914, 914, 914, 1014, 1015, 933,
1228 1010, 184, 933, 785, 903, 1023, 1016, 1017, 1038, 1040,
1230 1018, 1019, 184, 1020, 1021, 184, 1022, 1031, 184, 184,
1231 1031, 948, 771, 1025, 948, 1024, 184, 184, 184, 184,
1232 184, 1023, 184, 184, 1038, 1040, 1027, 184, 184, 184,
1233 1026, 184, 184, 1039, 184, 184, 1039, 949, 843, 1025,
1234 949, 1024, 184, 800, 184, 184, 184, 798, 184, 184,
1235 1028, 184, 1027, 184, 1041, 184, 1026, 184, 184, 184,
1236 1033, 184, 184, 950, 853, 184, 950, 1042, 184, 1029,
1237 184, 184, 184, 1036, 1043, 184, 1044, 184, 960, 1046,
1238 1041, 960, 877, 184, 1048, 184, 1051, 184, 184, 1052,
1239 1053, 184, 1054, 1042, 184, 1029, 184, 184, 184, 1036,
1241 1043, 184, 1044, 1055, 1056, 1046, 1047, 1047, 1047, 1047,
1242 1048, 1057, 1051, 1060, 1061, 1052, 1053, 1063, 1054, 988,
1243 127, 127, 988, 127, 1088, 767, 127, 1069, 127, 1055,
1244 1056, 127, 266, 266, 1073, 1074, 1067, 1057, 1066, 1060,
1245 1061, 1071, 1070, 1063, 266, 1072, 1075, 127, 1077, 127,
1246 1088, 1077, 1076, 1069, 1002, 859, 1079, 1002, 1078, 1079,
1247 1089, 266, 1067, 1080, 1066, 827, 1081, 1071, 1070, 1081,
1248 1090, 1072, 1082, 1082, 1082, 1082, 1083, 127, 1076, 1083,
1249 1009, 1009, 1009, 1009, 1078, 1085, 1089, 266, 1085, 1086,
1250 1091, 1084, 1087, 1087, 1087, 1087, 1090, 1092, 1093, 1094,
1252 184, 184, 1102, 1031, 848, 1102, 1031, 1097, 184, 838,
1253 1103, 184, 184, 1103, 1096, 184, 1091, 1084, 1095, 184,
1254 836, 184, 184, 1092, 1093, 1094, 184, 184, 184, 835,
1255 1105, 1098, 184, 1105, 184, 1099, 834, 184, 184, 184,
1256 1096, 184, 184, 1106, 1095, 184, 1106, 184, 184, 184,
1257 1110, 1111, 1108, 1101, 184, 1108, 184, 1098, 184, 1039,
1258 184, 1099, 1039, 184, 1112, 184, 1113, 184, 184, 1107,
1259 184, 1115, 266, 819, 1132, 184, 1110, 1111, 1116, 1101,
1260 1118, 1119, 184, 1121, 1122, 1123, 184, 1124, 1125, 184,
1261 1112, 1126, 1113, 184, 1127, 1107, 184, 1115, 1047, 1047,
1263 1047, 1047, 1129, 127, 1116, 1129, 1118, 1119, 127, 1121,
1264 1122, 1123, 1131, 1124, 1125, 1134, 127, 1126, 127, 708,
1265 1127, 1137, 1137, 1137, 1137, 1138, 1138, 1138, 1138, 127,
1266 1135, 1139, 1139, 1139, 1139, 1146, 1077, 1140, 1131, 1077,
1267 1079, 1134, 1142, 1079, 1147, 1142, 1081, 1141, 1148, 1081,
1268 1082, 1082, 1082, 1082, 1083, 1085, 1135, 1083, 1085, 1144,
1269 1145, 1146, 1144, 1140, 1087, 1087, 1087, 1087, 1149, 1150,
1270 1147, 1151, 184, 1141, 1148, 1152, 184, 184, 795, 1162,
1271 1153, 1155, 184, 184, 786, 1156, 184, 184, 184, 1102,
1272 184, 184, 1102, 184, 1149, 1150, 184, 1151, 184, 764,
1274 675, 1103, 184, 184, 1103, 1162, 1153, 1159, 184, 184,
1275 1159, 1156, 184, 184, 184, 1163, 184, 184, 184, 184,
1276 1165, 1169, 184, 1157, 1157, 1157, 1157, 1105, 1106, 184,
1277 1105, 1106, 184, 1160, 184, 1108, 1158, 1171, 1108, 1166,
1278 1167, 1163, 1166, 1172, 184, 184, 1165, 1169, 184, 1164,
1279 1164, 1164, 1164, 1174, 1175, 184, 1177, 1145, 184, 1177,
1280 184, 1129, 1158, 1171, 1129, 266, 127, 1178, 762, 1172,
1281 1180, 184, 127, 1180, 184, 266, 266, 1181, 1184, 1174,
1282 1175, 1182, 127, 1188, 1179, 1137, 1137, 1137, 1137, 1138,
1283 1138, 1138, 1138, 1139, 1139, 1139, 1139, 127, 266, 1142,
1285 1187, 1186, 1142, 1144, 1145, 1185, 1144, 1182, 1189, 1188,
1286 1179, 1190, 184, 1193, 1159, 760, 1193, 1159, 1195, 184,
1287 661, 184, 1199, 184, 1200, 1201, 184, 1186, 1196, 1192,
1288 184, 1185, 184, 184, 1189, 184, 750, 1190, 184, 1157,
1289 1157, 1157, 1157, 1198, 1167, 184, 1198, 184, 1199, 184,
1290 1200, 1201, 184, 1202, 1196, 1192, 184, 1204, 184, 184,
1291 1205, 184, 1164, 1164, 1164, 1164, 1166, 1167, 658, 1166,
1292 1177, 1145, 1206, 1177, 1180, 1206, 127, 1180, 1208, 1202,
1293 266, 1208, 1210, 1204, 127, 1215, 1205, 1211, 1211, 1211,
1294 1211, 1216, 1214, 1217, 1209, 1214, 1217, 1218, 184, 1212,
1296 1193, 1219, 184, 1193, 1219, 1222, 1223, 1225, 1222, 184,
1297 1226, 1215, 184, 184, 741, 708, 1221, 1216, 1198, 1167,
1298 1209, 1198, 127, 1206, 184, 1212, 1206, 266, 184, 1228,
1299 1233, 1208, 1223, 1225, 1208, 184, 1226, 1214, 184, 184,
1300 1214, 1229, 1221, 1230, 1230, 1230, 1230, 1211, 1211, 1211,
1301 1211, 127, 266, 1237, 1232, 1231, 1233, 1217, 1219, 1238,
1302 1217, 1219, 1235, 1235, 1235, 1235, 184, 1229, 1222, 1236,
1303 1239, 1222, 1240, 1240, 1240, 1240, 127, 184, 1244, 1237,
1304 184, 1231, 266, 731, 1250, 1238, 1230, 1230, 1230, 1230,
1305 725, 1247, 184, 724, 1242, 1236, 1239, 1243, 1243, 1243,
1307 1243, 1249, 1252, 184, 1244, 184, 184, 1245, 1245, 1245,
1308 1245, 1235, 1235, 1235, 1235, 721, 184, 1247, 716, 184,
1309 1242, 710, 1246, 1240, 1240, 1240, 1240, 1249, 1252, 1253,
1310 184, 184, 1243, 1243, 1243, 1243, 1245, 1245, 1245, 1245,
1311 709, 184, 184, 674, 184, 184, 672, 654, 1246, 1255,
1312 1255, 1255, 1255, 266, 638, 1256, 184, 1255, 1255, 1255,
1313 1255, 1258, 1258, 1258, 1258, 626, 624, 184, 623, 614,
1314 184, 1259, 1259, 1259, 1259, 1258, 1258, 1258, 1258, 1259,
1315 1259, 1259, 1259, 44, 44, 44, 44, 44, 44, 44,
1316 44, 44, 128, 128, 162, 605, 599, 162, 162, 162,
1318 598, 162, 169, 169, 590, 169, 552, 169, 545, 169,
1319 184, 184, 538, 184, 536, 184, 535, 184, 239, 239,
1320 239, 534, 239, 239, 239, 239, 239, 240, 523, 240,
1321 518, 431, 395, 518, 365, 518, 364, 518, 518, 233,
1322 336, 183, 307, 306, 304, 303, 302, 127, 266, 161,
1323 126, 124, 233, 198, 183, 159, 161, 127, 126, 124,
1324 1260, 17, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1325 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1326 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1327 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1329 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1330 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1331 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260
1334 static yyconst flex_int16_t yy_chk[4029] =
1335 { 0,
1336 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1337 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1338 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1339 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1340 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1341 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1342 1, 1, 1, 1, 1, 1, 3, 3, 3, 3,
1343 3, 3, 33, 24, 3, 3, 24, 33, 3, 3,
1344 13, 13, 13, 13, 14, 14, 14, 14, 20, 20,
1345 20, 20, 1254, 13, 22, 22, 1253, 14, 22, 22,
1347 31, 20, 22, 33, 3, 4, 4, 4, 4, 4,
1348 4, 26, 1252, 4, 4, 31, 30, 4, 4, 21,
1349 21, 21, 21, 28, 28, 26, 1249, 58, 26, 30,
1350 58, 29, 21, 34, 1248, 28, 29, 76, 28, 30,
1351 29, 31, 34, 4, 5, 5, 5, 5, 5, 5,
1352 28, 26, 5, 5, 26, 30, 5, 5, 32, 37,
1353 36, 28, 29, 76, 28, 30, 29, 95, 34, 95,
1354 95, 32, 32, 35, 35, 36, 37, 78, 35, 77,
1355 36, 1247, 5, 6, 6, 6, 6, 6, 6, 38,
1356 77, 6, 6, 77, 38, 6, 6, 32, 32, 1242,
1358 35, 36, 37, 78, 35, 77, 36, 48, 48, 1238,
1359 98, 48, 48, 98, 103, 48, 77, 103, 1229, 77,
1360 38, 6, 7, 7, 7, 7, 7, 7, 7, 7,
1361 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1362 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1363 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1364 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1365 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1366 7, 7, 7, 7, 7, 7, 7, 7, 9, 9,
1367 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1369 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1370 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1371 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1372 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1373 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1374 9, 9, 9, 9, 11, 11, 11, 11, 1227, 1224,
1375 40, 40, 41, 41, 79, 40, 81, 11, 11, 40,
1376 11, 11, 11, 82, 79, 84, 11, 40, 11, 11,
1377 11, 80, 80, 11, 11, 11, 11, 40, 1218, 41,
1378 79, 40, 81, 1215, 11, 40, 11, 11, 11, 82,
1380 79, 84, 11, 40, 11, 11, 11, 80, 80, 11,
1381 11, 11, 11, 15, 15, 15, 15, 15, 15, 15,
1382 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1383 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1384 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1385 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1386 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1387 15, 15, 15, 15, 15, 15, 15, 15, 15, 19,
1388 19, 19, 19, 42, 1205, 19, 85, 105, 125, 19,
1389 42, 125, 19, 19, 108, 19, 19, 19, 19, 109,
1391 110, 19, 1203, 19, 19, 19, 19, 1201, 19, 19,
1392 19, 19, 85, 105, 19, 45, 45, 45, 45, 19,
1393 108, 19, 19, 19, 19, 109, 110, 19, 45, 19,
1394 19, 19, 19, 39, 19, 19, 19, 19, 39, 171,
1395 19, 42, 171, 19, 46, 46, 46, 46, 39, 111,
1396 1199, 63, 39, 39, 523, 63, 523, 46, 47, 47,
1397 47, 47, 63, 1195, 39, 63, 112, 51, 51, 51,
1398 51, 47, 83, 64, 39, 111, 83, 63, 39, 39,
1399 51, 63, 87, 1189, 64, 115, 87, 64, 63, 66,
1400 1186, 63, 112, 66, 93, 64, 93, 93, 83, 64,
1402 66, 116, 83, 66, 93, 51, 55, 1179, 87, 55,
1403 64, 115, 87, 64, 1176, 66, 55, 119, 1173, 66,
1404 65, 64, 55, 55, 55, 1172, 66, 116, 55, 66,
1405 55, 65, 55, 65, 65, 55, 55, 55, 55, 88,
1406 88, 88, 88, 119, 96, 1170, 65, 96, 55, 55,
1407 55, 96, 88, 173, 55, 1168, 55, 65, 55, 65,
1408 65, 55, 55, 55, 55, 61, 61, 135, 1167, 61,
1409 61, 61, 61, 61, 61, 61, 67, 61, 61, 173,
1410 67, 68, 69, 114, 86, 135, 69, 67, 114, 106,
1411 67, 1163, 68, 69, 86, 68, 69, 68, 86, 86,
1413 106, 174, 67, 106, 96, 61, 67, 68, 69, 114,
1414 86, 135, 69, 67, 114, 106, 67, 136, 68, 69,
1415 86, 68, 69, 68, 86, 86, 106, 174, 1160, 106,
1416 61, 62, 62, 136, 1155, 62, 62, 62, 62, 62,
1417 62, 62, 71, 62, 62, 1152, 62, 107, 130, 129,
1418 71, 107, 129, 71, 113, 130, 71, 62, 113, 136,
1419 62, 89, 89, 89, 89, 534, 182, 534, 71, 182,
1420 1151, 62, 62, 107, 89, 141, 71, 107, 129, 71,
1421 113, 130, 71, 62, 113, 1148, 62, 91, 91, 91,
1422 91, 101, 101, 101, 101, 117, 62, 70, 118, 141,
1424 91, 70, 118, 131, 101, 153, 118, 153, 70, 175,
1425 117, 70, 132, 132, 118, 1146, 70, 121, 121, 121,
1426 121, 117, 131, 70, 118, 141, 1145, 70, 118, 535,
1427 121, 535, 118, 153, 70, 175, 117, 70, 1135, 132,
1428 118, 133, 70, 74, 657, 133, 74, 657, 131, 122,
1429 122, 122, 122, 124, 124, 124, 124, 133, 1127, 74,
1430 74, 74, 122, 1124, 134, 74, 536, 74, 536, 74,
1431 134, 133, 74, 74, 74, 74, 123, 123, 137, 137,
1432 123, 123, 134, 133, 123, 74, 74, 74, 138, 139,
1433 139, 74, 140, 74, 143, 74, 134, 142, 74, 74,
1435 74, 74, 144, 138, 145, 137, 146, 176, 134, 147,
1436 140, 142, 1121, 143, 154, 142, 139, 149, 147, 146,
1437 149, 144, 150, 145, 1120, 151, 154, 156, 150, 138,
1438 1118, 148, 156, 176, 155, 148, 140, 142, 152, 143,
1439 152, 142, 151, 148, 147, 146, 149, 144, 157, 145,
1440 148, 152, 154, 155, 150, 164, 164, 1116, 156, 164,
1441 164, 148, 177, 164, 178, 157, 152, 1112, 151, 148,
1442 161, 161, 161, 161, 1110, 1109, 148, 152, 172, 155,
1443 163, 163, 163, 163, 165, 165, 165, 165, 177, 172,
1444 178, 157, 172, 163, 179, 180, 1097, 165, 166, 166,
1446 166, 166, 181, 184, 172, 185, 201, 1090, 202, 203,
1447 180, 166, 204, 186, 184, 172, 185, 184, 172, 185,
1448 179, 180, 165, 185, 186, 1084, 1072, 186, 181, 184,
1449 206, 185, 201, 187, 202, 203, 180, 207, 204, 186,
1450 184, 188, 185, 184, 187, 185, 189, 187, 187, 185,
1451 186, 190, 188, 186, 208, 188, 206, 189, 188, 187,
1452 189, 1069, 190, 207, 538, 190, 538, 188, 190, 208,
1453 187, 192, 189, 187, 187, 205, 191, 190, 188, 205,
1454 208, 188, 192, 189, 188, 192, 189, 191, 190, 192,
1455 191, 190, 193, 194, 190, 208, 194, 192, 1066, 191,
1457 193, 205, 191, 193, 194, 205, 193, 194, 192, 197,
1458 195, 192, 195, 191, 1064, 192, 191, 200, 193, 194,
1459 197, 195, 194, 197, 195, 191, 193, 197, 200, 193,
1460 194, 200, 193, 194, 210, 197, 195, 545, 195, 545,
1461 209, 211, 212, 200, 209, 1062, 197, 195, 214, 197,
1462 195, 196, 196, 197, 200, 215, 216, 200, 217, 213,
1463 210, 218, 196, 196, 219, 196, 209, 211, 212, 220,
1464 209, 213, 221, 222, 214, 223, 225, 196, 196, 226,
1465 227, 215, 216, 229, 217, 213, 224, 218, 196, 196,
1466 219, 196, 228, 230, 224, 220, 1059, 213, 221, 222,
1468 1058, 223, 225, 228, 724, 226, 227, 724, 237, 229,
1469 237, 237, 224, 231, 231, 231, 231, 241, 228, 230,
1470 224, 234, 234, 234, 234, 236, 231, 236, 236, 228,
1471 238, 242, 243, 238, 234, 236, 244, 238, 245, 246,
1472 247, 248, 249, 241, 250, 251, 252, 253, 244, 254,
1473 245, 255, 256, 552, 258, 552, 260, 242, 243, 261,
1474 262, 1053, 244, 263, 245, 246, 247, 248, 249, 264,
1475 250, 251, 252, 253, 244, 254, 245, 255, 256, 257,
1476 258, 259, 260, 267, 268, 261, 262, 257, 269, 263,
1477 238, 267, 259, 269, 257, 264, 265, 265, 265, 265,
1479 272, 271, 273, 270, 268, 257, 271, 259, 276, 274,
1480 277, 273, 274, 257, 278, 1050, 276, 267, 259, 269,
1481 257, 270, 275, 277, 272, 275, 280, 279, 282, 283,
1482 268, 281, 271, 278, 279, 284, 285, 273, 274, 282,
1483 288, 286, 276, 284, 285, 280, 286, 270, 283, 277,
1484 272, 275, 287, 281, 287, 289, 290, 290, 291, 278,
1485 279, 288, 292, 293, 289, 282, 295, 1049, 1045, 284,
1486 285, 280, 286, 294, 283, 643, 296, 643, 291, 281,
1487 287, 292, 293, 290, 295, 297, 298, 288, 294, 296,
1488 289, 298, 301, 299, 300, 308, 309, 297, 310, 300,
1490 305, 305, 305, 305, 291, 299, 301, 292, 293, 311,
1491 295, 312, 313, 314, 294, 296, 315, 298, 316, 317,
1492 318, 308, 309, 297, 310, 300, 320, 317, 654, 319,
1493 654, 299, 301, 646, 646, 311, 646, 312, 313, 314,
1494 319, 1042, 315, 321, 316, 317, 318, 321, 322, 323,
1495 338, 339, 320, 317, 321, 319, 324, 321, 324, 322,
1496 323, 340, 322, 323, 1038, 322, 319, 324, 1033, 321,
1497 324, 341, 323, 321, 322, 323, 338, 339, 1028, 1021,
1498 321, 326, 324, 321, 324, 322, 323, 340, 322, 323,
1499 325, 322, 326, 324, 327, 326, 324, 341, 323, 326,
1501 1019, 325, 325, 328, 325, 327, 992, 326, 327, 342,
1502 328, 672, 329, 672, 328, 327, 325, 328, 326, 987,
1503 327, 326, 674, 329, 674, 326, 329, 325, 325, 328,
1504 325, 327, 329, 331, 327, 342, 328, 330, 329, 332,
1505 328, 327, 343, 328, 331, 330, 986, 331, 330, 329,
1506 332, 330, 329, 332, 985, 333, 344, 332, 329, 331,
1507 983, 767, 345, 330, 767, 332, 333, 346, 343, 333,
1508 331, 330, 333, 331, 330, 334, 332, 330, 337, 332,
1509 335, 333, 344, 332, 347, 348, 334, 334, 345, 334,
1510 337, 335, 333, 346, 335, 333, 349, 350, 333, 351,
1512 352, 334, 353, 354, 337, 355, 335, 356, 357, 358,
1513 347, 348, 334, 334, 359, 334, 337, 335, 360, 361,
1514 335, 362, 349, 350, 363, 351, 352, 366, 353, 354,
1515 367, 355, 368, 356, 357, 358, 369, 370, 371, 372,
1516 359, 373, 374, 375, 360, 361, 376, 362, 377, 378,
1517 363, 379, 380, 366, 381, 382, 367, 383, 368, 384,
1518 385, 386, 369, 370, 371, 372, 387, 373, 374, 375,
1519 388, 389, 376, 390, 377, 378, 391, 379, 380, 392,
1520 381, 382, 393, 383, 394, 384, 385, 386, 396, 399,
1521 406, 397, 387, 398, 404, 402, 388, 389, 401, 390,
1523 398, 403, 391, 396, 397, 392, 406, 399, 393, 402,
1524 394, 401, 405, 405, 404, 408, 982, 407, 403, 410,
1525 408, 409, 409, 414, 417, 417, 398, 981, 418, 396,
1526 397, 407, 406, 399, 410, 402, 416, 401, 414, 405,
1527 404, 416, 419, 421, 403, 418, 408, 430, 409, 420,
1528 424, 417, 421, 427, 423, 424, 430, 407, 425, 425,
1529 410, 419, 432, 433, 414, 426, 420, 416, 423, 428,
1530 426, 418, 427, 434, 428, 435, 436, 437, 421, 438,
1531 439, 424, 430, 440, 441, 425, 442, 419, 432, 433,
1532 443, 444, 420, 445, 423, 446, 426, 462, 427, 434,
1534 428, 435, 436, 437, 779, 438, 439, 779, 980, 440,
1535 441, 463, 442, 448, 447, 450, 443, 444, 464, 445,
1536 447, 446, 449, 462, 448, 447, 450, 448, 447, 450,
1537 448, 450, 979, 449, 449, 465, 449, 463, 977, 448,
1538 447, 450, 466, 764, 464, 764, 447, 786, 449, 786,
1539 448, 447, 450, 448, 447, 450, 448, 450, 451, 449,
1540 449, 465, 449, 452, 453, 454, 467, 469, 466, 451,
1541 975, 455, 451, 451, 452, 453, 454, 452, 453, 454,
1542 974, 966, 455, 470, 451, 455, 795, 471, 795, 452,
1543 453, 454, 467, 469, 965, 451, 456, 455, 451, 451,
1545 452, 453, 454, 452, 453, 454, 457, 456, 455, 470,
1546 456, 455, 456, 471, 459, 458, 460, 457, 459, 472,
1547 457, 473, 456, 458, 457, 459, 458, 460, 459, 458,
1548 460, 962, 457, 456, 474, 959, 456, 475, 456, 478,
1549 459, 458, 460, 457, 459, 472, 457, 473, 479, 458,
1550 457, 459, 458, 460, 459, 458, 460, 461, 480, 481,
1551 474, 461, 482, 475, 484, 478, 485, 486, 461, 487,
1552 488, 461, 489, 490, 479, 491, 493, 494, 495, 496,
1553 497, 498, 499, 461, 480, 481, 500, 461, 482, 503,
1554 484, 505, 485, 486, 461, 487, 488, 461, 489, 490,
1556 506, 491, 493, 494, 495, 496, 497, 498, 499, 507,
1557 508, 509, 500, 510, 511, 503, 512, 505, 513, 514,
1558 515, 517, 520, 521, 519, 525, 506, 520, 524, 903,
1559 522, 903, 527, 524, 525, 507, 508, 509, 521, 510,
1560 511, 519, 512, 522, 513, 514, 515, 517, 526, 522,
1561 527, 529, 528, 520, 532, 533, 530, 526, 537, 524,
1562 525, 539, 537, 529, 521, 540, 543, 519, 532, 522,
1563 528, 530, 533, 554, 541, 522, 527, 542, 539, 541,
1564 543, 553, 542, 526, 540, 544, 546, 547, 537, 529,
1565 547, 550, 548, 546, 532, 553, 528, 530, 533, 554,
1567 544, 555, 556, 557, 539, 541, 543, 558, 542, 548,
1568 540, 559, 560, 561, 562, 550, 547, 563, 564, 546,
1569 565, 553, 566, 567, 568, 586, 544, 555, 556, 557,
1570 958, 569, 587, 558, 588, 548, 591, 559, 560, 561,
1571 562, 550, 569, 563, 564, 569, 565, 947, 566, 567,
1572 568, 586, 571, 573, 945, 592, 571, 569, 587, 906,
1573 588, 906, 591, 571, 573, 944, 571, 573, 569, 572,
1574 593, 569, 570, 570, 908, 594, 908, 572, 571, 573,
1575 572, 592, 571, 572, 570, 570, 575, 570, 596, 571,
1576 573, 570, 571, 573, 574, 572, 593, 575, 597, 570,
1578 575, 594, 575, 572, 942, 574, 572, 574, 574, 572,
1579 570, 570, 575, 570, 596, 940, 576, 570, 577, 576,
1580 574, 600, 782, 575, 597, 782, 575, 576, 575, 577,
1581 576, 574, 577, 574, 574, 578, 577, 579, 601, 578,
1582 602, 579, 576, 580, 577, 576, 578, 600, 579, 578,
1583 603, 579, 604, 576, 580, 577, 576, 580, 577, 931,
1584 929, 578, 577, 579, 601, 578, 602, 579, 581, 580,
1585 581, 928, 578, 582, 579, 578, 603, 579, 604, 581,
1586 580, 926, 581, 580, 582, 583, 583, 582, 589, 582,
1587 606, 607, 608, 609, 581, 611, 581, 583, 612, 582,
1589 583, 589, 925, 615, 616, 581, 617, 589, 581, 613,
1590 582, 618, 583, 582, 619, 582, 606, 607, 608, 609,
1591 620, 611, 613, 583, 612, 621, 583, 589, 613, 615,
1592 616, 622, 617, 589, 625, 627, 628, 618, 629, 630,
1593 619, 631, 632, 633, 634, 636, 620, 639, 613, 641,
1594 909, 621, 909, 644, 613, 642, 647, 622, 644, 645,
1595 625, 627, 628, 641, 629, 630, 648, 631, 632, 633,
1596 634, 636, 642, 639, 649, 647, 645, 650, 651, 655,
1597 653, 652, 655, 915, 644, 648, 652, 651, 656, 641,
1598 649, 907, 656, 659, 659, 650, 659, 800, 642, 653,
1600 800, 647, 645, 658, 658, 658, 658, 900, 655, 662,
1601 663, 648, 652, 651, 662, 663, 649, 664, 656, 665,
1602 664, 650, 667, 665, 666, 653, 661, 661, 661, 661,
1603 668, 668, 668, 668, 670, 671, 667, 676, 673, 677,
1604 662, 663, 666, 679, 676, 680, 664, 678, 681, 665,
1605 682, 683, 684, 670, 673, 675, 675, 675, 675, 671,
1606 678, 685, 667, 686, 687, 677, 678, 688, 666, 679,
1607 676, 680, 689, 690, 681, 899, 682, 683, 684, 670,
1608 673, 910, 898, 910, 711, 671, 678, 685, 713, 686,
1609 687, 692, 678, 688, 889, 696, 714, 694, 689, 690,
1611 715, 694, 692, 717, 695, 692, 696, 692, 694, 696,
1612 711, 694, 887, 696, 713, 695, 819, 692, 695, 819,
1613 695, 696, 714, 694, 885, 883, 715, 694, 692, 717,
1614 695, 692, 696, 692, 694, 696, 697, 694, 698, 696,
1615 718, 695, 698, 699, 695, 699, 695, 697, 719, 698,
1616 697, 697, 698, 720, 699, 722, 700, 699, 723, 700,
1617 716, 716, 697, 716, 698, 882, 718, 700, 698, 699,
1618 700, 699, 881, 697, 719, 698, 697, 697, 698, 720,
1619 699, 722, 700, 699, 723, 700, 701, 701, 702, 703,
1620 727, 703, 702, 700, 704, 728, 700, 704, 701, 702,
1622 703, 701, 702, 703, 879, 704, 725, 725, 704, 725,
1623 729, 877, 730, 701, 702, 703, 727, 703, 702, 705,
1624 704, 728, 875, 704, 701, 702, 703, 701, 702, 703,
1625 705, 704, 705, 705, 704, 706, 729, 707, 730, 731,
1626 731, 731, 731, 733, 734, 705, 706, 735, 707, 706,
1627 736, 707, 737, 706, 739, 740, 705, 742, 705, 705,
1628 707, 706, 743, 707, 741, 741, 744, 741, 745, 733,
1629 734, 746, 706, 735, 707, 706, 736, 707, 737, 706,
1630 739, 740, 747, 742, 748, 749, 707, 752, 743, 753,
1631 750, 750, 744, 750, 745, 754, 755, 746, 756, 757,
1633 758, 759, 761, 763, 765, 766, 770, 770, 747, 770,
1634 748, 749, 768, 752, 766, 753, 913, 774, 913, 803,
1635 776, 754, 755, 765, 756, 757, 758, 759, 761, 763,
1636 769, 768, 777, 772, 773, 769, 774, 775, 776, 778,
1637 766, 772, 780, 773, 778, 803, 775, 780, 804, 765,
1638 777, 783, 783, 783, 783, 784, 784, 768, 784, 788,
1639 861, 769, 774, 788, 776, 790, 796, 772, 834, 773,
1640 778, 834, 775, 780, 804, 796, 777, 787, 787, 787,
1641 787, 805, 806, 807, 790, 794, 794, 794, 794, 788,
1642 798, 798, 798, 798, 799, 801, 801, 801, 801, 799,
1644 808, 796, 809, 810, 812, 813, 814, 805, 806, 807,
1645 790, 815, 816, 817, 835, 835, 859, 835, 836, 836,
1646 917, 836, 917, 837, 848, 799, 808, 848, 809, 810,
1647 812, 813, 814, 818, 820, 839, 840, 815, 816, 817,
1648 841, 818, 821, 822, 818, 820, 821, 818, 820, 837,
1649 822, 857, 820, 821, 822, 856, 821, 822, 844, 818,
1650 820, 839, 840, 989, 845, 989, 841, 818, 821, 822,
1651 818, 820, 821, 818, 820, 823, 822, 824, 820, 821,
1652 822, 825, 821, 822, 844, 825, 823, 854, 824, 823,
1653 845, 824, 825, 823, 824, 825, 853, 850, 826, 826,
1655 846, 823, 843, 824, 847, 842, 842, 825, 842, 838,
1656 826, 825, 823, 826, 824, 823, 827, 824, 825, 823,
1657 824, 825, 828, 828, 829, 826, 846, 849, 830, 830,
1658 847, 855, 831, 831, 828, 829, 826, 828, 829, 826,
1659 830, 811, 829, 830, 831, 851, 802, 831, 851, 828,
1660 829, 852, 852, 849, 852, 830, 860, 855, 862, 831,
1661 828, 829, 797, 828, 829, 863, 830, 832, 829, 830,
1662 831, 833, 833, 831, 864, 832, 865, 866, 832, 868,
1663 869, 832, 860, 833, 862, 870, 833, 858, 858, 858,
1664 858, 863, 871, 832, 867, 867, 872, 867, 833, 873,
1666 864, 832, 865, 866, 832, 868, 869, 832, 874, 833,
1667 878, 870, 833, 876, 876, 880, 876, 884, 871, 886,
1668 888, 890, 872, 888, 891, 873, 890, 891, 893, 892,
1669 896, 894, 895, 893, 874, 897, 878, 892, 793, 896,
1670 902, 880, 792, 884, 905, 886, 894, 895, 901, 912,
1671 897, 901, 890, 902, 904, 916, 905, 904, 916, 893,
1672 791, 918, 919, 892, 912, 896, 911, 911, 911, 911,
1673 920, 921, 894, 895, 922, 923, 897, 924, 927, 902,
1674 930, 789, 905, 914, 914, 914, 914, 918, 919, 933,
1675 912, 932, 933, 785, 781, 932, 920, 921, 951, 953,
1677 922, 923, 932, 924, 927, 932, 930, 941, 934, 935,
1678 941, 948, 771, 935, 948, 934, 936, 932, 937, 934,
1679 935, 932, 934, 935, 951, 953, 937, 936, 932, 937,
1680 936, 932, 937, 952, 934, 935, 952, 949, 949, 935,
1681 949, 934, 936, 762, 937, 934, 935, 760, 934, 935,
1682 938, 938, 937, 936, 954, 937, 936, 939, 937, 946,
1683 943, 943, 938, 950, 950, 938, 950, 955, 939, 939,
1684 946, 939, 943, 946, 956, 943, 957, 938, 960, 961,
1685 954, 960, 751, 939, 964, 946, 967, 943, 938, 968,
1686 969, 938, 970, 955, 939, 939, 946, 939, 943, 946,
1688 956, 943, 957, 971, 972, 961, 963, 963, 963, 963,
1689 964, 973, 967, 976, 978, 968, 969, 984, 970, 988,
1690 990, 991, 988, 993, 1014, 738, 995, 993, 994, 971,
1691 972, 996, 997, 998, 997, 998, 991, 973, 990, 976,
1692 978, 995, 994, 984, 999, 996, 999, 1000, 1001, 1003,
1693 1014, 1001, 1000, 993, 1002, 732, 1004, 1002, 1003, 1004,
1694 1015, 1005, 991, 1005, 990, 726, 1006, 995, 994, 1006,
1695 1016, 996, 1007, 1007, 1007, 1007, 1008, 1010, 1000, 1008,
1696 1009, 1009, 1009, 1009, 1003, 1011, 1015, 1012, 1011, 1012,
1697 1017, 1010, 1013, 1013, 1013, 1013, 1016, 1018, 1020, 1022,
1699 1024, 1023, 1030, 1031, 721, 1030, 1031, 1025, 1025, 712,
1700 1032, 1024, 1023, 1032, 1024, 1023, 1017, 1010, 1023, 1025,
1701 710, 1027, 1025, 1018, 1020, 1022, 1024, 1023, 1026, 709,
1702 1034, 1026, 1027, 1034, 1025, 1027, 708, 1024, 1023, 1026,
1703 1024, 1023, 1026, 1035, 1023, 1025, 1035, 1027, 1025, 1029,
1704 1040, 1041, 1037, 1029, 1026, 1037, 1036, 1026, 1027, 1039,
1705 1029, 1027, 1039, 1029, 1043, 1026, 1044, 1036, 1026, 1036,
1706 1036, 1046, 1068, 693, 1068, 1029, 1040, 1041, 1048, 1029,
1707 1051, 1052, 1036, 1054, 1055, 1056, 1029, 1057, 1060, 1029,
1708 1043, 1061, 1044, 1036, 1063, 1036, 1036, 1046, 1047, 1047,
1710 1047, 1047, 1065, 1070, 1048, 1065, 1051, 1052, 1067, 1054,
1711 1055, 1056, 1067, 1057, 1060, 1070, 1071, 1061, 1076, 691,
1712 1063, 1073, 1073, 1073, 1073, 1074, 1074, 1074, 1074, 1078,
1713 1071, 1075, 1075, 1075, 1075, 1088, 1077, 1076, 1067, 1077,
1714 1079, 1070, 1080, 1079, 1089, 1080, 1081, 1078, 1091, 1081,
1715 1082, 1082, 1082, 1082, 1083, 1085, 1071, 1083, 1085, 1086,
1716 1086, 1088, 1086, 1076, 1087, 1087, 1087, 1087, 1092, 1093,
1717 1089, 1094, 1099, 1078, 1091, 1095, 1095, 1096, 669, 1111,
1718 1096, 1098, 1098, 1099, 660, 1099, 1099, 1095, 1096, 1102,
1719 1095, 1096, 1102, 1098, 1092, 1093, 1098, 1094, 1099, 640,
1721 638, 1103, 1095, 1096, 1103, 1111, 1096, 1104, 1098, 1099,
1722 1104, 1099, 1099, 1095, 1096, 1113, 1095, 1096, 1101, 1098,
1723 1115, 1119, 1098, 1100, 1100, 1100, 1100, 1105, 1106, 1101,
1724 1105, 1106, 1101, 1107, 1107, 1108, 1101, 1122, 1108, 1117,
1725 1117, 1113, 1117, 1123, 1101, 1107, 1115, 1119, 1107, 1114,
1726 1114, 1114, 1114, 1125, 1126, 1101, 1128, 1128, 1101, 1128,
1727 1107, 1129, 1101, 1122, 1129, 1130, 1131, 1130, 637, 1123,
1728 1132, 1107, 1134, 1132, 1107, 1133, 1136, 1133, 1136, 1125,
1729 1126, 1134, 1141, 1147, 1131, 1137, 1137, 1137, 1137, 1138,
1730 1138, 1138, 1138, 1139, 1139, 1139, 1139, 1140, 1143, 1142,
1732 1143, 1141, 1142, 1144, 1144, 1140, 1144, 1134, 1149, 1147,
1733 1131, 1150, 1153, 1154, 1159, 635, 1154, 1159, 1156, 1156,
1734 626, 1158, 1162, 1153, 1165, 1169, 1153, 1141, 1158, 1153,
1735 1156, 1140, 1158, 1156, 1149, 1158, 624, 1150, 1153, 1157,
1736 1157, 1157, 1157, 1161, 1161, 1156, 1161, 1158, 1162, 1153,
1737 1165, 1169, 1153, 1171, 1158, 1153, 1156, 1174, 1158, 1156,
1738 1175, 1158, 1164, 1164, 1164, 1164, 1166, 1166, 623, 1166,
1739 1177, 1177, 1178, 1177, 1180, 1178, 1182, 1180, 1181, 1171,
1740 1183, 1181, 1183, 1174, 1185, 1188, 1175, 1184, 1184, 1184,
1741 1184, 1190, 1187, 1191, 1182, 1187, 1191, 1192, 1192, 1185,
1743 1193, 1194, 1196, 1193, 1194, 1197, 1200, 1202, 1197, 1192,
1744 1204, 1188, 1192, 1196, 614, 610, 1196, 1190, 1198, 1198,
1745 1182, 1198, 1209, 1206, 1192, 1185, 1206, 1207, 1196, 1207,
1746 1216, 1208, 1200, 1202, 1208, 1192, 1204, 1214, 1192, 1196,
1747 1214, 1209, 1196, 1210, 1210, 1210, 1210, 1211, 1211, 1211,
1748 1211, 1212, 1213, 1223, 1213, 1212, 1216, 1217, 1219, 1225,
1749 1217, 1219, 1220, 1220, 1220, 1220, 1221, 1209, 1222, 1221,
1750 1226, 1222, 1228, 1228, 1228, 1228, 1231, 1221, 1233, 1223,
1751 1221, 1212, 1241, 605, 1241, 1225, 1230, 1230, 1230, 1230,
1752 599, 1237, 1221, 598, 1231, 1221, 1226, 1232, 1232, 1232,
1754 1232, 1239, 1244, 1221, 1233, 1236, 1221, 1234, 1234, 1234,
1755 1234, 1235, 1235, 1235, 1235, 595, 1236, 1237, 590, 1236,
1756 1231, 585, 1236, 1240, 1240, 1240, 1240, 1239, 1244, 1246,
1757 1246, 1236, 1243, 1243, 1243, 1243, 1245, 1245, 1245, 1245,
1758 584, 1246, 1236, 551, 1246, 1236, 549, 531, 1236, 1250,
1759 1250, 1250, 1250, 1251, 516, 1251, 1246, 1255, 1255, 1255,
1760 1255, 1256, 1256, 1256, 1256, 504, 502, 1246, 501, 492,
1761 1246, 1257, 1257, 1257, 1257, 1258, 1258, 1258, 1258, 1259,
1762 1259, 1259, 1259, 1261, 1261, 1261, 1261, 1261, 1261, 1261,
1763 1261, 1261, 1262, 1262, 1263, 483, 477, 1263, 1263, 1263,
1765 476, 1263, 1264, 1264, 468, 1264, 429, 1264, 422, 1264,
1766 1265, 1265, 415, 1265, 413, 1265, 412, 1265, 1266, 1266,
1767 1266, 411, 1266, 1266, 1266, 1266, 1266, 1267, 400, 1267,
1768 1268, 307, 266, 1268, 239, 1268, 235, 1268, 1268, 232,
1769 198, 183, 168, 167, 160, 159, 158, 128, 127, 120,
1770 104, 102, 90, 72, 59, 49, 43, 27, 25, 23,
1771 17, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1772 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1773 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1774 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1776 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1777 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,
1778 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260
1781 /* Table of booleans, true if rule could match eol. */
1782 static yyconst flex_int32_t yy_rule_can_match_eol[108] =
1783 { 0,
1784 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1,
1785 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1,
1786 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
1787 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1788 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0,
1789 0, 1, 1, 1, 1, 1, 1, 0, };
1791 static yy_state_type yy_last_accepting_state;
1792 static char *yy_last_accepting_cpos;
1794 extern int scdoc_flex_debug;
1795 int scdoc_flex_debug = 0;
1797 /* The intent behind this definition is that it'll catch
1798 * any uses of REJECT which flex missed.
1800 #define REJECT reject_used_but_not_detected
1801 #define yymore() yymore_used_but_not_detected
1802 #define YY_MORE_ADJ 0
1803 #define YY_RESTORE_YY_MORE_OFFSET
1804 char *scdoctext;
1805 #line 1 "SCDoc.l"
1806 #line 2 "SCDoc.l"
1807 /************************************************************************
1809 * Copyright 2012 Jonatan Liljedahl <lijon@kymatica.com>
1811 * This program is free software: you can redistribute it and/or modify
1812 * it under the terms of the GNU General Public License as published by
1813 * the Free Software Foundation, either version 3 of the License, or
1814 * (at your option) any later version.
1816 * This program is distributed in the hope that it will be useful,
1817 * but WITHOUT ANY WARRANTY; without even the implied warranty of
1818 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1819 * GNU General Public License for more details.
1821 * You should have received a copy of the GNU General Public License
1822 * along with this program. If not, see <http://www.gnu.org/licenses/>.
1824 ************************************************************************/
1826 #include <string.h>
1827 #include "SCDoc.h"
1828 #include "SCDoc.tab.hpp"
1830 int scdoc_start_token = 0;
1831 //int colnum;
1832 //#define YY_USER_ACTION { scdoclloc.first_column = colnum; colnum=colnum+scdocleng; scdoclloc.last_column=colnum; if(scdoclloc.first_line!=scdoclineno) colnum=1; scdoclloc.first_line = scdoclloc.last_line = scdoclineno;}
1834 static int method_caller;
1836 #define YY_NO_UNISTD_H 1
1844 #line 1845 "lex.scdoc.cpp"
1846 #define INITIAL 0
1847 #define verbatim 1
1848 #define verbatim2 2
1849 #define metadata 3
1850 #define eat 4
1851 #define eat2 5
1852 #define eat3 6
1853 #define method 7
1855 #ifndef YY_NO_UNISTD_H
1856 /* Special case for "unistd.h", since it is non-ANSI. We include it way
1857 * down here because we want the user's section 1 to have been scanned first.
1858 * The user has a chance to override it with an option.
1860 #include <unistd.h>
1861 #endif
1863 #ifndef YY_EXTRA_TYPE
1864 #define YY_EXTRA_TYPE void *
1865 #endif
1867 static int yy_init_globals (void );
1869 /* Accessor methods to globals.
1870 These are made visible to non-reentrant scanners for convenience. */
1872 int scdoclex_destroy (void );
1874 int scdocget_debug (void );
1876 void scdocset_debug (int debug_flag );
1878 YY_EXTRA_TYPE scdocget_extra (void );
1880 void scdocset_extra (YY_EXTRA_TYPE user_defined );
1882 FILE *scdocget_in (void );
1884 void scdocset_in (FILE * in_str );
1886 FILE *scdocget_out (void );
1888 void scdocset_out (FILE * out_str );
1890 int scdocget_leng (void );
1892 char *scdocget_text (void );
1894 int scdocget_lineno (void );
1896 void scdocset_lineno (int line_number );
1898 /* Macros after this point can all be overridden by user definitions in
1899 * section 1.
1902 #ifndef YY_SKIP_YYWRAP
1903 #ifdef __cplusplus
1904 extern "C" int scdocwrap (void );
1905 #else
1906 extern int scdocwrap (void );
1907 #endif
1908 #endif
1910 static void yyunput (int c,char *buf_ptr );
1912 #ifndef yytext_ptr
1913 static void yy_flex_strncpy (char *,yyconst char *,int );
1914 #endif
1916 #ifdef YY_NEED_STRLEN
1917 static int yy_flex_strlen (yyconst char * );
1918 #endif
1920 #ifndef YY_NO_INPUT
1922 #ifdef __cplusplus
1923 static int yyinput (void );
1924 #else
1925 static int input (void );
1926 #endif
1928 #endif
1930 /* Amount of stuff to slurp up with each read. */
1931 #ifndef YY_READ_BUF_SIZE
1932 #ifdef __ia64__
1933 /* On IA-64, the buffer size is 16k, not 8k */
1934 #define YY_READ_BUF_SIZE 16384
1935 #else
1936 #define YY_READ_BUF_SIZE 8192
1937 #endif /* __ia64__ */
1938 #endif
1940 /* Copy whatever the last rule matched to the standard output. */
1941 #ifndef ECHO
1942 /* This used to be an fputs(), but since the string might contain NUL's,
1943 * we now use fwrite().
1945 #define ECHO do { if (fwrite( scdoctext, scdocleng, 1, scdocout )) {} } while (0)
1946 #endif
1948 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1949 * is returned in "result".
1951 #ifndef YY_INPUT
1952 #define YY_INPUT(buf,result,max_size) \
1953 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1955 int c = '*'; \
1956 size_t n; \
1957 for ( n = 0; n < max_size && \
1958 (c = getc( scdocin )) != EOF && c != '\n'; ++n ) \
1959 buf[n] = (char) c; \
1960 if ( c == '\n' ) \
1961 buf[n++] = (char) c; \
1962 if ( c == EOF && ferror( scdocin ) ) \
1963 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1964 result = n; \
1966 else \
1968 errno=0; \
1969 while ( (result = fread(buf, 1, max_size, scdocin))==0 && ferror(scdocin)) \
1971 if( errno != EINTR) \
1973 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1974 break; \
1976 errno=0; \
1977 clearerr(scdocin); \
1982 #endif
1984 /* No semi-colon after return; correct usage is to write "yyterminate();" -
1985 * we don't want an extra ';' after the "return" because that will cause
1986 * some compilers to complain about unreachable statements.
1988 #ifndef yyterminate
1989 #define yyterminate() return YY_NULL
1990 #endif
1992 /* Number of entries by which start-condition stack grows. */
1993 #ifndef YY_START_STACK_INCR
1994 #define YY_START_STACK_INCR 25
1995 #endif
1997 /* Report a fatal error. */
1998 #ifndef YY_FATAL_ERROR
1999 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2000 #endif
2002 /* end tables serialization structures and prototypes */
2004 /* Default declaration of generated scanner - a define so the user can
2005 * easily add parameters.
2007 #ifndef YY_DECL
2008 #define YY_DECL_IS_OURS 1
2010 extern int scdoclex (void);
2012 #define YY_DECL int scdoclex (void)
2013 #endif /* !YY_DECL */
2015 /* Code executed at the beginning of each rule, after scdoctext and scdocleng
2016 * have been set up.
2018 #ifndef YY_USER_ACTION
2019 #define YY_USER_ACTION
2020 #endif
2022 /* Code executed at the end of each rule. */
2023 #ifndef YY_BREAK
2024 #define YY_BREAK break;
2025 #endif
2027 #define YY_RULE_SETUP \
2028 YY_USER_ACTION
2030 /** The main scanner function which does all the work.
2032 YY_DECL
2034 register yy_state_type yy_current_state;
2035 register char *yy_cp, *yy_bp;
2036 register int yy_act;
2038 #line 45 "SCDoc.l"
2043 if (scdoc_start_token) {
2044 int t = scdoc_start_token;
2045 scdoc_start_token = 0;
2046 // colnum = 1;
2047 if(t==START_METADATA) BEGIN(eat);
2048 return t;
2053 #line 2054 "lex.scdoc.cpp"
2055 if ( !(yy_init) )
2057 (yy_init) = 1;
2059 #ifdef YY_USER_INIT
2060 YY_USER_INIT;
2061 #endif
2063 if ( ! (yy_start) )
2064 (yy_start) = 1; /* first start state */
2066 if ( ! scdocin )
2067 scdocin = stdin;
2069 if ( ! scdocout )
2070 scdocout = stdout;
2072 if ( ! YY_CURRENT_BUFFER ) {
2073 scdocensure_buffer_stack ();
2074 YY_CURRENT_BUFFER_LVALUE =
2075 scdoc_create_buffer(scdocin,YY_BUF_SIZE );
2078 scdoc_load_buffer_state( );
2081 while ( 1 ) /* loops until end-of-file is reached */
2083 yy_cp = (yy_c_buf_p);
2085 /* Support of scdoctext. */
2086 *yy_cp = (yy_hold_char);
2088 /* yy_bp points to the position in yy_ch_buf of the start of
2089 * the current run.
2091 yy_bp = yy_cp;
2093 yy_current_state = (yy_start);
2094 yy_match:
2097 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
2098 if ( yy_accept[yy_current_state] )
2100 (yy_last_accepting_state) = yy_current_state;
2101 (yy_last_accepting_cpos) = yy_cp;
2103 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2105 yy_current_state = (int) yy_def[yy_current_state];
2106 if ( yy_current_state >= 1261 )
2107 yy_c = yy_meta[(unsigned int) yy_c];
2109 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2110 ++yy_cp;
2112 while ( yy_current_state != 1260 );
2113 yy_cp = (yy_last_accepting_cpos);
2114 yy_current_state = (yy_last_accepting_state);
2116 yy_find_action:
2117 yy_act = yy_accept[yy_current_state];
2119 YY_DO_BEFORE_ACTION;
2121 if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
2123 int yyl;
2124 for ( yyl = 0; yyl < scdocleng; ++yyl )
2125 if ( scdoctext[yyl] == '\n' )
2127 scdoclineno++;
2131 do_action: /* This label is used only to access EOF actions. */
2133 switch ( yy_act )
2134 { /* beginning of action switch */
2135 case 0: /* must back up */
2136 /* undo the effects of YY_DO_BEFORE_ACTION */
2137 *yy_cp = (yy_hold_char);
2138 yy_cp = (yy_last_accepting_cpos);
2139 yy_current_state = (yy_last_accepting_state);
2140 goto yy_find_action;
2142 case 1:
2143 YY_RULE_SETUP
2144 #line 59 "SCDoc.l"
2145 return CLASS;
2146 YY_BREAK
2147 case 2:
2148 YY_RULE_SETUP
2149 #line 60 "SCDoc.l"
2150 return TITLE;
2151 YY_BREAK
2152 case 3:
2153 YY_RULE_SETUP
2154 #line 61 "SCDoc.l"
2155 return SUMMARY;
2156 YY_BREAK
2157 case 4:
2158 YY_RULE_SETUP
2159 #line 62 "SCDoc.l"
2160 return RELATED;
2161 YY_BREAK
2162 case 5:
2163 YY_RULE_SETUP
2164 #line 63 "SCDoc.l"
2165 return CATEGORIES;
2166 YY_BREAK
2167 case 6:
2168 YY_RULE_SETUP
2169 #line 64 "SCDoc.l"
2170 return REDIRECT;
2171 YY_BREAK
2172 case 7:
2173 YY_RULE_SETUP
2174 #line 66 "SCDoc.l"
2175 return CLASSTREE;
2176 YY_BREAK
2177 case 8:
2178 YY_RULE_SETUP
2179 #line 67 "SCDoc.l"
2180 return KEYWORD;
2181 YY_BREAK
2182 case 9:
2183 YY_RULE_SETUP
2184 #line 69 "SCDoc.l"
2185 return PRIVATE;
2186 YY_BREAK
2187 case 10:
2188 YY_RULE_SETUP
2189 #line 70 "SCDoc.l"
2190 return SECTION;
2191 YY_BREAK
2192 case 11:
2193 YY_RULE_SETUP
2194 #line 71 "SCDoc.l"
2195 return SUBSECTION;
2196 YY_BREAK
2197 case 12:
2198 YY_RULE_SETUP
2199 #line 72 "SCDoc.l"
2200 return COPYMETHOD;
2201 YY_BREAK
2202 case 13:
2203 YY_RULE_SETUP
2204 #line 73 "SCDoc.l"
2205 method_caller = YY_START; BEGIN(method); return METHOD;
2206 YY_BREAK
2207 case 14:
2208 YY_RULE_SETUP
2209 #line 74 "SCDoc.l"
2210 return ARGUMENT;
2211 YY_BREAK
2212 case 15:
2213 /* rule 15 can match eol */
2214 YY_RULE_SETUP
2215 #line 76 "SCDoc.l"
2216 return DESCRIPTION;
2217 YY_BREAK
2218 case 16:
2219 /* rule 16 can match eol */
2220 YY_RULE_SETUP
2221 #line 77 "SCDoc.l"
2222 return CLASSMETHODS;
2223 YY_BREAK
2224 case 17:
2225 /* rule 17 can match eol */
2226 YY_RULE_SETUP
2227 #line 78 "SCDoc.l"
2228 return INSTANCEMETHODS;
2229 YY_BREAK
2230 case 18:
2231 /* rule 18 can match eol */
2232 YY_RULE_SETUP
2233 #line 79 "SCDoc.l"
2234 return EXAMPLES;
2235 YY_BREAK
2236 case 19:
2237 /* rule 19 can match eol */
2238 YY_RULE_SETUP
2239 #line 81 "SCDoc.l"
2240 return RETURNS;
2241 YY_BREAK
2242 case 20:
2243 /* rule 20 can match eol */
2244 YY_RULE_SETUP
2245 #line 82 "SCDoc.l"
2246 return DISCUSSION;
2247 YY_BREAK
2248 case 21:
2249 /* rule 21 can match eol */
2250 YY_RULE_SETUP
2251 #line 84 "SCDoc.l"
2252 return LIST;
2253 YY_BREAK
2254 case 22:
2255 /* rule 22 can match eol */
2256 YY_RULE_SETUP
2257 #line 85 "SCDoc.l"
2258 return TREE;
2259 YY_BREAK
2260 case 23:
2261 /* rule 23 can match eol */
2262 YY_RULE_SETUP
2263 #line 86 "SCDoc.l"
2264 return NUMBEREDLIST;
2265 YY_BREAK
2266 case 24:
2267 /* rule 24 can match eol */
2268 YY_RULE_SETUP
2269 #line 87 "SCDoc.l"
2270 return DEFINITIONLIST;
2271 YY_BREAK
2272 case 25:
2273 /* rule 25 can match eol */
2274 YY_RULE_SETUP
2275 #line 88 "SCDoc.l"
2276 return TABLE;
2277 YY_BREAK
2278 case 26:
2279 /* rule 26 can match eol */
2280 YY_RULE_SETUP
2281 #line 89 "SCDoc.l"
2282 return FOOTNOTE;
2283 YY_BREAK
2284 case 27:
2285 /* rule 27 can match eol */
2286 YY_RULE_SETUP
2287 #line 90 "SCDoc.l"
2288 return WARNING;
2289 YY_BREAK
2290 case 28:
2291 /* rule 28 can match eol */
2292 YY_RULE_SETUP
2293 #line 91 "SCDoc.l"
2294 return NOTE;
2295 YY_BREAK
2296 case 29:
2297 YY_RULE_SETUP
2298 #line 93 "SCDoc.l"
2299 BEGIN(verbatim); return LINK;
2300 YY_BREAK
2301 case 30:
2302 YY_RULE_SETUP
2303 #line 94 "SCDoc.l"
2304 BEGIN(verbatim); return ANCHOR;
2305 YY_BREAK
2306 case 31:
2307 YY_RULE_SETUP
2308 #line 95 "SCDoc.l"
2309 BEGIN(verbatim); return IMAGE;
2310 YY_BREAK
2311 case 32:
2312 /* rule 32 can match eol */
2313 YY_RULE_SETUP
2314 #line 96 "SCDoc.l"
2315 BEGIN(verbatim); return SOFT;
2316 YY_BREAK
2317 case 33:
2318 /* rule 33 can match eol */
2319 YY_RULE_SETUP
2320 #line 97 "SCDoc.l"
2321 BEGIN(verbatim); return STRONG;
2322 YY_BREAK
2323 case 34:
2324 /* rule 34 can match eol */
2325 YY_RULE_SETUP
2326 #line 98 "SCDoc.l"
2327 BEGIN(verbatim); return EMPHASIS;
2328 YY_BREAK
2329 case 35:
2330 YY_RULE_SETUP
2331 #line 99 "SCDoc.l"
2332 BEGIN(verbatim); return CODE;
2333 YY_BREAK
2334 case 36:
2335 YY_RULE_SETUP
2336 #line 100 "SCDoc.l"
2337 BEGIN(verbatim); return TELETYPE;
2338 YY_BREAK
2339 case 37:
2340 YY_RULE_SETUP
2341 #line 101 "SCDoc.l"
2342 BEGIN(verbatim); return MATH;
2343 YY_BREAK
2344 case 38:
2345 /* rule 38 can match eol */
2346 YY_RULE_SETUP
2347 #line 103 "SCDoc.l"
2348 BEGIN(verbatim2); return CODEBLOCK;
2349 YY_BREAK
2350 case 39:
2351 /* rule 39 can match eol */
2352 YY_RULE_SETUP
2353 #line 104 "SCDoc.l"
2354 BEGIN(verbatim2); return TELETYPEBLOCK;
2355 YY_BREAK
2356 case 40:
2357 /* rule 40 can match eol */
2358 YY_RULE_SETUP
2359 #line 105 "SCDoc.l"
2360 BEGIN(verbatim2); return MATHBLOCK;
2361 YY_BREAK
2362 case 41:
2363 /* rule 41 can match eol */
2364 YY_RULE_SETUP
2365 #line 107 "SCDoc.l"
2366 BEGIN(0); return TAGSYM;
2367 YY_BREAK
2368 case 42:
2369 /* rule 42 can match eol */
2370 YY_RULE_SETUP
2371 #line 108 "SCDoc.l"
2372 BEGIN(0); return TAGSYM;
2373 YY_BREAK
2374 case 43:
2375 /* rule 43 can match eol */
2376 YY_RULE_SETUP
2377 #line 109 "SCDoc.l"
2378 scdoclval.str = strdup("\n::"); return TEXT;
2379 YY_BREAK
2380 case 44:
2381 /* rule 44 can match eol */
2382 YY_RULE_SETUP
2383 #line 110 "SCDoc.l"
2384 return BARS;
2385 YY_BREAK
2386 case 45:
2387 /* rule 45 can match eol */
2388 YY_RULE_SETUP
2389 #line 111 "SCDoc.l"
2390 return HASHES;
2391 YY_BREAK
2392 case 46:
2393 /* rule 46 can match eol */
2394 YY_RULE_SETUP
2395 #line 113 "SCDoc.l"
2396 scdoclval.str = strdup("\n"); return TEXT;
2397 YY_BREAK
2398 case 47:
2399 /* rule 47 can match eol */
2400 YY_RULE_SETUP
2401 #line 114 "SCDoc.l"
2402 scdoclval.str = strdup(" "); return TEXT;
2403 YY_BREAK
2404 case 48:
2405 /* rule 48 can match eol */
2406 YY_RULE_SETUP
2407 #line 115 "SCDoc.l"
2408 return NEWLINE;
2409 YY_BREAK
2410 case 49:
2411 /* rule 49 can match eol */
2412 YY_RULE_SETUP
2413 #line 116 "SCDoc.l"
2414 return EMPTYLINES;
2415 YY_BREAK
2416 case 50:
2417 YY_RULE_SETUP
2418 #line 118 "SCDoc.l"
2419 scdoclval.str = strdup(scdoctext); return COMMA;
2420 YY_BREAK
2421 case 51:
2422 YY_RULE_SETUP
2423 #line 120 "SCDoc.l"
2424 scdoclval.str = strdup("||"); return TEXT;
2425 YY_BREAK
2426 case 52:
2427 YY_RULE_SETUP
2428 #line 121 "SCDoc.l"
2429 scdoclval.str = strdup("##"); return TEXT;
2430 YY_BREAK
2431 case 53:
2432 YY_RULE_SETUP
2433 #line 122 "SCDoc.l"
2434 scdoclval.str = strdup("::"); return TEXT;
2435 YY_BREAK
2436 case 54:
2437 YY_RULE_SETUP
2438 #line 123 "SCDoc.l"
2439 scdoclval.str = strdup(" "); return TEXT;
2440 YY_BREAK
2441 case 55:
2442 YY_RULE_SETUP
2443 #line 124 "SCDoc.l"
2444 scdoclval.str = strdup(" "); return TEXT;
2445 YY_BREAK
2446 case 56:
2447 YY_RULE_SETUP
2448 #line 126 "SCDoc.l"
2449 /* eat this */
2450 YY_BREAK
2451 case 57:
2452 YY_RULE_SETUP
2453 #line 128 "SCDoc.l"
2454 scdoclval.str = strdup(scdoctext); return URL;
2455 YY_BREAK
2456 case 58:
2457 YY_RULE_SETUP
2458 #line 129 "SCDoc.l"
2459 scdoclval.str = strdup(scdoctext); return METHODNAME;
2460 YY_BREAK
2461 case 59:
2462 /* rule 59 can match eol */
2463 YY_RULE_SETUP
2464 #line 130 "SCDoc.l"
2465 scdoclval.str = strdup(scdoctext); return METHODARGS;
2466 YY_BREAK
2467 case 60:
2468 YY_RULE_SETUP
2469 #line 131 "SCDoc.l"
2470 /* eat this */
2471 YY_BREAK
2472 case 61:
2473 /* rule 61 can match eol */
2474 YY_RULE_SETUP
2475 #line 132 "SCDoc.l"
2476 BEGIN(method_caller); return NEWLINE;
2477 YY_BREAK
2478 case 62:
2479 YY_RULE_SETUP
2480 #line 133 "SCDoc.l"
2481 return BAD_METHODNAME;
2482 YY_BREAK
2483 case 63:
2484 #line 136 "SCDoc.l"
2485 case 64:
2486 #line 137 "SCDoc.l"
2487 case 65:
2488 #line 138 "SCDoc.l"
2489 case 66:
2490 #line 139 "SCDoc.l"
2491 case 67:
2492 YY_RULE_SETUP
2493 #line 139 "SCDoc.l"
2494 scdoclval.str = strdup(scdoctext); return TEXT;
2495 YY_BREAK
2496 case 68:
2497 YY_RULE_SETUP
2498 #line 141 "SCDoc.l"
2499 BEGIN(metadata); return CLASS;
2500 YY_BREAK
2501 case 69:
2502 YY_RULE_SETUP
2503 #line 142 "SCDoc.l"
2504 BEGIN(metadata); return TITLE;
2505 YY_BREAK
2506 case 70:
2507 YY_RULE_SETUP
2508 #line 143 "SCDoc.l"
2509 BEGIN(metadata); return SUMMARY;
2510 YY_BREAK
2511 case 71:
2512 YY_RULE_SETUP
2513 #line 144 "SCDoc.l"
2514 BEGIN(metadata); return RELATED;
2515 YY_BREAK
2516 case 72:
2517 YY_RULE_SETUP
2518 #line 145 "SCDoc.l"
2519 BEGIN(metadata); return CATEGORIES;
2520 YY_BREAK
2521 case 73:
2522 YY_RULE_SETUP
2523 #line 146 "SCDoc.l"
2524 BEGIN(metadata); return REDIRECT;
2525 YY_BREAK
2526 case 74:
2527 YY_RULE_SETUP
2528 #line 147 "SCDoc.l"
2529 BEGIN(metadata); return CLASSTREE;
2530 YY_BREAK
2531 case 75:
2532 YY_RULE_SETUP
2533 #line 148 "SCDoc.l"
2534 BEGIN(metadata); return KEYWORD;
2535 YY_BREAK
2536 case 76:
2537 YY_RULE_SETUP
2538 #line 149 "SCDoc.l"
2539 BEGIN(metadata); return PRIVATE;
2540 YY_BREAK
2541 case 77:
2542 YY_RULE_SETUP
2543 #line 150 "SCDoc.l"
2544 BEGIN(metadata); return SECTION;
2545 YY_BREAK
2546 case 78:
2547 YY_RULE_SETUP
2548 #line 151 "SCDoc.l"
2549 BEGIN(metadata); return SUBSECTION;
2550 YY_BREAK
2551 case 79:
2552 YY_RULE_SETUP
2553 #line 152 "SCDoc.l"
2554 BEGIN(metadata); return COPYMETHOD;
2555 YY_BREAK
2556 case 80:
2557 YY_RULE_SETUP
2558 #line 153 "SCDoc.l"
2559 method_caller = YY_START; BEGIN(method); return METHOD;
2560 YY_BREAK
2561 case 81:
2562 /* rule 81 can match eol */
2563 YY_RULE_SETUP
2564 #line 154 "SCDoc.l"
2565 BEGIN(eat); return DESCRIPTION;
2566 YY_BREAK
2567 case 82:
2568 /* rule 82 can match eol */
2569 YY_RULE_SETUP
2570 #line 155 "SCDoc.l"
2571 BEGIN(eat); return CLASSMETHODS;
2572 YY_BREAK
2573 case 83:
2574 /* rule 83 can match eol */
2575 YY_RULE_SETUP
2576 #line 156 "SCDoc.l"
2577 BEGIN(eat); return INSTANCEMETHODS;
2578 YY_BREAK
2579 case 84:
2580 /* rule 84 can match eol */
2581 YY_RULE_SETUP
2582 #line 157 "SCDoc.l"
2583 BEGIN(eat); return EXAMPLES;
2584 YY_BREAK
2585 case 85:
2586 /* rule 85 can match eol */
2587 YY_RULE_SETUP
2588 #line 158 "SCDoc.l"
2589 BEGIN(eat); return NEWLINE;
2590 YY_BREAK
2591 case 86:
2592 YY_RULE_SETUP
2593 #line 159 "SCDoc.l"
2594 scdoclval.str = strdup(scdoctext); return COMMA;
2595 YY_BREAK
2596 case 87:
2597 #line 161 "SCDoc.l"
2598 case 88:
2599 #line 162 "SCDoc.l"
2600 case 89:
2601 #line 163 "SCDoc.l"
2602 case 90:
2603 YY_RULE_SETUP
2604 #line 163 "SCDoc.l"
2605 scdoclval.str = strdup(scdoctext); return TEXT;
2606 YY_BREAK
2607 case 91:
2608 YY_RULE_SETUP
2609 #line 164 "SCDoc.l"
2610 scdoclval.str = strdup("::"); return TEXT;
2611 YY_BREAK
2612 case 92:
2613 YY_RULE_SETUP
2614 #line 165 "SCDoc.l"
2615 BEGIN(eat2);
2616 YY_BREAK
2617 case 93:
2618 YY_RULE_SETUP
2619 #line 166 "SCDoc.l"
2620 BEGIN(eat2);
2621 YY_BREAK
2622 case 94:
2623 YY_RULE_SETUP
2624 #line 167 "SCDoc.l"
2625 BEGIN(eat2);
2626 YY_BREAK
2627 case 95:
2628 /* rule 95 can match eol */
2629 YY_RULE_SETUP
2630 #line 168 "SCDoc.l"
2631 BEGIN(eat2);
2632 YY_BREAK
2633 case 96:
2634 /* rule 96 can match eol */
2635 YY_RULE_SETUP
2636 #line 169 "SCDoc.l"
2637 BEGIN(eat2);
2638 YY_BREAK
2639 case 97:
2640 /* rule 97 can match eol */
2641 YY_RULE_SETUP
2642 #line 170 "SCDoc.l"
2643 BEGIN(eat2);
2644 YY_BREAK
2645 case 98:
2646 YY_RULE_SETUP
2647 #line 171 "SCDoc.l"
2648 BEGIN(eat2);
2649 YY_BREAK
2650 case 99:
2651 YY_RULE_SETUP
2652 #line 172 "SCDoc.l"
2653 BEGIN(eat2);
2654 YY_BREAK
2655 case 100:
2656 YY_RULE_SETUP
2657 #line 173 "SCDoc.l"
2658 BEGIN(eat2);
2659 YY_BREAK
2660 case 101:
2661 /* rule 101 can match eol */
2662 YY_RULE_SETUP
2663 #line 174 "SCDoc.l"
2664 BEGIN(eat3);
2665 YY_BREAK
2666 case 102:
2667 /* rule 102 can match eol */
2668 YY_RULE_SETUP
2669 #line 175 "SCDoc.l"
2670 BEGIN(eat3);
2671 YY_BREAK
2672 case 103:
2673 /* rule 103 can match eol */
2674 YY_RULE_SETUP
2675 #line 176 "SCDoc.l"
2676 BEGIN(eat3);
2677 YY_BREAK
2678 case 104:
2679 /* rule 104 can match eol */
2680 YY_RULE_SETUP
2681 #line 177 "SCDoc.l"
2682 BEGIN(eat);
2683 YY_BREAK
2684 case 105:
2685 /* rule 105 can match eol */
2686 YY_RULE_SETUP
2687 #line 178 "SCDoc.l"
2688 BEGIN(eat);
2689 YY_BREAK
2690 case 106:
2691 /* rule 106 can match eol */
2692 YY_RULE_SETUP
2693 #line 179 "SCDoc.l"
2694 /* empty */
2695 YY_BREAK
2696 case 107:
2697 YY_RULE_SETUP
2698 #line 180 "SCDoc.l"
2699 ECHO;
2700 YY_BREAK
2701 #line 2702 "lex.scdoc.cpp"
2702 case YY_STATE_EOF(INITIAL):
2703 case YY_STATE_EOF(verbatim):
2704 case YY_STATE_EOF(verbatim2):
2705 case YY_STATE_EOF(metadata):
2706 case YY_STATE_EOF(eat):
2707 case YY_STATE_EOF(eat2):
2708 case YY_STATE_EOF(eat3):
2709 case YY_STATE_EOF(method):
2710 yyterminate();
2712 case YY_END_OF_BUFFER:
2714 /* Amount of text matched not including the EOB char. */
2715 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
2717 /* Undo the effects of YY_DO_BEFORE_ACTION. */
2718 *yy_cp = (yy_hold_char);
2719 YY_RESTORE_YY_MORE_OFFSET
2721 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
2723 /* We're scanning a new file or input source. It's
2724 * possible that this happened because the user
2725 * just pointed scdocin at a new source and called
2726 * scdoclex(). If so, then we have to assure
2727 * consistency between YY_CURRENT_BUFFER and our
2728 * globals. Here is the right place to do so, because
2729 * this is the first action (other than possibly a
2730 * back-up) that will match for the new input source.
2732 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2733 YY_CURRENT_BUFFER_LVALUE->yy_input_file = scdocin;
2734 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
2737 /* Note that here we test for yy_c_buf_p "<=" to the position
2738 * of the first EOB in the buffer, since yy_c_buf_p will
2739 * already have been incremented past the NUL character
2740 * (since all states make transitions on EOB to the
2741 * end-of-buffer state). Contrast this with the test
2742 * in input().
2744 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2745 { /* This was really a NUL. */
2746 yy_state_type yy_next_state;
2748 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
2750 yy_current_state = yy_get_previous_state( );
2752 /* Okay, we're now positioned to make the NUL
2753 * transition. We couldn't have
2754 * yy_get_previous_state() go ahead and do it
2755 * for us because it doesn't know how to deal
2756 * with the possibility of jamming (and we don't
2757 * want to build jamming into it because then it
2758 * will run more slowly).
2761 yy_next_state = yy_try_NUL_trans( yy_current_state );
2763 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2765 if ( yy_next_state )
2767 /* Consume the NUL. */
2768 yy_cp = ++(yy_c_buf_p);
2769 yy_current_state = yy_next_state;
2770 goto yy_match;
2773 else
2775 yy_cp = (yy_last_accepting_cpos);
2776 yy_current_state = (yy_last_accepting_state);
2777 goto yy_find_action;
2781 else switch ( yy_get_next_buffer( ) )
2783 case EOB_ACT_END_OF_FILE:
2785 (yy_did_buffer_switch_on_eof) = 0;
2787 if ( scdocwrap( ) )
2789 /* Note: because we've taken care in
2790 * yy_get_next_buffer() to have set up
2791 * scdoctext, we can now set up
2792 * yy_c_buf_p so that if some total
2793 * hoser (like flex itself) wants to
2794 * call the scanner after we return the
2795 * YY_NULL, it'll still work - another
2796 * YY_NULL will get returned.
2798 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
2800 yy_act = YY_STATE_EOF(YY_START);
2801 goto do_action;
2804 else
2806 if ( ! (yy_did_buffer_switch_on_eof) )
2807 YY_NEW_FILE;
2809 break;
2812 case EOB_ACT_CONTINUE_SCAN:
2813 (yy_c_buf_p) =
2814 (yytext_ptr) + yy_amount_of_matched_text;
2816 yy_current_state = yy_get_previous_state( );
2818 yy_cp = (yy_c_buf_p);
2819 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2820 goto yy_match;
2822 case EOB_ACT_LAST_MATCH:
2823 (yy_c_buf_p) =
2824 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
2826 yy_current_state = yy_get_previous_state( );
2828 yy_cp = (yy_c_buf_p);
2829 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2830 goto yy_find_action;
2832 break;
2835 default:
2836 YY_FATAL_ERROR(
2837 "fatal flex scanner internal error--no action found" );
2838 } /* end of action switch */
2839 } /* end of scanning one token */
2840 } /* end of scdoclex */
2842 /* yy_get_next_buffer - try to read in a new buffer
2844 * Returns a code representing an action:
2845 * EOB_ACT_LAST_MATCH -
2846 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2847 * EOB_ACT_END_OF_FILE - end of file
2849 static int yy_get_next_buffer (void)
2851 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2852 register char *source = (yytext_ptr);
2853 register int number_to_move, i;
2854 int ret_val;
2856 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
2857 YY_FATAL_ERROR(
2858 "fatal flex scanner internal error--end of buffer missed" );
2860 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2861 { /* Don't try to fill the buffer, so this is an EOF. */
2862 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
2864 /* We matched a single character, the EOB, so
2865 * treat this as a final EOF.
2867 return EOB_ACT_END_OF_FILE;
2870 else
2872 /* We matched some text prior to the EOB, first
2873 * process it.
2875 return EOB_ACT_LAST_MATCH;
2879 /* Try to read more data. */
2881 /* First move last chars to start of buffer. */
2882 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
2884 for ( i = 0; i < number_to_move; ++i )
2885 *(dest++) = *(source++);
2887 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2888 /* don't do the read, it's not guaranteed to return an EOF,
2889 * just force an EOF
2891 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
2893 else
2895 int num_to_read =
2896 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2898 while ( num_to_read <= 0 )
2899 { /* Not enough room in the buffer - grow it. */
2901 /* just a shorter name for the current buffer */
2902 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
2904 int yy_c_buf_p_offset =
2905 (int) ((yy_c_buf_p) - b->yy_ch_buf);
2907 if ( b->yy_is_our_buffer )
2909 int new_size = b->yy_buf_size * 2;
2911 if ( new_size <= 0 )
2912 b->yy_buf_size += b->yy_buf_size / 8;
2913 else
2914 b->yy_buf_size *= 2;
2916 b->yy_ch_buf = (char *)
2917 /* Include room in for 2 EOB chars. */
2918 scdocrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
2920 else
2921 /* Can't grow it, we don't own it. */
2922 b->yy_ch_buf = 0;
2924 if ( ! b->yy_ch_buf )
2925 YY_FATAL_ERROR(
2926 "fatal error - scanner input buffer overflow" );
2928 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
2930 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
2931 number_to_move - 1;
2935 if ( num_to_read > YY_READ_BUF_SIZE )
2936 num_to_read = YY_READ_BUF_SIZE;
2938 /* Read in more data. */
2939 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2940 (yy_n_chars), (size_t) num_to_read );
2942 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2945 if ( (yy_n_chars) == 0 )
2947 if ( number_to_move == YY_MORE_ADJ )
2949 ret_val = EOB_ACT_END_OF_FILE;
2950 scdocrestart(scdocin );
2953 else
2955 ret_val = EOB_ACT_LAST_MATCH;
2956 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2957 YY_BUFFER_EOF_PENDING;
2961 else
2962 ret_val = EOB_ACT_CONTINUE_SCAN;
2964 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
2965 /* Extend the array by 50%, plus the number we really need. */
2966 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
2967 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) scdocrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
2968 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2969 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
2972 (yy_n_chars) += number_to_move;
2973 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
2974 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
2976 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2978 return ret_val;
2981 /* yy_get_previous_state - get the state just before the EOB char was reached */
2983 static yy_state_type yy_get_previous_state (void)
2985 register yy_state_type yy_current_state;
2986 register char *yy_cp;
2988 yy_current_state = (yy_start);
2990 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
2992 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2993 if ( yy_accept[yy_current_state] )
2995 (yy_last_accepting_state) = yy_current_state;
2996 (yy_last_accepting_cpos) = yy_cp;
2998 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3000 yy_current_state = (int) yy_def[yy_current_state];
3001 if ( yy_current_state >= 1261 )
3002 yy_c = yy_meta[(unsigned int) yy_c];
3004 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3007 return yy_current_state;
3010 /* yy_try_NUL_trans - try to make a transition on the NUL character
3012 * synopsis
3013 * next_state = yy_try_NUL_trans( current_state );
3015 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
3017 register int yy_is_jam;
3018 register char *yy_cp = (yy_c_buf_p);
3020 register YY_CHAR yy_c = 1;
3021 if ( yy_accept[yy_current_state] )
3023 (yy_last_accepting_state) = yy_current_state;
3024 (yy_last_accepting_cpos) = yy_cp;
3026 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3028 yy_current_state = (int) yy_def[yy_current_state];
3029 if ( yy_current_state >= 1261 )
3030 yy_c = yy_meta[(unsigned int) yy_c];
3032 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3033 yy_is_jam = (yy_current_state == 1260);
3035 return yy_is_jam ? 0 : yy_current_state;
3038 static void yyunput (int c, register char * yy_bp )
3040 register char *yy_cp;
3042 yy_cp = (yy_c_buf_p);
3044 /* undo effects of setting up scdoctext */
3045 *yy_cp = (yy_hold_char);
3047 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
3048 { /* need to shift things up to make room */
3049 /* +2 for EOB chars. */
3050 register int number_to_move = (yy_n_chars) + 2;
3051 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
3052 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
3053 register char *source =
3054 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
3056 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
3057 *--dest = *--source;
3059 yy_cp += (int) (dest - source);
3060 yy_bp += (int) (dest - source);
3061 YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
3062 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
3064 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
3065 YY_FATAL_ERROR( "flex scanner push-back overflow" );
3068 *--yy_cp = (char) c;
3070 if ( c == '\n' ){
3071 --scdoclineno;
3074 (yytext_ptr) = yy_bp;
3075 (yy_hold_char) = *yy_cp;
3076 (yy_c_buf_p) = yy_cp;
3079 #ifndef YY_NO_INPUT
3080 #ifdef __cplusplus
3081 static int yyinput (void)
3082 #else
3083 static int input (void)
3084 #endif
3087 int c;
3089 *(yy_c_buf_p) = (yy_hold_char);
3091 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
3093 /* yy_c_buf_p now points to the character we want to return.
3094 * If this occurs *before* the EOB characters, then it's a
3095 * valid NUL; if not, then we've hit the end of the buffer.
3097 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3098 /* This was really a NUL. */
3099 *(yy_c_buf_p) = '\0';
3101 else
3102 { /* need more input */
3103 int offset = (yy_c_buf_p) - (yytext_ptr);
3104 ++(yy_c_buf_p);
3106 switch ( yy_get_next_buffer( ) )
3108 case EOB_ACT_LAST_MATCH:
3109 /* This happens because yy_g_n_b()
3110 * sees that we've accumulated a
3111 * token and flags that we need to
3112 * try matching the token before
3113 * proceeding. But for input(),
3114 * there's no matching to consider.
3115 * So convert the EOB_ACT_LAST_MATCH
3116 * to EOB_ACT_END_OF_FILE.
3119 /* Reset buffer status. */
3120 scdocrestart(scdocin );
3122 /*FALLTHROUGH*/
3124 case EOB_ACT_END_OF_FILE:
3126 if ( scdocwrap( ) )
3127 return EOF;
3129 if ( ! (yy_did_buffer_switch_on_eof) )
3130 YY_NEW_FILE;
3131 #ifdef __cplusplus
3132 return yyinput();
3133 #else
3134 return input();
3135 #endif
3138 case EOB_ACT_CONTINUE_SCAN:
3139 (yy_c_buf_p) = (yytext_ptr) + offset;
3140 break;
3145 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
3146 *(yy_c_buf_p) = '\0'; /* preserve scdoctext */
3147 (yy_hold_char) = *++(yy_c_buf_p);
3149 if ( c == '\n' )
3151 scdoclineno++;
3154 return c;
3156 #endif /* ifndef YY_NO_INPUT */
3158 /** Immediately switch to a different input stream.
3159 * @param input_file A readable stream.
3161 * @note This function does not reset the start condition to @c INITIAL .
3163 void scdocrestart (FILE * input_file )
3166 if ( ! YY_CURRENT_BUFFER ){
3167 scdocensure_buffer_stack ();
3168 YY_CURRENT_BUFFER_LVALUE =
3169 scdoc_create_buffer(scdocin,YY_BUF_SIZE );
3172 scdoc_init_buffer(YY_CURRENT_BUFFER,input_file );
3173 scdoc_load_buffer_state( );
3176 /** Switch to a different input buffer.
3177 * @param new_buffer The new input buffer.
3180 void scdoc_switch_to_buffer (YY_BUFFER_STATE new_buffer )
3183 /* TODO. We should be able to replace this entire function body
3184 * with
3185 * scdocpop_buffer_state();
3186 * scdocpush_buffer_state(new_buffer);
3188 scdocensure_buffer_stack ();
3189 if ( YY_CURRENT_BUFFER == new_buffer )
3190 return;
3192 if ( YY_CURRENT_BUFFER )
3194 /* Flush out information for old buffer. */
3195 *(yy_c_buf_p) = (yy_hold_char);
3196 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3197 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3200 YY_CURRENT_BUFFER_LVALUE = new_buffer;
3201 scdoc_load_buffer_state( );
3203 /* We don't actually know whether we did this switch during
3204 * EOF (scdocwrap()) processing, but the only time this flag
3205 * is looked at is after scdocwrap() is called, so it's safe
3206 * to go ahead and always set it.
3208 (yy_did_buffer_switch_on_eof) = 1;
3211 static void scdoc_load_buffer_state (void)
3213 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3214 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
3215 scdocin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3216 (yy_hold_char) = *(yy_c_buf_p);
3219 /** Allocate and initialize an input buffer state.
3220 * @param file A readable stream.
3221 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
3223 * @return the allocated buffer state.
3225 YY_BUFFER_STATE scdoc_create_buffer (FILE * file, int size )
3227 YY_BUFFER_STATE b;
3229 b = (YY_BUFFER_STATE) scdocalloc(sizeof( struct yy_buffer_state ) );
3230 if ( ! b )
3231 YY_FATAL_ERROR( "out of dynamic memory in scdoc_create_buffer()" );
3233 b->yy_buf_size = size;
3235 /* yy_ch_buf has to be 2 characters longer than the size given because
3236 * we need to put in 2 end-of-buffer characters.
3238 b->yy_ch_buf = (char *) scdocalloc(b->yy_buf_size + 2 );
3239 if ( ! b->yy_ch_buf )
3240 YY_FATAL_ERROR( "out of dynamic memory in scdoc_create_buffer()" );
3242 b->yy_is_our_buffer = 1;
3244 scdoc_init_buffer(b,file );
3246 return b;
3249 /** Destroy the buffer.
3250 * @param b a buffer created with scdoc_create_buffer()
3253 void scdoc_delete_buffer (YY_BUFFER_STATE b )
3256 if ( ! b )
3257 return;
3259 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3260 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
3262 if ( b->yy_is_our_buffer )
3263 scdocfree((void *) b->yy_ch_buf );
3265 scdocfree((void *) b );
3268 /* Initializes or reinitializes a buffer.
3269 * This function is sometimes called more than once on the same buffer,
3270 * such as during a scdocrestart() or at EOF.
3272 static void scdoc_init_buffer (YY_BUFFER_STATE b, FILE * file )
3275 int oerrno = errno;
3277 scdoc_flush_buffer(b );
3279 b->yy_input_file = file;
3280 b->yy_fill_buffer = 1;
3282 /* If b is the current buffer, then scdoc_init_buffer was _probably_
3283 * called from scdocrestart() or through yy_get_next_buffer.
3284 * In that case, we don't want to reset the lineno or column.
3286 if (b != YY_CURRENT_BUFFER){
3287 b->yy_bs_lineno = 1;
3288 b->yy_bs_column = 0;
3291 b->yy_is_interactive = 0;
3293 errno = oerrno;
3296 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
3297 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
3300 void scdoc_flush_buffer (YY_BUFFER_STATE b )
3302 if ( ! b )
3303 return;
3305 b->yy_n_chars = 0;
3307 /* We always need two end-of-buffer characters. The first causes
3308 * a transition to the end-of-buffer state. The second causes
3309 * a jam in that state.
3311 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3312 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3314 b->yy_buf_pos = &b->yy_ch_buf[0];
3316 b->yy_at_bol = 1;
3317 b->yy_buffer_status = YY_BUFFER_NEW;
3319 if ( b == YY_CURRENT_BUFFER )
3320 scdoc_load_buffer_state( );
3323 /** Pushes the new state onto the stack. The new state becomes
3324 * the current state. This function will allocate the stack
3325 * if necessary.
3326 * @param new_buffer The new state.
3329 void scdocpush_buffer_state (YY_BUFFER_STATE new_buffer )
3331 if (new_buffer == NULL)
3332 return;
3334 scdocensure_buffer_stack();
3336 /* This block is copied from scdoc_switch_to_buffer. */
3337 if ( YY_CURRENT_BUFFER )
3339 /* Flush out information for old buffer. */
3340 *(yy_c_buf_p) = (yy_hold_char);
3341 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3342 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3345 /* Only push if top exists. Otherwise, replace top. */
3346 if (YY_CURRENT_BUFFER)
3347 (yy_buffer_stack_top)++;
3348 YY_CURRENT_BUFFER_LVALUE = new_buffer;
3350 /* copied from scdoc_switch_to_buffer. */
3351 scdoc_load_buffer_state( );
3352 (yy_did_buffer_switch_on_eof) = 1;
3355 /** Removes and deletes the top of the stack, if present.
3356 * The next element becomes the new top.
3359 void scdocpop_buffer_state (void)
3361 if (!YY_CURRENT_BUFFER)
3362 return;
3364 scdoc_delete_buffer(YY_CURRENT_BUFFER );
3365 YY_CURRENT_BUFFER_LVALUE = NULL;
3366 if ((yy_buffer_stack_top) > 0)
3367 --(yy_buffer_stack_top);
3369 if (YY_CURRENT_BUFFER) {
3370 scdoc_load_buffer_state( );
3371 (yy_did_buffer_switch_on_eof) = 1;
3375 /* Allocates the stack if it does not exist.
3376 * Guarantees space for at least one push.
3378 static void scdocensure_buffer_stack (void)
3380 int num_to_alloc;
3382 if (!(yy_buffer_stack)) {
3384 /* First allocation is just for 2 elements, since we don't know if this
3385 * scanner will even need a stack. We use 2 instead of 1 to avoid an
3386 * immediate realloc on the next call.
3388 num_to_alloc = 1;
3389 (yy_buffer_stack) = (struct yy_buffer_state**)scdocalloc
3390 (num_to_alloc * sizeof(struct yy_buffer_state*)
3392 if ( ! (yy_buffer_stack) )
3393 YY_FATAL_ERROR( "out of dynamic memory in scdocensure_buffer_stack()" );
3395 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
3397 (yy_buffer_stack_max) = num_to_alloc;
3398 (yy_buffer_stack_top) = 0;
3399 return;
3402 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3404 /* Increase the buffer to prepare for a possible push. */
3405 int grow_size = 8 /* arbitrary grow size */;
3407 num_to_alloc = (yy_buffer_stack_max) + grow_size;
3408 (yy_buffer_stack) = (struct yy_buffer_state**)scdocrealloc
3409 ((yy_buffer_stack),
3410 num_to_alloc * sizeof(struct yy_buffer_state*)
3412 if ( ! (yy_buffer_stack) )
3413 YY_FATAL_ERROR( "out of dynamic memory in scdocensure_buffer_stack()" );
3415 /* zero only the new slots.*/
3416 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
3417 (yy_buffer_stack_max) = num_to_alloc;
3421 /** Setup the input buffer state to scan directly from a user-specified character buffer.
3422 * @param base the character buffer
3423 * @param size the size in bytes of the character buffer
3425 * @return the newly allocated buffer state object.
3427 YY_BUFFER_STATE scdoc_scan_buffer (char * base, yy_size_t size )
3429 YY_BUFFER_STATE b;
3431 if ( size < 2 ||
3432 base[size-2] != YY_END_OF_BUFFER_CHAR ||
3433 base[size-1] != YY_END_OF_BUFFER_CHAR )
3434 /* They forgot to leave room for the EOB's. */
3435 return 0;
3437 b = (YY_BUFFER_STATE) scdocalloc(sizeof( struct yy_buffer_state ) );
3438 if ( ! b )
3439 YY_FATAL_ERROR( "out of dynamic memory in scdoc_scan_buffer()" );
3441 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
3442 b->yy_buf_pos = b->yy_ch_buf = base;
3443 b->yy_is_our_buffer = 0;
3444 b->yy_input_file = 0;
3445 b->yy_n_chars = b->yy_buf_size;
3446 b->yy_is_interactive = 0;
3447 b->yy_at_bol = 1;
3448 b->yy_fill_buffer = 0;
3449 b->yy_buffer_status = YY_BUFFER_NEW;
3451 scdoc_switch_to_buffer(b );
3453 return b;
3456 /** Setup the input buffer state to scan a string. The next call to scdoclex() will
3457 * scan from a @e copy of @a str.
3458 * @param yystr a NUL-terminated string to scan
3460 * @return the newly allocated buffer state object.
3461 * @note If you want to scan bytes that may contain NUL values, then use
3462 * scdoc_scan_bytes() instead.
3464 YY_BUFFER_STATE scdoc_scan_string (yyconst char * yystr )
3467 return scdoc_scan_bytes(yystr,strlen(yystr) );
3470 /** Setup the input buffer state to scan the given bytes. The next call to scdoclex() will
3471 * scan from a @e copy of @a bytes.
3472 * @param yybytes the byte buffer to scan
3473 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
3475 * @return the newly allocated buffer state object.
3477 YY_BUFFER_STATE scdoc_scan_bytes (yyconst char * yybytes, int _yybytes_len )
3479 YY_BUFFER_STATE b;
3480 char *buf;
3481 yy_size_t n;
3482 int i;
3484 /* Get memory for full buffer, including space for trailing EOB's. */
3485 n = _yybytes_len + 2;
3486 buf = (char *) scdocalloc(n );
3487 if ( ! buf )
3488 YY_FATAL_ERROR( "out of dynamic memory in scdoc_scan_bytes()" );
3490 for ( i = 0; i < _yybytes_len; ++i )
3491 buf[i] = yybytes[i];
3493 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
3495 b = scdoc_scan_buffer(buf,n );
3496 if ( ! b )
3497 YY_FATAL_ERROR( "bad buffer in scdoc_scan_bytes()" );
3499 /* It's okay to grow etc. this buffer, and we should throw it
3500 * away when we're done.
3502 b->yy_is_our_buffer = 1;
3504 return b;
3507 #ifndef YY_EXIT_FAILURE
3508 #define YY_EXIT_FAILURE 2
3509 #endif
3511 static void yy_fatal_error (yyconst char* msg )
3513 (void) fprintf( stderr, "%s\n", msg );
3514 exit( YY_EXIT_FAILURE );
3517 /* Redefine yyless() so it works in section 3 code. */
3519 #undef yyless
3520 #define yyless(n) \
3521 do \
3523 /* Undo effects of setting up scdoctext. */ \
3524 int yyless_macro_arg = (n); \
3525 YY_LESS_LINENO(yyless_macro_arg);\
3526 scdoctext[scdocleng] = (yy_hold_char); \
3527 (yy_c_buf_p) = scdoctext + yyless_macro_arg; \
3528 (yy_hold_char) = *(yy_c_buf_p); \
3529 *(yy_c_buf_p) = '\0'; \
3530 scdocleng = yyless_macro_arg; \
3532 while ( 0 )
3534 /* Accessor methods (get/set functions) to struct members. */
3536 /** Get the current line number.
3539 int scdocget_lineno (void)
3542 return scdoclineno;
3545 /** Get the input stream.
3548 FILE *scdocget_in (void)
3550 return scdocin;
3553 /** Get the output stream.
3556 FILE *scdocget_out (void)
3558 return scdocout;
3561 /** Get the length of the current token.
3564 int scdocget_leng (void)
3566 return scdocleng;
3569 /** Get the current token.
3573 char *scdocget_text (void)
3575 return scdoctext;
3578 /** Set the current line number.
3579 * @param line_number
3582 void scdocset_lineno (int line_number )
3585 scdoclineno = line_number;
3588 /** Set the input stream. This does not discard the current
3589 * input buffer.
3590 * @param in_str A readable stream.
3592 * @see scdoc_switch_to_buffer
3594 void scdocset_in (FILE * in_str )
3596 scdocin = in_str ;
3599 void scdocset_out (FILE * out_str )
3601 scdocout = out_str ;
3604 int scdocget_debug (void)
3606 return scdoc_flex_debug;
3609 void scdocset_debug (int bdebug )
3611 scdoc_flex_debug = bdebug ;
3614 static int yy_init_globals (void)
3616 /* Initialization is the same as for the non-reentrant scanner.
3617 * This function is called from scdoclex_destroy(), so don't allocate here.
3620 /* We do not touch scdoclineno unless the option is enabled. */
3621 scdoclineno = 1;
3623 (yy_buffer_stack) = 0;
3624 (yy_buffer_stack_top) = 0;
3625 (yy_buffer_stack_max) = 0;
3626 (yy_c_buf_p) = (char *) 0;
3627 (yy_init) = 0;
3628 (yy_start) = 0;
3630 /* Defined in main.c */
3631 #ifdef YY_STDINIT
3632 scdocin = stdin;
3633 scdocout = stdout;
3634 #else
3635 scdocin = (FILE *) 0;
3636 scdocout = (FILE *) 0;
3637 #endif
3639 /* For future reference: Set errno on error, since we are called by
3640 * scdoclex_init()
3642 return 0;
3645 /* scdoclex_destroy is for both reentrant and non-reentrant scanners. */
3646 int scdoclex_destroy (void)
3649 /* Pop the buffer stack, destroying each element. */
3650 while(YY_CURRENT_BUFFER){
3651 scdoc_delete_buffer(YY_CURRENT_BUFFER );
3652 YY_CURRENT_BUFFER_LVALUE = NULL;
3653 scdocpop_buffer_state();
3656 /* Destroy the stack itself. */
3657 scdocfree((yy_buffer_stack) );
3658 (yy_buffer_stack) = NULL;
3660 /* Reset the globals. This is important in a non-reentrant scanner so the next time
3661 * scdoclex() is called, initialization will occur. */
3662 yy_init_globals( );
3664 return 0;
3668 * Internal utility routines.
3671 #ifndef yytext_ptr
3672 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
3674 register int i;
3675 for ( i = 0; i < n; ++i )
3676 s1[i] = s2[i];
3678 #endif
3680 #ifdef YY_NEED_STRLEN
3681 static int yy_flex_strlen (yyconst char * s )
3683 register int n;
3684 for ( n = 0; s[n]; ++n )
3687 return n;
3689 #endif
3691 void *scdocalloc (yy_size_t size )
3693 return (void *) malloc( size );
3696 void *scdocrealloc (void * ptr, yy_size_t size )
3698 /* The cast to (char *) in the following accommodates both
3699 * implementations that use char* generic pointers, and those
3700 * that use void* generic pointers. It works with the latter
3701 * because both ANSI C and C++ allow castless assignment from
3702 * any pointer type to void*, and deal with argument conversions
3703 * as though doing an assignment.
3705 return (void *) realloc( (char *) ptr, size );
3708 void scdocfree (void * ptr )
3710 free( (char *) ptr ); /* see scdocrealloc() for (char *) cast */
3713 #define YYTABLES_NAME "yytables"
3715 #line 180 "SCDoc.l"