Root/
Source at commit 1322 created 12 years 8 months ago. By meklort, Add doxygen to utils folder | |
---|---|
1 | ␊ |
2 | #line 3 "<stdout>"␊ |
3 | ␊ |
4 | #define YY_INT_ALIGNED short int␊ |
5 | ␊ |
6 | /* A lexical scanner generated by flex */␊ |
7 | ␊ |
8 | #define yy_create_buffer preYY_create_buffer␊ |
9 | #define yy_delete_buffer preYY_delete_buffer␊ |
10 | #define yy_flex_debug preYY_flex_debug␊ |
11 | #define yy_init_buffer preYY_init_buffer␊ |
12 | #define yy_flush_buffer preYY_flush_buffer␊ |
13 | #define yy_load_buffer_state preYY_load_buffer_state␊ |
14 | #define yy_switch_to_buffer preYY_switch_to_buffer␊ |
15 | #define yyin preYYin␊ |
16 | #define yyleng preYYleng␊ |
17 | #define yylex preYYlex␊ |
18 | #define yylineno preYYlineno␊ |
19 | #define yyout preYYout␊ |
20 | #define yyrestart preYYrestart␊ |
21 | #define yytext preYYtext␊ |
22 | #define yywrap preYYwrap␊ |
23 | #define yyalloc preYYalloc␊ |
24 | #define yyrealloc preYYrealloc␊ |
25 | #define yyfree preYYfree␊ |
26 | ␊ |
27 | #define FLEX_SCANNER␊ |
28 | #define YY_FLEX_MAJOR_VERSION 2␊ |
29 | #define YY_FLEX_MINOR_VERSION 5␊ |
30 | #define YY_FLEX_SUBMINOR_VERSION 35␊ |
31 | #if YY_FLEX_SUBMINOR_VERSION > 0␊ |
32 | #define FLEX_BETA␊ |
33 | #endif␊ |
34 | ␊ |
35 | /* First, we deal with platform-specific or compiler-specific issues. */␊ |
36 | ␊ |
37 | /* begin standard C headers. */␊ |
38 | #include <stdio.h>␊ |
39 | #include <string.h>␊ |
40 | #include <errno.h>␊ |
41 | #include <stdlib.h>␊ |
42 | ␊ |
43 | /* end standard C headers. */␊ |
44 | ␊ |
45 | /* flex integer type definitions */␊ |
46 | ␊ |
47 | #ifndef FLEXINT_H␊ |
48 | #define FLEXINT_H␊ |
49 | ␊ |
50 | /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */␊ |
51 | ␊ |
52 | #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L␊ |
53 | ␊ |
54 | /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,␊ |
55 | * if you want the limit (max/min) macros for int types. ␊ |
56 | */␊ |
57 | #ifndef __STDC_LIMIT_MACROS␊ |
58 | #define __STDC_LIMIT_MACROS 1␊ |
59 | #endif␊ |
60 | ␊ |
61 | #include <inttypes.h>␊ |
62 | typedef int8_t flex_int8_t;␊ |
63 | typedef uint8_t flex_uint8_t;␊ |
64 | typedef int16_t flex_int16_t;␊ |
65 | typedef uint16_t flex_uint16_t;␊ |
66 | typedef int32_t flex_int32_t;␊ |
67 | typedef uint32_t flex_uint32_t;␊ |
68 | #else␊ |
69 | typedef signed char flex_int8_t;␊ |
70 | typedef short int flex_int16_t;␊ |
71 | typedef int flex_int32_t;␊ |
72 | typedef unsigned char flex_uint8_t; ␊ |
73 | typedef unsigned short int flex_uint16_t;␊ |
74 | typedef unsigned int flex_uint32_t;␊ |
75 | #endif /* ! C99 */␊ |
76 | ␊ |
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␊ |
105 | ␊ |
106 | #endif /* ! FLEXINT_H */␊ |
107 | ␊ |
108 | #ifdef __cplusplus␊ |
109 | ␊ |
110 | /* The "const" storage-class-modifier is valid. */␊ |
111 | #define YY_USE_CONST␊ |
112 | ␊ |
113 | #else␉/* ! __cplusplus */␊ |
114 | ␊ |
115 | /* C99 requires __STDC__ to be defined as 1. */␊ |
116 | #if defined (__STDC__)␊ |
117 | ␊ |
118 | #define YY_USE_CONST␊ |
119 | ␊ |
120 | #endif␉/* defined (__STDC__) */␊ |
121 | #endif␉/* ! __cplusplus */␊ |
122 | ␊ |
123 | #ifdef YY_USE_CONST␊ |
124 | #define yyconst const␊ |
125 | #else␊ |
126 | #define yyconst␊ |
127 | #endif␊ |
128 | ␊ |
129 | /* Returned upon end-of-file. */␊ |
130 | #define YY_NULL 0␊ |
131 | ␊ |
132 | /* Promotes a possibly negative, possibly signed char to an unsigned␊ |
133 | * integer for use as an array index. If the signed char is negative,␊ |
134 | * we want to instead treat it as an 8-bit unsigned char, hence the␊ |
135 | * double cast.␊ |
136 | */␊ |
137 | #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)␊ |
138 | ␊ |
139 | /* Enter a start condition. This macro really ought to take a parameter,␊ |
140 | * but we do it the disgusting crufty way forced on us by the ()-less␊ |
141 | * definition of BEGIN.␊ |
142 | */␊ |
143 | #define BEGIN (yy_start) = 1 + 2 *␊ |
144 | ␊ |
145 | /* Translate the current start state into a value that can be later handed␊ |
146 | * to BEGIN to return to the state. The YYSTATE alias is for lex␊ |
147 | * compatibility.␊ |
148 | */␊ |
149 | #define YY_START (((yy_start) - 1) / 2)␊ |
150 | #define YYSTATE YY_START␊ |
151 | ␊ |
152 | /* Action number for EOF rule of a given start state. */␊ |
153 | #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)␊ |
154 | ␊ |
155 | /* Special action meaning "start processing a new file". */␊ |
156 | #define YY_NEW_FILE preYYrestart(preYYin )␊ |
157 | ␊ |
158 | #define YY_END_OF_BUFFER_CHAR 0␊ |
159 | ␊ |
160 | /* Size of default input buffer. */␊ |
161 | #ifndef YY_BUF_SIZE␊ |
162 | #define YY_BUF_SIZE 262144␊ |
163 | #endif␊ |
164 | ␊ |
165 | /* The state buf must be large enough to hold one state per character in the main buffer.␊ |
166 | */␊ |
167 | #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))␊ |
168 | ␊ |
169 | #ifndef YY_TYPEDEF_YY_BUFFER_STATE␊ |
170 | #define YY_TYPEDEF_YY_BUFFER_STATE␊ |
171 | typedef struct yy_buffer_state *YY_BUFFER_STATE;␊ |
172 | #endif␊ |
173 | ␊ |
174 | #ifndef YY_TYPEDEF_YY_SIZE_T␊ |
175 | #define YY_TYPEDEF_YY_SIZE_T␊ |
176 | typedef size_t yy_size_t;␊ |
177 | #endif␊ |
178 | ␊ |
179 | extern yy_size_t preYYleng;␊ |
180 | ␊ |
181 | extern FILE *preYYin, *preYYout;␊ |
182 | ␊ |
183 | #define EOB_ACT_CONTINUE_SCAN 0␊ |
184 | #define EOB_ACT_END_OF_FILE 1␊ |
185 | #define EOB_ACT_LAST_MATCH 2␊ |
186 | ␊ |
187 | #define YY_LESS_LINENO(n)␊ |
188 | ␊ |
189 | /* Return all but the first "n" matched characters back to the input stream. */␊ |
190 | #define yyless(n) \␊ |
191 | ␉do \␊ |
192 | ␉␉{ \␊ |
193 | ␉␉/* Undo effects of setting up preYYtext. */ \␊ |
194 | int yyless_macro_arg = (n); \␊ |
195 | YY_LESS_LINENO(yyless_macro_arg);\␊ |
196 | ␉␉*yy_cp = (yy_hold_char); \␊ |
197 | ␉␉YY_RESTORE_YY_MORE_OFFSET \␊ |
198 | ␉␉(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \␊ |
199 | ␉␉YY_DO_BEFORE_ACTION; /* set up preYYtext again */ \␊ |
200 | ␉␉} \␊ |
201 | ␉while ( 0 )␊ |
202 | ␊ |
203 | #define unput(c) yyunput( c, (yytext_ptr) )␊ |
204 | ␊ |
205 | #ifndef YY_STRUCT_YY_BUFFER_STATE␊ |
206 | #define YY_STRUCT_YY_BUFFER_STATE␊ |
207 | struct yy_buffer_state␊ |
208 | ␉{␊ |
209 | ␉FILE *yy_input_file;␊ |
210 | ␊ |
211 | ␉char *yy_ch_buf;␉␉/* input buffer */␊ |
212 | ␉char *yy_buf_pos;␉␉/* current position in input buffer */␊ |
213 | ␊ |
214 | ␉/* Size of input buffer in bytes, not including room for EOB␊ |
215 | ␉ * characters.␊ |
216 | ␉ */␊ |
217 | ␉yy_size_t yy_buf_size;␊ |
218 | ␊ |
219 | ␉/* Number of characters read into yy_ch_buf, not including EOB␊ |
220 | ␉ * characters.␊ |
221 | ␉ */␊ |
222 | ␉yy_size_t yy_n_chars;␊ |
223 | ␊ |
224 | ␉/* Whether we "own" the buffer - i.e., we know we created it,␊ |
225 | ␉ * and can realloc() it to grow it, and should free() it to␊ |
226 | ␉ * delete it.␊ |
227 | ␉ */␊ |
228 | ␉int yy_is_our_buffer;␊ |
229 | ␊ |
230 | ␉/* Whether this is an "interactive" input source; if so, and␊ |
231 | ␉ * if we're using stdio for input, then we want to use getc()␊ |
232 | ␉ * instead of fread(), to make sure we stop fetching input after␊ |
233 | ␉ * each newline.␊ |
234 | ␉ */␊ |
235 | ␉int yy_is_interactive;␊ |
236 | ␊ |
237 | ␉/* Whether we're considered to be at the beginning of a line.␊ |
238 | ␉ * If so, '^' rules will be active on the next match, otherwise␊ |
239 | ␉ * not.␊ |
240 | ␉ */␊ |
241 | ␉int yy_at_bol;␊ |
242 | ␊ |
243 | int yy_bs_lineno; /**< The line count. */␊ |
244 | int yy_bs_column; /**< The column count. */␊ |
245 | ␊ |
246 | ␉/* Whether to try to fill the input buffer when we reach the␊ |
247 | ␉ * end of it.␊ |
248 | ␉ */␊ |
249 | ␉int yy_fill_buffer;␊ |
250 | ␊ |
251 | ␉int yy_buffer_status;␊ |
252 | ␊ |
253 | #define YY_BUFFER_NEW 0␊ |
254 | #define YY_BUFFER_NORMAL 1␊ |
255 | ␉/* When an EOF's been seen but there's still some text to process␊ |
256 | ␉ * then we mark the buffer as YY_EOF_PENDING, to indicate that we␊ |
257 | ␉ * shouldn't try reading from the input source any more. We might␊ |
258 | ␉ * still have a bunch of tokens to match, though, because of␊ |
259 | ␉ * possible backing-up.␊ |
260 | ␉ *␊ |
261 | ␉ * When we actually see the EOF, we change the status to "new"␊ |
262 | ␉ * (via preYYrestart()), so that the user can continue scanning by␊ |
263 | ␉ * just pointing preYYin at a new input file.␊ |
264 | ␉ */␊ |
265 | #define YY_BUFFER_EOF_PENDING 2␊ |
266 | ␊ |
267 | ␉};␊ |
268 | #endif /* !YY_STRUCT_YY_BUFFER_STATE */␊ |
269 | ␊ |
270 | /* Stack of input buffers. */␊ |
271 | static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */␊ |
272 | static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */␊ |
273 | static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */␊ |
274 | ␊ |
275 | /* We provide macros for accessing buffer states in case in the␊ |
276 | * future we want to put the buffer states in a more general␊ |
277 | * "scanner state".␊ |
278 | *␊ |
279 | * Returns the top of the stack, or NULL.␊ |
280 | */␊ |
281 | #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \␊ |
282 | ? (yy_buffer_stack)[(yy_buffer_stack_top)] \␊ |
283 | : NULL)␊ |
284 | ␊ |
285 | /* Same as previous macro, but useful when we know that the buffer stack is not␊ |
286 | * NULL or when we need an lvalue. For internal use only.␊ |
287 | */␊ |
288 | #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]␊ |
289 | ␊ |
290 | /* yy_hold_char holds the character lost when preYYtext is formed. */␊ |
291 | static char yy_hold_char;␊ |
292 | static yy_size_t yy_n_chars;␉␉/* number of characters read into yy_ch_buf */␊ |
293 | yy_size_t preYYleng;␊ |
294 | ␊ |
295 | /* Points to current character in buffer. */␊ |
296 | static char *yy_c_buf_p = (char *) 0;␊ |
297 | static int yy_init = 0;␉␉/* whether we need to initialize */␊ |
298 | static int yy_start = 0;␉/* start state number */␊ |
299 | ␊ |
300 | /* Flag which is used to allow preYYwrap()'s to do buffer switches␊ |
301 | * instead of setting up a fresh preYYin. A bit of a hack ...␊ |
302 | */␊ |
303 | static int yy_did_buffer_switch_on_eof;␊ |
304 | ␊ |
305 | void preYYrestart (FILE *input_file );␊ |
306 | void preYY_switch_to_buffer (YY_BUFFER_STATE new_buffer );␊ |
307 | YY_BUFFER_STATE preYY_create_buffer (FILE *file,int size );␊ |
308 | void preYY_delete_buffer (YY_BUFFER_STATE b );␊ |
309 | void preYY_flush_buffer (YY_BUFFER_STATE b );␊ |
310 | void preYYpush_buffer_state (YY_BUFFER_STATE new_buffer );␊ |
311 | void preYYpop_buffer_state (void );␊ |
312 | ␊ |
313 | static void preYYensure_buffer_stack (void );␊ |
314 | static void preYY_load_buffer_state (void );␊ |
315 | static void preYY_init_buffer (YY_BUFFER_STATE b,FILE *file );␊ |
316 | ␊ |
317 | #define YY_FLUSH_BUFFER preYY_flush_buffer(YY_CURRENT_BUFFER )␊ |
318 | ␊ |
319 | YY_BUFFER_STATE preYY_scan_buffer (char *base,yy_size_t size );␊ |
320 | YY_BUFFER_STATE preYY_scan_string (yyconst char *yy_str );␊ |
321 | YY_BUFFER_STATE preYY_scan_bytes (yyconst char *bytes,yy_size_t len );␊ |
322 | ␊ |
323 | void *preYYalloc (yy_size_t );␊ |
324 | void *preYYrealloc (void *,yy_size_t );␊ |
325 | void preYYfree (void * );␊ |
326 | ␊ |
327 | #define yy_new_buffer preYY_create_buffer␊ |
328 | ␊ |
329 | #define yy_set_interactive(is_interactive) \␊ |
330 | ␉{ \␊ |
331 | ␉if ( ! YY_CURRENT_BUFFER ){ \␊ |
332 | preYYensure_buffer_stack (); \␊ |
333 | ␉␉YY_CURRENT_BUFFER_LVALUE = \␊ |
334 | preYY_create_buffer(preYYin,YY_BUF_SIZE ); \␊ |
335 | ␉} \␊ |
336 | ␉YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \␊ |
337 | ␉}␊ |
338 | ␊ |
339 | #define yy_set_bol(at_bol) \␊ |
340 | ␉{ \␊ |
341 | ␉if ( ! YY_CURRENT_BUFFER ){\␊ |
342 | preYYensure_buffer_stack (); \␊ |
343 | ␉␉YY_CURRENT_BUFFER_LVALUE = \␊ |
344 | preYY_create_buffer(preYYin,YY_BUF_SIZE ); \␊ |
345 | ␉} \␊ |
346 | ␉YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \␊ |
347 | ␉}␊ |
348 | ␊ |
349 | #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)␊ |
350 | ␊ |
351 | /* Begin user sect3 */␊ |
352 | ␊ |
353 | #define preYYwrap(n) 1␊ |
354 | #define YY_SKIP_YYWRAP␊ |
355 | ␊ |
356 | typedef unsigned char YY_CHAR;␊ |
357 | ␊ |
358 | FILE *preYYin = (FILE *) 0, *preYYout = (FILE *) 0;␊ |
359 | ␊ |
360 | typedef int yy_state_type;␊ |
361 | ␊ |
362 | extern int preYYlineno;␊ |
363 | ␊ |
364 | int preYYlineno = 1;␊ |
365 | ␊ |
366 | extern char *preYYtext;␊ |
367 | #define yytext_ptr preYYtext␊ |
368 | ␊ |
369 | static yy_state_type yy_get_previous_state (void );␊ |
370 | static yy_state_type yy_try_NUL_trans (yy_state_type current_state );␊ |
371 | static int yy_get_next_buffer (void );␊ |
372 | static void yy_fatal_error (yyconst char msg[] );␊ |
373 | ␊ |
374 | /* Done after the current pattern has been matched and before the␊ |
375 | * corresponding action - sets up preYYtext.␊ |
376 | */␊ |
377 | #define YY_DO_BEFORE_ACTION \␊ |
378 | ␉(yytext_ptr) = yy_bp; \␊ |
379 | ␉preYYleng = (size_t) (yy_cp - yy_bp); \␊ |
380 | ␉(yy_hold_char) = *yy_cp; \␊ |
381 | ␉*yy_cp = '\0'; \␊ |
382 | ␉(yy_c_buf_p) = yy_cp;␊ |
383 | ␊ |
384 | #define YY_NUM_RULES 166␊ |
385 | #define YY_END_OF_BUFFER 167␊ |
386 | /* This struct is not used in this scanner,␊ |
387 | but its presence is necessary. */␊ |
388 | struct yy_trans_info␊ |
389 | ␉{␊ |
390 | ␉flex_int32_t yy_verify;␊ |
391 | ␉flex_int32_t yy_nxt;␊ |
392 | ␉};␊ |
393 | static yyconst flex_int16_t yy_acclist[1240] =␊ |
394 | { 0,␊ |
395 | 148, 148, 167, 165, 166, 1, 165, 166, 164, 166,␊ |
396 | 3, 165, 166, 165, 166, 165, 166, 2, 165, 166,␊ |
397 | 6, 165, 166, 1, 6, 165, 166, 6, 165, 166,␊ |
398 | 6, 164, 166, 3, 6, 165, 166, 5, 165, 166,␊ |
399 | 6, 165, 166, 6, 165, 166, 6, 165, 166, 2,␊ |
400 | 6, 165, 166, 53, 165, 166, 1, 53, 165, 166,␊ |
401 | 49, 164, 166, 3, 53, 165, 166, 53, 165, 166,␊ |
402 | 53, 165, 166, 50, 53, 165, 166, 50, 53, 165,␊ |
403 | 166, 50, 53, 165, 166, 50, 53, 165, 166, 50,␊ |
404 | 53, 165, 166, 50, 53, 165, 166, 2, 53, 165,␊ |
405 | ␊ |
406 | 166, 77, 165, 166, 1, 77, 165, 166, 75, 164,␊ |
407 | 166, 3, 77, 165, 166, 77, 165, 166, 77, 165,␊ |
408 | 166, 76, 77, 165, 166, 76, 77, 165, 166, 76,␊ |
409 | 77, 165, 166, 2, 77, 165, 166, 78, 81, 165,␊ |
410 | 166, 1, 78, 81, 165, 166, 84, 164, 166, 3,␊ |
411 | 78, 81, 165, 166, 80, 81, 165, 166, 81, 165,␊ |
412 | 166, 81, 165, 166, 78, 81, 165, 166, 2, 78,␊ |
413 | 81, 165, 166, 85, 88, 165, 166, 1, 85, 88,␊ |
414 | 165, 166, 3, 85, 88, 165, 166, 87, 88, 165,␊ |
415 | 166, 85, 88, 165, 166, 85, 88, 165, 166, 88,␊ |
416 | ␊ |
417 | 165, 166, 2, 85, 88, 165, 166, 23, 165, 166,␊ |
418 | 1, 23, 165, 166, 24, 164, 166, 3, 23, 165,␊ |
419 | 166, 16, 23, 165, 166, 23, 165, 166, 23, 165,␊ |
420 | 166, 23, 165, 166, 21, 23, 165, 166,16404, 23,␊ |
421 | 165, 166, 21, 23, 165, 166,16404, 11, 23, 165,␊ |
422 | 166, 12, 23, 165, 166, 2, 23, 165, 166, 17,␊ |
423 | 165, 166, 1, 17, 165, 166, 19, 165, 166, 17,␊ |
424 | 165, 166, 17, 165, 166, 165, 166, 2, 17, 165,␊ |
425 | 166, 165, 166, 1, 165, 166, 3, 165, 166, 165,␊ |
426 | 166, 165, 166, 2, 165, 166, 90, 165, 166, 94,␊ |
427 | ␊ |
428 | 165, 166, 1, 94, 165, 166, 92, 164, 166, 3,␊ |
429 | 94, 165, 166, 94, 165, 166, 94, 165, 166, 94,␊ |
430 | 165, 166, 2, 94, 165, 166, 8289, 165, 166,16479,␊ |
431 | 16481,16482, 165, 166, 101, 165, 166, 102, 165, 166,␊ |
432 | 100, 165, 166, 165, 166, 104, 165, 166, 165, 166,␊ |
433 | 160, 165, 166, 1, 160, 165, 166, 148, 160, 165,␊ |
434 | 166, 147, 164, 166, 3, 160, 165, 166, 151, 160,␊ |
435 | 165, 166, 143, 160, 165, 166, 152, 160, 165, 166,␊ |
436 | 160, 165, 166, 160, 165, 166, 150, 160, 165, 166,␊ |
437 | 144, 160, 165, 166, 160, 165, 166, 2, 160, 165,␊ |
438 | ␊ |
439 | 166, 70, 165, 166, 1, 70, 165, 166, 69, 164,␊ |
440 | 166, 3, 70, 165, 166, 70, 165, 166, 70, 165,␊ |
441 | 166, 2, 70, 165, 166, 68, 70, 165, 166, 1,␊ |
442 | 68, 70, 165, 166, 68, 70, 165, 166, 68, 69,␊ |
443 | 164, 166, 3, 68, 70, 165, 166, 67, 70, 165,␊ |
444 | 166, 68, 70, 165, 166, 68, 70, 165, 166, 2,␊ |
445 | 68, 70, 165, 166, 120, 122, 165, 166, 1, 122,␊ |
446 | 165, 166, 121, 164, 166, 3, 120, 122, 165, 166,␊ |
447 | 122, 165, 166, 122, 165, 166, 120, 122, 165, 166,␊ |
448 | 122, 165, 166, 2, 120, 122, 165, 166, 123, 145,␊ |
449 | ␊ |
450 | 165, 166, 1, 123, 145, 165, 166, 125, 164, 166,␊ |
451 | 3, 123, 145, 165, 166, 145, 165, 166, 123, 145,␊ |
452 | 165, 166, 123, 145, 165, 166, 144, 145, 165, 166,␊ |
453 | 2, 123, 145, 165, 166, 122, 165, 166, 122, 165,␊ |
454 | 166, 122, 165, 166, 133, 137, 138, 165, 166, 1,␊ |
455 | 133, 138, 165, 166, 134, 164, 166, 3, 133, 137,␊ |
456 | 138, 165, 166, 137, 138, 165, 166, 133, 137, 138,␊ |
457 | 165, 166, 138, 165, 166, 2, 133, 137, 138, 165,␊ |
458 | 166, 130, 132, 165, 166, 1, 132, 165, 166, 131,␊ |
459 | 164, 166, 3, 130, 132, 165, 166, 132, 165, 166,␊ |
460 | ␊ |
461 | 130, 132, 165, 166, 130, 132, 165, 166, 2, 130,␊ |
462 | 132, 165, 166, 141, 142, 165, 166, 1, 142, 165,␊ |
463 | 166, 3, 141, 142, 165, 166, 141, 142, 165, 166,␊ |
464 | 141, 142, 165, 166, 2, 141, 142, 165, 166, 59,␊ |
465 | 165, 166, 1, 59, 165, 166, 60, 164, 166, 3,␊ |
466 | 59, 165, 166, 59, 165, 166, 59, 165, 166, 58,␊ |
467 | 59, 165, 166, 59, 165, 166, 58, 59, 165, 166,␊ |
468 | 2, 59, 165, 166, 66, 165, 166, 1, 66, 165,␊ |
469 | 166, 64, 164, 166, 3, 66, 165, 166, 66, 165,␊ |
470 | 166, 66, 165, 166, 62, 66, 165, 166, 66, 165,␊ |
471 | ␊ |
472 | 166, 2, 66, 165, 166, 65, 66, 165, 166, 63,␊ |
473 | 66, 165, 166, 158, 165, 166, 1, 158, 165, 166,␊ |
474 | 3, 158, 165, 166, 155, 158, 165, 166, 158, 165,␊ |
475 | 166, 158, 165, 166, 158, 165, 166, 2, 158, 165,␊ |
476 | 166, 159, 165, 166, 1, 159, 165, 166, 3, 159,␊ |
477 | 165, 166, 157, 159, 165, 166, 159, 165, 166, 159,␊ |
478 | 165, 166, 159, 165, 166, 2, 159, 165, 166, 54,␊ |
479 | 165, 166, 52, 165, 166, 1, 52, 165, 166, 3,␊ |
480 | 52, 165, 166, 52, 165, 166, 52, 165, 166, 52,␊ |
481 | 165, 166, 2, 52, 165, 166, 31, 165, 166, 1,␊ |
482 | ␊ |
483 | 31, 165, 166, 29, 164, 166, 3, 31, 165, 166,␊ |
484 | 28, 31, 165, 166, 31, 165, 166, 25, 31, 165,␊ |
485 | 166, 26, 31, 165, 166, 31, 165, 166, 31, 165,␊ |
486 | 166, 30, 31, 165, 166, 2, 31, 165, 166, 35,␊ |
487 | 165, 166, 1, 35, 165, 166, 3, 35, 165, 166,␊ |
488 | 32, 35, 165, 166, 35, 165, 166, 35, 165, 166,␊ |
489 | 35, 165, 166, 2, 35, 165, 166, 116, 165, 166,␊ |
490 | 1, 116, 165, 166, 3, 116, 165, 166, 116, 165,␊ |
491 | 166, 116, 165, 166, 114, 116, 165, 166, 2, 116,␊ |
492 | 165, 166, 162, 163, 6, 6, 5, 6, 50, 50,␊ |
493 | ␊ |
494 | 50, 50, 50, 50, 50, 50, 50, 83, 162, 82,␊ |
495 | 163, 76, 76, 76, 76, 78, 78, 85, 83, 85,␊ |
496 | 162, 82, 85, 163, 85, 86, 8212, 21,16404, 22,␊ |
497 | 21,16404, 17, 17, 162, 17, 163, 17, 18, 91,␊ |
498 | 162, 163, 89, 90, 92, 162, 163, 93, 8289, 8290,␊ |
499 | 8287, 8289,16479,16481,16482, 102, 101, 102, 100, 104,␊ |
500 | 104, 99, 148, 149, 105, 162, 106, 163, 144, 146,␊ |
501 | 68, 68, 67, 120, 107, 109, 162, 108, 163, 120,␊ |
502 | 123, 124, 123, 163, 123, 119, 119, 162, 133, 137,␊ |
503 | 133, 137, 135, 137, 162, 136, 137, 163, 133, 137,␊ |
504 | ␊ |
505 | 130, 127, 129, 162, 128, 130, 163, 130, 141, 139,␊ |
506 | 141, 162, 140, 141, 163, 141, 58, 55, 58, 62,␊ |
507 | 61, 63, 154, 162, 153, 163, 156, 54, 51, 33,␊ |
508 | 162, 33, 163, 34, 114, 162, 163, 4,16391, 50,␊ |
509 | 50, 50, 50, 50, 43, 50, 50, 50, 50, 50,␊ |
510 | 83, 83, 162, 82, 82, 163, 76, 76, 76, 71,␊ |
511 | 76, 76, 79, 4, 78, 83, 85, 83, 85, 162,␊ |
512 | 82, 85, 82, 85, 163, 4, 85, 15, 15, 21,␊ |
513 | 16404, 17, 162, 17, 163, 4, 17, 162, 163, 4,␊ |
514 | 4, 91, 162, 163, 4, 96, 103, 149, 105, 105,␊ |
515 | ␊ |
516 | 162, 106, 106, 163, 108, 163, 4, 120, 123, 163,␊ |
517 | 4, 123, 118, 137, 162, 137, 163, 4, 133, 137,␊ |
518 | 4, 137, 126, 130, 163, 4, 130, 141, 162, 141,␊ |
519 | 163, 4, 141, 58, 27, 161,16391, 9, 8199, 50,␊ |
520 | 50, 50, 50, 50, 50, 50, 50, 50, 50, 83,␊ |
521 | 161, 76, 72, 76, 76, 76, 79, 83, 85, 161,␊ |
522 | 14, 13, 14, 21,16404, 17, 161, 161, 161, 104,␊ |
523 | 108, 110, 137, 161, 141, 161, 58, 27, 8199, 9,␊ |
524 | 50, 50, 44, 47, 45, 45, 50, 50, 50, 50,␊ |
525 | 50, 50, 50, 73, 76, 74, 76, 76, 13, 21,␊ |
526 | ␊ |
527 | 16404, 112, 58, 8, 9, 50, 50, 48, 40, 39,␊ |
528 | 50, 50, 50, 46, 21,16404, 111, 113, 115, 58,␊ |
529 | 9, 38, 42, 41,16420, 37, 10, 58, 9, 8228,␊ |
530 | 57, 56, 9, 8228, 117, 9, 9, 9, 9␊ |
531 | } ;␊ |
532 | ␊ |
533 | static yyconst flex_int16_t yy_accept[1158] =␊ |
534 | { 0,␊ |
535 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
536 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
537 | 1, 1, 1, 1, 1, 1, 1, 2, 3, 3,␊ |
538 | 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,␊ |
539 | 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,␊ |
540 | 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,␊ |
541 | 3, 3, 3, 3, 3, 3, 3, 4, 6, 9,␊ |
542 | 11, 14, 16, 18, 21, 24, 28, 31, 34, 38,␊ |
543 | 41, 44, 47, 50, 54, 57, 61, 64, 68, 71,␊ |
544 | 74, 78, 82, 86, 90, 94, 98, 102, 105, 109,␊ |
545 | ␊ |
546 | 112, 116, 119, 122, 126, 130, 134, 138, 142, 147,␊ |
547 | 150, 155, 159, 162, 165, 169, 174, 178, 183, 188,␊ |
548 | 192, 196, 200, 203, 208, 211, 215, 218, 222, 226,␊ |
549 | 229, 232, 235, 240, 243, 248, 252, 256, 260, 263,␊ |
550 | 267, 270, 273, 276, 278, 282, 284, 287, 290, 292,␊ |
551 | 294, 297, 300, 303, 307, 310, 314, 317, 320, 323,␊ |
552 | 327, 333, 335, 338, 341, 344, 346, 349, 351, 354,␊ |
553 | 358, 362, 365, 369, 373, 377, 381, 384, 387, 391,␊ |
554 | 395, 398, 402, 405, 409, 412, 416, 419, 422, 426,␊ |
555 | 430, 435, 439, 443, 448, 452, 456, 460, 465, 469,␊ |
556 | ␊ |
557 | 473, 476, 481, 484, 487, 491, 494, 499, 503, 508,␊ |
558 | 511, 516, 519, 523, 527, 531, 536, 539, 542, 545,␊ |
559 | 550, 555, 558, 564, 568, 573, 576, 582, 586, 590,␊ |
560 | 593, 598, 601, 605, 609, 614, 618, 622, 627, 631,␊ |
561 | 635, 640, 643, 647, 650, 654, 657, 660, 664, 667,␊ |
562 | 671, 675, 678, 682, 685, 689, 692, 695, 699, 702,␊ |
563 | 706, 710, 714, 717, 721, 725, 729, 732, 735, 738,␊ |
564 | 742, 745, 749, 753, 757, 760, 763, 766, 770, 773,␊ |
565 | 776, 780, 784, 787, 790, 793, 797, 800, 804, 807,␊ |
566 | 811, 815, 818, 822, 826, 829, 832, 836, 840, 843,␊ |
567 | ␊ |
568 | 847, 851, 855, 858, 861, 864, 868, 871, 875, 879,␊ |
569 | 882, 885, 889, 893, 894, 895, 895, 896, 897, 898,␊ |
570 | 899, 899, 899, 899, 900, 901, 902, 903, 904, 905,␊ |
571 | 906, 907, 908, 910, 912, 913, 914, 915, 916, 917,␊ |
572 | 917, 917, 918, 919, 922, 925, 926, 927, 927, 927,␊ |
573 | 927, 928, 930, 931, 931, 933, 934, 936, 938, 939,␊ |
574 | 940, 940, 941, 942, 943, 943, 943, 944, 945, 945,␊ |
575 | 946, 947, 948, 948, 949, 949, 950, 951, 952, 956,␊ |
576 | 956, 956, 957, 958, 959, 960, 960, 961, 961, 962,␊ |
577 | 963, 964, 964, 965, 967, 969, 970, 971, 971, 972,␊ |
578 | ␊ |
579 | 973, 974, 975, 976, 978, 980, 981, 981, 981, 981,␊ |
580 | 981, 981, 981, 981, 981, 981, 981, 982, 983, 985,␊ |
581 | 986, 987, 989, 989, 989, 991, 992, 993, 996, 999,␊ |
582 | 1001, 1001, 1002, 1003, 1005, 1008, 1009, 1010, 1013, 1016,␊ |
583 | 1017, 1018, 1019, 1019, 1020, 1021, 1022, 1023, 1025, 1027,␊ |
584 | 1028, 1029, 1030, 1030, 1030, 1030, 1032, 1034, 1035, 1036,␊ |
585 | 1037, 1038, 1039, 1039, 1039, 1040, 1041, 1042, 1043, 1044,␊ |
586 | 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1054, 1055,␊ |
587 | 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1063, 1064, 1064,␊ |
588 | 1064, 1066, 1068, 1071, 1073, 1076, 1078, 1079, 1079, 1080,␊ |
589 | ␊ |
590 | 1080, 1080, 1082, 1084, 1086, 1088, 1089, 1090, 1091, 1093,␊ |
591 | 1094, 1095, 1096, 1097, 1097, 1098, 1098, 1099, 1100, 1102,␊ |
592 | 1103, 1105, 1107, 1109, 1109, 1109, 1109, 1109, 1109, 1109,␊ |
593 | 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109,␊ |
594 | 1109, 1109, 1111, 1113, 1113, 1114, 1116, 1118, 1121, 1123,␊ |
595 | 1123, 1123, 1124, 1126, 1128, 1130, 1132, 1134, 1135, 1135,␊ |
596 | 1136, 1136, 1136, 1137, 1137, 1138, 1138, 1139, 1139, 1140,␊ |
597 | 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150,␊ |
598 | 1152, 1153, 1155, 1156, 1157, 1157, 1158, 1158, 1161, 1162,␊ |
599 | 1164, 1164, 1164, 1166, 1168, 1169, 1170, 1171, 1172, 1172,␊ |
600 | ␊ |
601 | 1172, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173,␊ |
602 | 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1175,␊ |
603 | 1177, 1178, 1178, 1179, 1179, 1179, 1179, 1179, 1179, 1180,␊ |
604 | 1180, 1181, 1181, 1182, 1183, 1185, 1186, 1187, 1188, 1189,␊ |
605 | 1190, 1191, 1192, 1193, 1194, 1195, 1195, 1196, 1198, 1199,␊ |
606 | 1199, 1199, 1200, 1200, 1200, 1202, 1202, 1202, 1202, 1202,␊ |
607 | 1202, 1202, 1202, 1202, 1202, 1203, 1203, 1203, 1203, 1203,␊ |
608 | 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203,␊ |
609 | 1203, 1204, 1204, 1204, 1204, 1204, 1204, 1205, 1205, 1206,␊ |
610 | 1206, 1207, 1208, 1208, 1208, 1209, 1210, 1211, 1212, 1213,␊ |
611 | ␊ |
612 | 1214, 1215, 1215, 1215, 1217, 1218, 1218, 1218, 1218, 1218,␊ |
613 | 1218, 1218, 1219, 1220, 1220, 1220, 1220, 1220, 1220, 1220,␊ |
614 | 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,␊ |
615 | 1221, 1221, 1221, 1221, 1222, 1222, 1223, 1223, 1224, 1225,␊ |
616 | 1226, 1227, 1227, 1227, 1227, 1227, 1228, 1228, 1228, 1228,␊ |
617 | 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228,␊ |
618 | 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1229, 1229, 1229,␊ |
619 | 1229, 1230, 1230, 1231, 1231, 1231, 1231, 1231, 1231, 1231,␊ |
620 | 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231,␊ |
621 | 1231, 1231, 1231, 1232, 1233, 1233, 1233, 1233, 1234, 1234,␊ |
622 | ␊ |
623 | 1235, 1235, 1235, 1235, 1235, 1235, 1235, 1236, 1236, 1236,␊ |
624 | 1236, 1236, 1236, 1236, 1236, 1236, 1236, 1236, 1237, 1237,␊ |
625 | 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237,␊ |
626 | 1237, 1237, 1237, 1238, 1238, 1238, 1238, 1238, 1238, 1238,␊ |
627 | 1238, 1238, 1238, 1238, 1239, 1239, 1239, 1239, 1239, 1239,␊ |
628 | 1239, 1239, 1239, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
629 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
630 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
631 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
632 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
633 | ␊ |
634 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
635 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
636 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
637 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
638 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
639 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
640 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
641 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
642 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
643 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
644 | ␊ |
645 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
646 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
647 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
648 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
649 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
650 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
651 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
652 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
653 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
654 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
655 | ␊ |
656 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
657 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
658 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
659 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
660 | 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240, 1240,␊ |
661 | 1240, 1240, 1240, 1240, 1240, 1240, 1240␊ |
662 | } ;␊ |
663 | ␊ |
664 | static yyconst flex_int32_t yy_ec[256] =␊ |
665 | { 0,␊ |
666 | 1, 1, 1, 1, 1, 2, 1, 1, 3, 4,␊ |
667 | 1, 1, 5, 1, 1, 1, 1, 1, 1, 1,␊ |
668 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
669 | 1, 3, 6, 7, 8, 9, 1, 1, 10, 11,␊ |
670 | 12, 13, 1, 14, 15, 16, 17, 18, 19, 18,␊ |
671 | 18, 18, 18, 18, 18, 20, 20, 21, 1, 22,␊ |
672 | 23, 24, 25, 26, 27, 27, 28, 27, 27, 27,␊ |
673 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,␊ |
674 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,␊ |
675 | 29, 30, 31, 1, 27, 1, 32, 33, 34, 35,␊ |
676 | ␊ |
677 | 36, 37, 38, 39, 40, 38, 41, 42, 43, 44,␊ |
678 | 45, 46, 38, 47, 48, 49, 50, 51, 38, 52,␊ |
679 | 53, 38, 54, 1, 55, 1, 1, 1, 1, 1,␊ |
680 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
681 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
682 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
683 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
684 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
685 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
686 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
687 | ␊ |
688 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
689 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
690 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
691 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
692 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,␊ |
693 | 1, 1, 1, 1, 1␊ |
694 | } ;␊ |
695 | ␊ |
696 | static yyconst flex_int32_t yy_meta[57] =␊ |
697 | { 0,␊ |
698 | 1, 2, 3, 4, 5, 6, 7, 1, 1, 8,␊ |
699 | 9, 6, 10, 1, 11, 12, 13, 14, 14, 14,␊ |
700 | 1, 15, 6, 6, 1, 16, 17, 17, 1, 18,␊ |
701 | 1, 17, 17, 17, 17, 17, 17, 17, 17, 17,␊ |
702 | 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,␊ |
703 | 17, 17, 17, 1, 1, 1␊ |
704 | } ;␊ |
705 | ␊ |
706 | static yyconst flex_int16_t yy_base[1265] =␊ |
707 | { 0,␊ |
708 | 0, 4, 9, 64, 120, 0, 176, 0, 26, 37,␊ |
709 | 231, 235, 291, 0, 346, 350, 357, 383, 439, 0,␊ |
710 | 53, 494, 524, 0, 577, 0, 633, 0, 59, 498,␊ |
711 | 688, 692, 697, 702, 757, 812, 868, 0, 923, 978,␊ |
712 | 716, 730, 763, 787, 793, 803, 1034, 0, 1090, 0,␊ |
713 | 1135, 0, 930, 937, 941, 959, 1162, 0, 1214, 1218,␊ |
714 | 1273, 1328, 1225, 1262, 1384, 0, 2823, 5434, 5434, 5434,␊ |
715 | 5434, 2, 2793, 5434, 5434, 5434, 71, 5434, 5434, 5434,␊ |
716 | 3, 2791, 77, 5434, 5434, 5434, 5434, 5434, 5, 2785,␊ |
717 | 0, 2766, 2768, 4, 57, 2755, 5434, 5434, 5434, 5434,␊ |
718 | ␊ |
719 | 5434, 10, 2773, 0, 8, 2750, 5434, 0, 0, 5434,␊ |
720 | 0, 5434, 2756, 32, 2756, 0, 0, 0, 0, 5434,␊ |
721 | 58, 2755, 0, 0, 5434, 5434, 5434, 5434, 5434, 2742,␊ |
722 | 60, 2739, 103, 33, 725, 5434, 5434, 5434, 0, 0,␊ |
723 | 5434, 73, 2738, 0, 0, 0, 78, 227, 240, 234,␊ |
724 | 238, 29, 2757, 2755, 5434, 2749, 99, 242, 106, 2739,␊ |
725 | 362, 0, 2737, 2728, 2722, 2702, 247, 2708, 5434, 5434,␊ |
726 | 110, 5434, 5434, 5434, 2699, 5434, 253, 2681, 5434, 0,␊ |
727 | 239, 5434, 5434, 5434, 5434, 5434, 255, 2679, 5434, 5434,␊ |
728 | 5434, 246, 5434, 5434, 5434, 256, 2678, 5434, 0, 5434,␊ |
729 | ␊ |
730 | 5434, 0, 2672, 258, 2659, 1415, 0, 0, 0, 5434,␊ |
731 | 0, 2665, 261, 2656, 0, 0, 2661, 263, 245, 366,␊ |
732 | 0, 5434, 367, 266, 376, 83, 377, 0, 5434, 5434,␊ |
733 | 0, 2656, 271, 2647, 0, 0, 5434, 0, 272, 2645,␊ |
734 | 0, 5434, 5434, 5434, 5434, 273, 2644, 0, 391, 2628,␊ |
735 | 5434, 5434, 5434, 5434, 5434, 343, 2638, 0, 2656, 5434,␊ |
736 | 5434, 0, 5434, 5434, 5434, 5434, 386, 2634, 0, 5434,␊ |
737 | 5434, 5434, 5434, 5434, 392, 2632, 0, 5434, 0, 5434,␊ |
738 | 5434, 5434, 397, 2628, 393, 5434, 5434, 5434, 5434, 5434,␊ |
739 | 5434, 2620, 5434, 5434, 398, 2624, 5434, 5434, 5434, 5434,␊ |
740 | ␊ |
741 | 5434, 5434, 399, 2623, 0, 5434, 5434, 5434, 5434, 404,␊ |
742 | 2621, 0, 5434, 2606, 2600, 0, 5434, 501, 5434, 494,␊ |
743 | 415, 408, 507, 0, 2576, 2519, 382, 2520, 705, 2507,␊ |
744 | 2509, 2506, 2523, 2492, 0, 383, 2471, 800, 0, 2480,␊ |
745 | 406, 1462, 0, 523, 525, 1481, 5434, 2478, 417, 534,␊ |
746 | 5434, 720, 5434, 2482, 970, 0, 2472, 2462, 1500, 5434,␊ |
747 | 365, 5434, 730, 524, 1519, 426, 5434, 505, 2457, 5434,␊ |
748 | 345, 387, 1540, 5434, 2455, 747, 5434, 5434, 760, 2445,␊ |
749 | 374, 2445, 2443, 2439, 2436, 2416, 504, 2414, 530, 5434,␊ |
750 | 425, 2421, 2424, 534, 709, 0, 5434, 2422, 5434, 541,␊ |
751 | ␊ |
752 | 5434, 0, 5434, 421, 2404, 1559, 1550, 2375, 2368, 2363,␊ |
753 | 2338, 2343, 2342, 2322, 2330, 2322, 0, 5434, 2346, 1597,␊ |
754 | 5434, 2349, 2313, 784, 693, 0, 0, 2343, 2319, 1620,␊ |
755 | 2280, 0, 695, 2307, 2302, 1639, 0, 2304, 2288, 1658,␊ |
756 | 0, 5434, 2300, 2265, 0, 5434, 0, 2285, 2269, 5434,␊ |
757 | 0, 5434, 2281, 2269, 720, 2256, 2246, 5434, 0, 2231,␊ |
758 | 5434, 5434, 767, 2234, 1242, 2204, 2199, 2197, 2196, 2191,␊ |
759 | 5434, 2184, 2172, 2160, 2157, 2156, 0, 2172, 0, 0,␊ |
760 | 2148, 2144, 2136, 5434, 2132, 2131, 2155, 5434, 2142, 812,␊ |
761 | 0, 745, 816, 766, 794, 0, 5434, 2133, 2123, 822,␊ |
762 | ␊ |
763 | 847, 995, 2115, 0, 0, 838, 778, 802, 5434, 777,␊ |
764 | 2126, 2125, 5434, 823, 5434, 2108, 2120, 5434, 2102, 5434,␊ |
765 | 5434, 2094, 0, 2065, 2063, 948, 2058, 2069, 2068, 2045,␊ |
766 | 2057, 2048, 656, 2033, 2046, 2035, 2028, 2031, 2035, 2019,␊ |
767 | 2023, 0, 0, 2018, 5434, 2034, 0, 767, 0, 1999,␊ |
768 | 853, 5434, 0, 0, 2025, 0, 0, 1999, 2028, 5434,␊ |
769 | 2027, 847, 5434, 2024, 1290, 1255, 1268, 1302, 5434, 1991,␊ |
770 | 1982, 927, 1682, 1985, 1977, 1977, 1964, 1960, 1971, 0,␊ |
771 | 1006, 796, 1969, 1959, 1984, 5434, 995, 922, 5434, 5434,␊ |
772 | 1006, 1017, 1145, 0, 840, 1984, 5434, 1966, 1945, 1926,␊ |
773 | ␊ |
774 | 5434, 1931, 1914, 1917, 1919, 1908, 1911, 1910, 1909, 1148,␊ |
775 | 1906, 1895, 1891, 1880, 1871, 1881, 1865, 1308, 0, 0,␊ |
776 | 1859, 1892, 5434, 1008, 966, 1316, 1443, 984, 1153, 1310,␊ |
777 | 1478, 1556, 1845, 1838, 5434, 5434, 928, 1833, 1738, 1155,␊ |
778 | 1831, 1814, 1827, 1852, 5434, 956, 1817, 0, 1222, 1840,␊ |
779 | 1824, 5434, 1818, 1358, 1534, 1791, 1156, 1775, 1779, 1764,␊ |
780 | 1763, 1644, 1627, 1233, 1248, 1622, 1615, 1601, 1604, 1603,␊ |
781 | 1609, 1592, 1589, 1580, 1574, 1586, 1581, 1562, 1569, 1561,␊ |
782 | 1560, 1585, 1584, 1612, 1792, 1007, 5434, 1795, 1798, 1802,␊ |
783 | 1554, 1583, 989, 1543, 5434, 1223, 5434, 1238, 1279, 1543,␊ |
784 | ␊ |
785 | 1570, 1531, 1362, 1807, 1321, 1522, 1514, 1514, 1510, 1517,␊ |
786 | 1504, 1371, 5434, 1374, 1503, 1496, 1490, 1491, 1486, 1469,␊ |
787 | 1472, 1474, 1458, 1452, 1445, 1446, 1452, 1441, 1438, 1441,␊ |
788 | 1817, 1821, 1827, 1832, 1836, 1467, 1251, 1297, 5434, 1449,␊ |
789 | 5434, 1346, 1497, 1840, 1441, 5434, 1421, 1416, 1417, 1411,␊ |
790 | 1395, 1401, 1407, 1341, 1338, 1328, 1305, 1308, 1293, 1305,␊ |
791 | 1294, 1298, 1282, 1272, 1283, 1265, 1301, 1855, 1861, 1874,␊ |
792 | 1880, 1884, 0, 1516, 1893, 1296, 1255, 1217, 1203, 1187,␊ |
793 | 1177, 1140, 0, 1138, 1122, 1112, 1109, 980, 979, 963,␊ |
794 | 969, 950, 1369, 5434, 1908, 1914, 1903, 1918, 1927, 0,␊ |
795 | ␊ |
796 | 1595, 1938, 1947, 937, 943, 929, 5434, 912, 912, 905,␊ |
797 | 884, 825, 805, 806, 1955, 1961, 1966, 1974, 1981, 1635,␊ |
798 | 1986, 1624, 774, 779, 713, 692, 659, 503, 464, 1995,␊ |
799 | 2000, 2020, 2026, 2029, 1654, 2041, 2014, 379, 328, 234,␊ |
800 | 2052, 2055, 2058, 2066, 2081, 1888, 2085, 2094, 202, 2110,␊ |
801 | 2113, 2100, 2123, 2137, 2142, 2152, 2133, 2157, 2167, 2170,␊ |
802 | 2179, 2146, 2190, 2205, 2193, 2214, 2219, 2199, 2224, 2233,␊ |
803 | 2210, 2238, 2247, 2252, 2257, 2267, 2262, 2272, 2277, 2286,␊ |
804 | 2289, 2292, 2304, 2307, 2319, 2310, 2324, 2334, 2329, 2339,␊ |
805 | 2344, 2349, 2356, 2365, 2374, 2381, 2386, 2377, 2391, 2401,␊ |
806 | ␊ |
807 | 2396, 2406, 2411, 2420, 2430, 2440, 2433, 2449, 2459, 2453,␊ |
808 | 2464, 2473, 2468, 2478, 2488, 2493, 2497, 2507, 2500, 2512,␊ |
809 | 2521, 2516, 2526, 2541, 2530, 2546, 2555, 2535, 2560, 2569,␊ |
810 | 2564, 2574, 2583, 2578, 2588, 2593, 2598, 2602, 2617, 2607,␊ |
811 | 2622, 2631, 2611, 2640, 2651, 2626, 2663, 2672, 2636, 2683,␊ |
812 | 2688, 2693, 2697, 2706, 2711, 2716, 2725, 2719, 2730, 2741,␊ |
813 | 2734, 2746, 2751, 2763, 2766, 2771, 2780, 2786, 2789, 2798,␊ |
814 | 2803, 2808, 2817, 2824, 2833, 2827, 2842, 2852, 2845, 2861,␊ |
815 | 2871, 2864, 2880, 2885, 2890, 2897, 2900, 2909, 2912, 2917,␊ |
816 | 2926, 2929, 2938, 2932, 2947, 2957, 2943, 2962, 2971, 2952,␊ |
817 | ␊ |
818 | 2980, 2991, 2984, 2996, 3005, 3000, 3010, 3015, 3024, 3028,␊ |
819 | 3037, 3031, 3046, 3057, 3062, 3068, 3077, 3071, 3089, 3092,␊ |
820 | 3101, 3104, 3115, 3109, 3124, 3129, 3134, 3138, 3147, 3156,␊ |
821 | 3161, 3170, 3175, 3181, 3186, 3191, 3195, 3200, 3209, 3212,␊ |
822 | 3215, 3227, 3230, 3239, 3233, 3244, 3253, 3248, 3262, 3267,␊ |
823 | 3272, 3279, 3292, 3301, 3305, 3308, 3319, 3324, 3327, 3336,␊ |
824 | 76, 3340, 3345, 3349, 3354, 3360, 3365, 3371, 3380, 3384,␊ |
825 | 3393, 3402, 3397, 3407, 3412, 3417, 3423, 3426, 5, 3432,␊ |
826 | 3436, 3439, 3445, 3449, 3454, 3459, 3464, 3469, 3478, 3484,␊ |
827 | 3491, 3497, 3501, 3506, 3511, 3516, 3521, 3524, 3530, 3536,␊ |
828 | ␊ |
829 | 3539, 3543, 3549, 3553, 3558, 3563, 3568, 3576, 3582, 3591,␊ |
830 | 3595, 3601, 3605, 3610, 3615, 3620, 3623, 3628, 3634, 3637,␊ |
831 | 3643, 3647, 3653, 3657, 3662, 3667, 3675, 3680, 3689, 3695,␊ |
832 | 3699, 3705, 3709, 3714, 3719, 3722, 3727, 3732, 3735, 3741,␊ |
833 | 3747, 3751, 3757, 3761, 3766, 3774, 3779, 3787, 3793, 3799,␊ |
834 | 3803, 3809, 3813, 3818, 3821, 5434, 3875, 3893, 3911, 3929,␊ |
835 | 3947, 3965, 3983, 4001, 4019, 4037, 4055, 4073, 4091, 4109,␊ |
836 | 4127, 4145, 4163, 4181, 4199, 846, 1016, 4217, 4235, 4253,␊ |
837 | 4270, 4288, 4304, 4321, 4338, 4356, 4372, 4389, 4404, 4420,␊ |
838 | 1207, 4437, 4455, 4472, 4490, 4507, 4524, 4541, 4559, 1251,␊ |
839 | ␊ |
840 | 1274, 1354, 4577, 1446, 4595, 4613, 4621, 4633, 4648, 1461,␊ |
841 | 4666, 4684, 1499, 4702, 4720, 4737, 4755, 4772, 4790, 4808,␊ |
842 | 4824, 4841, 4858, 4874, 4891, 4906, 4922, 1539, 4939, 4957,␊ |
843 | 4974, 4992, 5009, 5026, 5043, 5061, 1558, 1574, 1638, 1657,␊ |
844 | 5079, 5096, 5104, 5121, 5139, 1662, 5157, 5175, 1855, 5193,␊ |
845 | 5210, 5228, 5246, 5264, 5279, 5296, 5313, 5331, 5348, 5366,␊ |
846 | 5383, 5398, 1919, 5415␊ |
847 | } ;␊ |
848 | ␊ |
849 | static yyconst flex_int16_t yy_def[1265] =␊ |
850 | { 0,␊ |
851 | 1157, 1157, 1157, 1158, 1156, 5, 1156, 7, 1159, 1159,␊ |
852 | 1160, 1160, 1156, 13, 1161, 1161, 1162, 1162, 1156, 19,␊ |
853 | 1163, 1163, 19, 23, 1156, 25, 1156, 27, 1164, 1165,␊ |
854 | 1157, 1157, 1157, 1157, 1166, 1166, 1156, 37, 1166, 1166,␊ |
855 | 1167, 1167, 1168, 1168, 1169, 1169, 1156, 47, 1156, 49,␊ |
856 | 49, 51, 1170, 1170, 1171, 1171, 23, 57, 1172, 1172,␊ |
857 | 1173, 1173, 1174, 1174, 1156, 65, 1156, 1156, 1156, 1156,␊ |
858 | 1156, 1156, 1156, 1156, 1156, 1156, 1175, 1156, 1156, 1156,␊ |
859 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
860 | 1176, 1176, 1176, 1176, 1176, 1176, 1156, 1156, 1156, 1156,␊ |
861 | ␊ |
862 | 1156, 1156, 1156, 1177, 1177, 1177, 1156, 1178, 1178, 1156,␊ |
863 | 1178, 1156, 1179, 1156, 1178, 1178, 1180, 1180, 1180, 1156,␊ |
864 | 1180, 1180, 1181, 1180, 1156, 1156, 1156, 1156, 1156, 1182,␊ |
865 | 1156, 1156, 1183, 1156, 1183, 1156, 1156, 1156, 1184, 1184,␊ |
866 | 1156, 1184, 1184, 1185, 1184, 1186, 1186, 1186, 1186, 1186,␊ |
867 | 1186, 1187, 1188, 1188, 1156, 1188, 1188, 1188, 1156, 1188,␊ |
868 | 1189, 1156, 1156, 1156, 1156, 1156, 1190, 1156, 1156, 1156,␊ |
869 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1191,␊ |
870 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
871 | 1156, 1192, 1156, 1156, 1156, 1156, 1156, 1156, 1193, 1156,␊ |
872 | ␊ |
873 | 1156, 1193, 1156, 1156, 1193, 1156, 1193, 1194, 1194, 1156,␊ |
874 | 1194, 1156, 1194, 1194, 1191, 1194, 1156, 1156, 1156, 1195,␊ |
875 | 1196, 1156, 1195, 1197, 1195, 1156, 1195, 1198, 1156, 1156,␊ |
876 | 1198, 1156, 1198, 1198, 1198, 1199, 1156, 1199, 1199, 1199,␊ |
877 | 1199, 1156, 1156, 1156, 1156, 1156, 1156, 1200, 1156, 1200,␊ |
878 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1201, 1156, 1156,␊ |
879 | 1156, 1202, 1156, 1156, 1156, 1156, 1156, 1156, 1203, 1156,␊ |
880 | 1156, 1156, 1156, 1156, 1156, 1156, 1203, 1156, 1204, 1156,␊ |
881 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
882 | 1156, 1205, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
883 | ␊ |
884 | 1156, 1156, 1156, 1156, 1206, 1156, 1156, 1156, 1156, 1156,␊ |
885 | 1156, 1207, 1156, 1156, 1156, 1208, 1156, 1175, 1156, 1156,␊ |
886 | 1156, 1209, 1156, 1210, 1210, 1210, 1210, 1210, 1210, 1210,␊ |
887 | 1210, 1210, 1211, 1212, 1213, 1213, 1213, 1213, 1214, 1215,␊ |
888 | 1216, 1214, 1217, 1218, 1219, 1217, 1156, 1156, 1220, 1156,␊ |
889 | 1156, 1221, 1156, 1156, 1221, 1222, 1222, 1222, 1222, 1156,␊ |
890 | 1223, 1156, 1223, 1223, 1223, 1156, 1156, 1224, 1225, 1156,␊ |
891 | 1225, 1225, 1225, 1156, 1156, 1156, 1156, 1156, 1226, 1156,␊ |
892 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1227, 1156,␊ |
893 | 1156, 1156, 1156, 1156, 1156, 1228, 1156, 1156, 1156, 1229,␊ |
894 | ␊ |
895 | 1156, 1230, 1156, 1156, 1156, 1230, 1156, 1156, 1156, 1156,␊ |
896 | 1156, 1156, 1156, 1156, 1156, 1156, 1231, 1156, 1231, 1231,␊ |
897 | 1156, 1156, 1156, 1156, 1232, 1233, 1234, 1234, 1234, 1232,␊ |
898 | 1156, 1235, 1156, 1156, 1235, 1235, 1236, 1236, 1236, 1236,␊ |
899 | 1237, 1156, 1156, 1237, 1238, 1156, 1239, 1156, 1156, 1156,␊ |
900 | 1240, 1156, 1156, 1241, 1242, 1156, 1156, 1156, 1243, 1156,␊ |
901 | 1156, 1156, 1244, 1245, 1156, 1246, 1246, 1246, 1246, 1246,␊ |
902 | 1156, 1246, 1246, 1246, 1246, 1246, 1247, 1247, 1248, 1248,␊ |
903 | 1249, 1249, 1249, 1156, 1249, 1249, 1250, 1156, 1156, 1156,␊ |
904 | 1251, 1252, 1252, 1253, 1253, 1254, 1156, 1156, 1156, 1156,␊ |
905 | ␊ |
906 | 1156, 1255, 1256, 1256, 1256, 1257, 1257, 1257, 1156, 1225,␊ |
907 | 1225, 1225, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
908 | 1156, 1156, 1230, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
909 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
910 | 1156, 1231, 1231, 1156, 1156, 1234, 1234, 1232, 1234, 1156,␊ |
911 | 1156, 1156, 1235, 1235, 1236, 1236, 1236, 1237, 1258, 1156,␊ |
912 | 1156, 1156, 1156, 1245, 1259, 1156, 1156, 1156, 1156, 1246,␊ |
913 | 1246, 1246, 1156, 1246, 1246, 1246, 1246, 1246, 1246, 1247,␊ |
914 | 1249, 1249, 1249, 1249, 1260, 1156, 1156, 1252, 1156, 1156,␊ |
915 | 1156, 1156, 1255, 1256, 1257, 1225, 1156, 1156, 1156, 1156,␊ |
916 | ␊ |
917 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
918 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1234, 1236,␊ |
919 | 1237, 1261, 1156, 1156, 1259, 1259, 1259, 1156, 1259, 1156,␊ |
920 | 1156, 1156, 1246, 1246, 1156, 1156, 1156, 1246, 1156, 1246,␊ |
921 | 1246, 1246, 1246, 1246, 1156, 1156, 1249, 1249, 1249, 1156,␊ |
922 | 1156, 1156, 1156, 1156, 1255, 1156, 1156, 1156, 1156, 1156,␊ |
923 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
924 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
925 | 1237, 1156, 1156, 1259, 1259, 1156, 1156, 1156, 1156, 1156,␊ |
926 | 1246, 1246, 1156, 1156, 1156, 1156, 1156, 1246, 1246, 1246,␊ |
927 | ␊ |
928 | 1156, 1156, 1156, 1255, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
929 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
930 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1237,␊ |
931 | 1259, 1259, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1262,␊ |
932 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
933 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
934 | 1156, 1156, 1156, 1156, 1156, 1156, 1237, 1259, 1259, 1156,␊ |
935 | 1156, 1156, 1263, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
936 | 1156, 1156, 1264, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
937 | 1156, 1156, 1156, 1156, 1259, 1259, 1156, 1156, 1156, 1263,␊ |
938 | ␊ |
939 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
940 | 1156, 1156, 1156, 1156, 1259, 1259, 1156, 1156, 1156, 1156,␊ |
941 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1259,␊ |
942 | 1259, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
943 | 1259, 1259, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1259,␊ |
944 | 1259, 1156, 1156, 1156, 1156, 1156, 1156, 1259, 1259, 1156,␊ |
945 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
946 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
947 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
948 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
949 | ␊ |
950 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
951 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
952 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
953 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
954 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
955 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
956 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
957 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
958 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
959 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
960 | ␊ |
961 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
962 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
963 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
964 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
965 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
966 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
967 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
968 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
969 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
970 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
971 | ␊ |
972 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
973 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
974 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
975 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
976 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
977 | 1156, 1156, 1156, 1156, 1156, 0, 1156, 1156, 1156, 1156,␊ |
978 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
979 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
980 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
981 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
982 | ␊ |
983 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
984 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
985 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
986 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
987 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
988 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
989 | 1156, 1156, 1156, 1156␊ |
990 | } ;␊ |
991 | ␊ |
992 | static yyconst flex_int16_t yy_nxt[5491] =␊ |
993 | { 0,␊ |
994 | 1156, 69, 381, 70, 71, 69, 362, 70, 71, 1156,␊ |
995 | 69, 382, 70, 71, 314, 314, 72, 314, 315, 315,␊ |
996 | 72, 315, 333, 362, 73, 72, 334, 109, 73, 110,␊ |
997 | 111, 366, 112, 73, 1156, 113, 353, 354, 109, 367,␊ |
998 | 110, 111, 114, 112, 333, 327, 113, 328, 334, 336,␊ |
999 | 115, 337, 1156, 114, 154, 74, 155, 156, 746, 74,␊ |
1000 | 184, 115, 185, 186, 74, 76, 77, 78, 79, 157,␊ |
1001 | 344, 80, 314, 318, 345, 187, 315, 158, 319, 321,␊ |
1002 | 81, 116, 159, 188, 362, 357, 351, 322, 82, 358,␊ |
1003 | 83, 83, 116, 329, 323, 323, 323, 320, 320, 330,␊ |
1004 | ␊ |
1005 | 331, 362, 370, 323, 323, 350, 350, 350, 160, 374,␊ |
1006 | 375, 371, 391, 351, 189, 372, 431, 392, 410, 84,␊ |
1007 | 85, 86, 85, 87, 88, 85, 85, 85, 85, 85,␊ |
1008 | 85, 85, 85, 85, 85, 85, 89, 85, 85, 85,␊ |
1009 | 85, 85, 85, 85, 90, 85, 91, 91, 85, 85,␊ |
1010 | 85, 91, 91, 92, 93, 94, 91, 91, 91, 95,␊ |
1011 | 91, 91, 91, 91, 91, 91, 91, 91, 91, 96,␊ |
1012 | 91, 91, 91, 85, 85, 97, 98, 99, 98, 100,␊ |
1013 | 101, 98, 98, 98, 98, 98, 98, 98, 98, 98,␊ |
1014 | 98, 98, 102, 98, 98, 98, 98, 98, 98, 98,␊ |
1015 | ␊ |
1016 | 103, 98, 104, 104, 98, 98, 98, 104, 104, 104,␊ |
1017 | 104, 105, 104, 104, 104, 106, 104, 104, 104, 104,␊ |
1018 | 104, 104, 104, 104, 104, 104, 104, 104, 104, 98,␊ |
1019 | 98, 107, 118, 362, 70, 119, 118, 120, 70, 119,␊ |
1020 | 362, 120, 397, 398, 362, 370, 362, 121, 400, 387,␊ |
1021 | 362, 121, 363, 401, 545, 122, 364, 362, 365, 122,␊ |
1022 | 123, 362, 388, 362, 123, 394, 373, 333, 333, 395,␊ |
1023 | 404, 334, 334, 314, 405, 422, 545, 419, 428, 315,␊ |
1024 | 423, 424, 429, 434, 438, 314, 124, 435, 439, 315,␊ |
1025 | 124, 125, 126, 125, 127, 128, 125, 129, 125, 125,␊ |
1026 | ␊ |
1027 | 130, 125, 125, 125, 125, 125, 125, 131, 125, 125,␊ |
1028 | 125, 125, 125, 125, 125, 132, 125, 133, 133, 125,␊ |
1029 | 134, 125, 133, 133, 133, 133, 135, 133, 133, 133,␊ |
1030 | 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,␊ |
1031 | 133, 133, 133, 133, 136, 137, 138, 140, 370, 70,␊ |
1032 | 71, 140, 141, 70, 71, 314, 141, 510, 147, 315,␊ |
1033 | 70, 148, 142, 68, 376, 377, 142, 426, 426, 849,␊ |
1034 | 143, 362, 378, 149, 143, 144, 381, 426, 426, 144,␊ |
1035 | 68, 150, 427, 427, 147, 382, 70, 148, 362, 68,␊ |
1036 | 370, 380, 427, 427, 442, 443, 452, 453, 448, 149,␊ |
1037 | ␊ |
1038 | 430, 145, 449, 511, 314, 145, 68, 150, 315, 314,␊ |
1039 | 314, 456, 151, 315, 315, 457, 314, 321, 464, 465,␊ |
1040 | 315, 468, 481, 490, 490, 322, 499, 391, 366, 469,␊ |
1041 | 482, 545, 392, 460, 500, 500, 367, 403, 151, 68,␊ |
1042 | 69, 68, 70, 71, 68, 68, 68, 68, 68, 68,␊ |
1043 | 68, 68, 68, 68, 68, 72, 68, 68, 68, 68,␊ |
1044 | 68, 68, 68, 73, 68, 152, 152, 68, 68, 68,␊ |
1045 | 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,␊ |
1046 | 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,␊ |
1047 | 152, 152, 68, 68, 74, 154, 321, 155, 156, 191,␊ |
1048 | ␊ |
1049 | 192, 193, 194, 318, 322, 195, 387, 366, 319, 321,␊ |
1050 | 157, 323, 323, 323, 196, 367, 545, 322, 158, 388,␊ |
1051 | 323, 323, 197, 159, 323, 323, 323, 320, 320, 477,␊ |
1052 | 362, 479, 387, 323, 323, 493, 501, 501, 501, 518,␊ |
1053 | 507, 495, 840, 400, 351, 388, 519, 362, 401, 160,␊ |
1054 | 161, 161, 477, 198, 479, 161, 161, 161, 161, 161,␊ |
1055 | 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,␊ |
1056 | 161, 161, 161, 161, 161, 161, 161, 68, 69, 162,␊ |
1057 | 70, 71, 68, 68, 68, 68, 68, 163, 164, 68,␊ |
1058 | 165, 68, 166, 72, 68, 68, 68, 68, 68, 68,␊ |
1059 | ␊ |
1060 | 68, 73, 68, 167, 167, 68, 168, 68, 167, 167,␊ |
1061 | 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,␊ |
1062 | 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,␊ |
1063 | 68, 68, 74, 169, 170, 171, 172, 173, 169, 174,␊ |
1064 | 175, 169, 176, 169, 169, 169, 169, 169, 169, 177,␊ |
1065 | 169, 169, 169, 169, 169, 169, 169, 178, 179, 180,␊ |
1066 | 180, 169, 181, 169, 180, 180, 180, 180, 180, 180,␊ |
1067 | 180, 180, 180, 180, 180, 180, 180, 180, 180, 180,␊ |
1068 | 180, 180, 180, 180, 180, 180, 169, 169, 182, 69,␊ |
1069 | 608, 70, 71, 69, 426, 70, 71, 551, 69, 609,␊ |
1070 | ␊ |
1071 | 70, 71, 552, 69, 72, 70, 71, 471, 72, 427,␊ |
1072 | 471, 545, 73, 72, 520, 471, 73, 221, 72, 222,␊ |
1073 | 223, 73, 350, 350, 350, 521, 73, 350, 350, 350,␊ |
1074 | 351, 221, 224, 222, 223, 351, 362, 562, 562, 472,␊ |
1075 | 225, 226, 506, 74, 545, 226, 224, 74, 473, 376,␊ |
1076 | 377, 477, 74, 362, 225, 226, 839, 74, 200, 226,␊ |
1077 | 201, 202, 376, 377, 229, 513, 230, 231, 426, 203,␊ |
1078 | 378, 227, 479, 204, 477, 232, 355, 464, 465, 233,␊ |
1079 | 370, 205, 206, 427, 362, 227, 206, 234, 229, 380,␊ |
1080 | 230, 231, 545, 596, 237, 479, 222, 238, 646, 232,␊ |
1081 | ␊ |
1082 | 479, 362, 484, 233, 237, 484, 222, 238, 362, 239,␊ |
1083 | 484, 234, 207, 200, 545, 201, 202, 240, 235, 239,␊ |
1084 | 838, 586, 477, 479, 203, 362, 657, 240, 204, 587,␊ |
1085 | 587, 590, 588, 378, 485, 647, 205, 206, 545, 591,␊ |
1086 | 591, 206, 235, 486, 362, 477, 362, 829, 241, 592,␊ |
1087 | 592, 592, 380, 828, 595, 551, 623, 351, 241, 324,␊ |
1088 | 552, 362, 324, 362, 624, 624, 827, 207, 208, 209,␊ |
1089 | 208, 210, 211, 208, 208, 208, 208, 208, 208, 208,␊ |
1090 | 212, 208, 208, 208, 213, 208, 208, 208, 208, 208,␊ |
1091 | 208, 208, 214, 208, 215, 215, 208, 208, 208, 215,␊ |
1092 | ␊ |
1093 | 215, 215, 215, 215, 215, 215, 215, 215, 215, 215,␊ |
1094 | 215, 215, 215, 215, 215, 215, 215, 215, 215, 215,␊ |
1095 | 215, 208, 208, 216, 200, 826, 201, 202, 477, 635,␊ |
1096 | 693, 264, 635, 70, 265, 217, 266, 635, 264, 218,␊ |
1097 | 70, 265, 272, 266, 70, 273, 267, 205, 219, 825,␊ |
1098 | 274, 477, 219, 267, 268, 824, 601, 275, 646, 269,␊ |
1099 | 272, 268, 70, 273, 610, 276, 269, 694, 274, 1156,␊ |
1100 | 277, 657, 350, 350, 350, 275, 601, 628, 207, 200,␊ |
1101 | 351, 201, 202, 276, 823, 270, 686, 687, 277, 657,␊ |
1102 | 217, 693, 270, 814, 218, 702, 278, 350, 350, 350,␊ |
1103 | ␊ |
1104 | 813, 601, 205, 219, 488, 351, 812, 219, 645, 686,␊ |
1105 | 687, 645, 651, 651, 278, 652, 645, 560, 502, 654,␊ |
1106 | 654, 654, 811, 653, 653, 683, 683, 351, 694, 335,␊ |
1107 | 593, 810, 335, 207, 242, 243, 242, 244, 245, 242,␊ |
1108 | 242, 242, 242, 242, 242, 242, 242, 242, 242, 242,␊ |
1109 | 246, 242, 242, 242, 242, 242, 242, 242, 247, 242,␊ |
1110 | 248, 248, 242, 249, 242, 248, 248, 248, 250, 248,␊ |
1111 | 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,␊ |
1112 | 248, 248, 248, 248, 248, 248, 248, 242, 242, 251,␊ |
1113 | 252, 253, 252, 254, 255, 252, 252, 252, 252, 252,␊ |
1114 | ␊ |
1115 | 252, 252, 252, 252, 252, 252, 256, 252, 252, 252,␊ |
1116 | 252, 252, 252, 252, 257, 252, 258, 258, 252, 259,␊ |
1117 | 252, 258, 258, 258, 258, 258, 258, 258, 258, 258,␊ |
1118 | 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,␊ |
1119 | 258, 258, 258, 252, 252, 260, 261, 350, 350, 350,␊ |
1120 | 665, 665, 665, 809, 610, 351, 1156, 696, 705, 705,␊ |
1121 | 705, 262, 262, 808, 628, 697, 262, 262, 262, 262,␊ |
1122 | 262, 262, 262, 262, 262, 262, 262, 262, 262, 262,␊ |
1123 | 262, 262, 262, 262, 262, 262, 262, 262, 279, 279,␊ |
1124 | 610, 655, 657, 279, 279, 279, 279, 279, 279, 279,␊ |
1125 | ␊ |
1126 | 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,␊ |
1127 | 279, 279, 279, 279, 279, 281, 806, 87, 282, 281,␊ |
1128 | 396, 87, 282, 396, 484, 696, 300, 484, 70, 301,␊ |
1129 | 283, 302, 484, 697, 283, 712, 713, 714, 284, 657,␊ |
1130 | 738, 303, 284, 285, 566, 567, 568, 285, 739, 304,␊ |
1131 | 665, 665, 665, 635, 305, 657, 635, 630, 631, 632,␊ |
1132 | 805, 635, 569, 300, 441, 70, 301, 441, 302, 286,␊ |
1133 | 632, 632, 632, 286, 288, 569, 289, 290, 303, 291,␊ |
1134 | 306, 740, 292, 293, 294, 741, 304, 445, 569, 295,␊ |
1135 | 445, 305, 626, 567, 627, 569, 804, 296, 297, 738,␊ |
1136 | ␊ |
1137 | 741, 628, 803, 793, 632, 632, 632, 739, 569, 792,␊ |
1138 | 629, 794, 688, 689, 690, 791, 790, 306, 684, 631,␊ |
1139 | 685, 569, 569, 705, 705, 705, 789, 628, 298, 288,␊ |
1140 | 569, 289, 290, 788, 291, 787, 629, 292, 293, 294,␊ |
1141 | 545, 673, 674, 629, 295, 610, 675, 786, 645, 676,␊ |
1142 | 677, 645, 296, 297, 678, 569, 645, 610, 679, 680,␊ |
1143 | 703, 703, 703, 569, 743, 743, 743, 447, 351, 629,␊ |
1144 | 447, 793, 351, 712, 713, 714, 714, 713, 714, 794,␊ |
1145 | 610, 785, 784, 298, 307, 308, 307, 70, 309, 307,␊ |
1146 | 307, 307, 307, 307, 307, 307, 307, 307, 307, 307,␊ |
1147 | ␊ |
1148 | 310, 307, 307, 307, 307, 307, 307, 307, 311, 307,␊ |
1149 | 312, 312, 307, 307, 307, 312, 312, 312, 312, 312,␊ |
1150 | 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,␊ |
1151 | 312, 312, 312, 312, 312, 312, 312, 307, 307, 313,␊ |
1152 | 407, 783, 782, 781, 407, 685, 632, 685, 408, 409,␊ |
1153 | 410, 740, 780, 411, 628, 741, 412, 413, 779, 451,␊ |
1154 | 778, 414, 451, 629, 777, 415, 416, 491, 776, 736,␊ |
1155 | 741, 462, 491, 491, 324, 767, 491, 324, 462, 766,␊ |
1156 | 690, 690, 690, 491, 491, 491, 496, 765, 764, 763,␊ |
1157 | 496, 496, 496, 762, 761, 496, 629, 496, 569, 774,␊ |
1158 | ␊ |
1159 | 774, 774, 496, 496, 496, 505, 545, 351, 760, 505,␊ |
1160 | 505, 505, 335, 759, 505, 335, 505, 758, 801, 801,␊ |
1161 | 801, 505, 505, 505, 508, 362, 351, 757, 508, 508,␊ |
1162 | 508, 569, 756, 508, 755, 508, 350, 350, 350, 754,␊ |
1163 | 508, 508, 509, 370, 351, 512, 753, 752, 751, 512,␊ |
1164 | 512, 512, 396, 750, 512, 396, 512, 749, 690, 690,␊ |
1165 | 690, 512, 512, 512, 523, 748, 747, 742, 523, 523,␊ |
1166 | 523, 441, 701, 523, 441, 462, 569, 704, 699, 737,␊ |
1167 | 523, 523, 523, 524, 525, 736, 526, 445, 527, 326,␊ |
1168 | 445, 528, 529, 560, 560, 730, 530, 820, 820, 820,␊ |
1169 | ␊ |
1170 | 531, 532, 543, 729, 728, 351, 543, 543, 543, 569,␊ |
1171 | 727, 543, 726, 543, 731, 689, 732, 725, 543, 543,␊ |
1172 | 543, 426, 724, 628, 723, 548, 837, 837, 837, 548,␊ |
1173 | 548, 548, 629, 722, 548, 721, 549, 835, 835, 835,␊ |
1174 | 720, 548, 548, 548, 554, 351, 719, 718, 554, 554,␊ |
1175 | 554, 447, 717, 554, 447, 554, 846, 846, 846, 716,␊ |
1176 | 554, 554, 554, 557, 351, 629, 715, 557, 557, 557,␊ |
1177 | 451, 711, 557, 451, 557, 324, 710, 746, 324, 557,␊ |
1178 | 557, 557, 636, 636, 637, 636, 636, 636, 636, 636,␊ |
1179 | 636, 636, 636, 636, 636, 636, 636, 636, 636, 324,␊ |
1180 | ␊ |
1181 | 324, 324, 636, 636, 636, 636, 636, 636, 324, 324,␊ |
1182 | 636, 636, 636, 324, 324, 324, 324, 324, 324, 324,␊ |
1183 | 324, 638, 324, 324, 324, 324, 324, 324, 324, 324,␊ |
1184 | 324, 324, 324, 324, 324, 636, 636, 636, 695, 695,␊ |
1185 | 695, 695, 695, 695, 695, 695, 695, 695, 695, 695,␊ |
1186 | 695, 695, 695, 695, 695, 324, 324, 324, 695, 695,␊ |
1187 | 695, 695, 695, 695, 324, 324, 695, 695, 695, 324,␊ |
1188 | 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,␊ |
1189 | 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,␊ |
1190 | 324, 695, 695, 695, 732, 690, 732, 733, 734, 735,␊ |
1191 | ␊ |
1192 | 735, 735, 735, 628, 735, 735, 735, 709, 708, 744,␊ |
1193 | 744, 744, 629, 745, 707, 569, 706, 351, 569, 768,␊ |
1194 | 734, 769, 569, 769, 735, 769, 657, 652, 628, 770,␊ |
1195 | 771, 772, 628, 488, 772, 772, 772, 629, 772, 772,␊ |
1196 | 772, 629, 775, 775, 775, 629, 745, 569, 569, 488,␊ |
1197 | 351, 569, 569, 581, 701, 569, 569, 795, 771, 796,␊ |
1198 | 746, 700, 699, 796, 772, 796, 628, 698, 335, 572,␊ |
1199 | 629, 335, 628, 692, 629, 629, 797, 798, 799, 691,␊ |
1200 | 569, 629, 799, 799, 799, 569, 799, 799, 799, 569,␊ |
1201 | 855, 855, 855, 746, 569, 802, 802, 802, 351, 745,␊ |
1202 | ␊ |
1203 | 569, 560, 681, 351, 569, 817, 818, 819, 629, 672,␊ |
1204 | 815, 798, 816, 671, 629, 670, 816, 799, 816, 628,␊ |
1205 | 819, 819, 819, 569, 669, 628, 668, 569, 629, 819,␊ |
1206 | 819, 819, 800, 569, 629, 800, 667, 569, 569, 666,␊ |
1207 | 821, 821, 821, 664, 745, 610, 746, 569, 351, 822,␊ |
1208 | 822, 822, 663, 745, 662, 661, 569, 830, 818, 831,␊ |
1209 | 660, 629, 659, 831, 819, 831, 628, 629, 832, 833,␊ |
1210 | 834, 569, 628, 658, 657, 629, 834, 834, 834, 656,␊ |
1211 | 569, 629, 598, 834, 834, 834, 569, 370, 836, 836,␊ |
1212 | 836, 746, 745, 488, 569, 649, 351, 841, 833, 842,␊ |
1213 | ␊ |
1214 | 746, 569, 842, 834, 842, 648, 628, 644, 629, 643,␊ |
1215 | 642, 628, 641, 640, 629, 629, 848, 848, 848, 569,␊ |
1216 | 629, 639, 843, 844, 845, 634, 633, 569, 845, 845,␊ |
1217 | 845, 845, 845, 845, 569, 565, 560, 560, 621, 746,␊ |
1218 | 569, 620, 609, 847, 847, 847, 569, 745, 629, 569,␊ |
1219 | 619, 351, 618, 629, 850, 844, 851, 851, 845, 851,␊ |
1220 | 852, 853, 854, 628, 617, 616, 628, 746, 854, 854,␊ |
1221 | 854, 615, 629, 569, 614, 629, 613, 612, 569, 569,␊ |
1222 | 611, 610, 569, 854, 854, 854, 569, 856, 856, 856,␊ |
1223 | 607, 745, 606, 605, 746, 351, 857, 857, 857, 604,␊ |
1224 | ␊ |
1225 | 603, 569, 852, 853, 854, 629, 602, 600, 629, 599,␊ |
1226 | 598, 569, 858, 853, 859, 859, 854, 859, 563, 569,␊ |
1227 | 569, 628, 517, 597, 628, 854, 854, 854, 370, 370,␊ |
1228 | 629, 594, 589, 629, 569, 862, 862, 862, 746, 854,␊ |
1229 | 854, 854, 589, 569, 860, 860, 860, 746, 865, 865,␊ |
1230 | 865, 488, 351, 569, 861, 861, 861, 569, 745, 858,␊ |
1231 | 853, 859, 351, 629, 488, 485, 629, 584, 628, 859,␊ |
1232 | 854, 859, 863, 863, 863, 583, 569, 629, 628, 582,␊ |
1233 | 351, 864, 864, 864, 581, 745, 746, 629, 580, 351,␊ |
1234 | 569, 579, 866, 866, 866, 868, 868, 868, 578, 746,␊ |
1235 | ␊ |
1236 | 351, 871, 871, 871, 577, 746, 576, 867, 867, 867,␊ |
1237 | 629, 745, 874, 874, 874, 351, 869, 869, 869, 575,␊ |
1238 | 629, 870, 870, 870, 351, 745, 872, 872, 872, 351,␊ |
1239 | 574, 573, 746, 572, 351, 873, 873, 873, 571, 745,␊ |
1240 | 875, 875, 875, 351, 570, 565, 746, 563, 351, 876,␊ |
1241 | 876, 876, 746, 745, 877, 877, 877, 351, 746, 878,␊ |
1242 | 878, 878, 461, 746, 880, 880, 880, 351, 460, 879,␊ |
1243 | 879, 879, 746, 745, 881, 881, 881, 351, 560, 882,␊ |
1244 | 882, 882, 351, 745, 452, 461, 746, 351, 883, 883,␊ |
1245 | 883, 884, 884, 884, 885, 885, 885, 460, 745, 351,␊ |
1246 | ␊ |
1247 | 746, 558, 351, 442, 556, 746, 886, 886, 886, 887,␊ |
1248 | 887, 887, 889, 889, 889, 746, 555, 351, 553, 460,␊ |
1249 | 746, 888, 888, 888, 550, 745, 890, 890, 890, 351,␊ |
1250 | 746, 892, 892, 892, 351, 547, 891, 891, 891, 746,␊ |
1251 | 745, 893, 893, 893, 351, 746, 894, 894, 894, 351,␊ |
1252 | 745, 895, 895, 895, 351, 546, 544, 746, 896, 896,␊ |
1253 | 896, 460, 542, 746, 541, 540, 351, 897, 897, 897,␊ |
1254 | 539, 745, 746, 538, 537, 351, 898, 898, 898, 901,␊ |
1255 | 901, 901, 746, 899, 899, 899, 536, 746, 900, 900,␊ |
1256 | 900, 351, 745, 902, 902, 902, 351, 746, 904, 904,␊ |
1257 | ␊ |
1258 | 904, 351, 746, 903, 903, 903, 535, 745, 905, 905,␊ |
1259 | 905, 351, 534, 906, 906, 906, 351, 745, 746, 533,␊ |
1260 | 522, 351, 907, 907, 907, 397, 517, 746, 393, 516,␊ |
1261 | 746, 515, 908, 908, 908, 910, 910, 910, 385, 746,␊ |
1262 | 351, 384, 909, 909, 909, 383, 745, 384, 514, 746,␊ |
1263 | 351, 911, 911, 911, 746, 913, 913, 913, 374, 351,␊ |
1264 | 370, 912, 912, 912, 746, 745, 914, 914, 914, 351,␊ |
1265 | 916, 916, 916, 746, 351, 915, 915, 915, 504, 745,␊ |
1266 | 917, 917, 917, 351, 503, 353, 746, 497, 351, 488,␊ |
1267 | 918, 918, 918, 746, 745, 919, 919, 919, 351, 920,␊ |
1268 | ␊ |
1269 | 920, 920, 922, 922, 922, 483, 746, 351, 480, 921,␊ |
1270 | 921, 921, 746, 745, 923, 923, 923, 351, 925, 925,␊ |
1271 | 925, 746, 351, 924, 924, 924, 746, 745, 926, 926,␊ |
1272 | 926, 351, 928, 928, 928, 478, 351, 931, 931, 931,␊ |
1273 | 476, 746, 475, 927, 927, 927, 746, 745, 929, 929,␊ |
1274 | 929, 351, 474, 746, 470, 467, 351, 930, 930, 930,␊ |
1275 | 746, 745, 932, 932, 932, 351, 934, 934, 934, 746,␊ |
1276 | 351, 933, 933, 933, 746, 745, 935, 935, 935, 351,␊ |
1277 | 937, 937, 937, 746, 351, 936, 936, 936, 746, 745,␊ |
1278 | 938, 938, 938, 351, 746, 939, 939, 939, 351, 745,␊ |
1279 | ␊ |
1280 | 940, 940, 940, 351, 941, 941, 941, 466, 746, 943,␊ |
1281 | 943, 943, 351, 946, 946, 946, 461, 746, 460, 942,␊ |
1282 | 942, 942, 746, 745, 944, 944, 944, 351, 949, 949,␊ |
1283 | 949, 746, 351, 945, 945, 945, 746, 745, 952, 952,␊ |
1284 | 952, 351, 947, 947, 947, 316, 746, 316, 316, 455,␊ |
1285 | 351, 746, 316, 948, 948, 948, 316, 745, 316, 446,␊ |
1286 | 746, 351, 316, 444, 746, 950, 950, 950, 316, 440,␊ |
1287 | 746, 436, 433, 351, 951, 951, 951, 421, 745, 746,␊ |
1288 | 420, 418, 351, 406, 746, 953, 953, 953, 403, 746,␊ |
1289 | 954, 954, 954, 351, 745, 955, 955, 955, 351, 956,␊ |
1290 | ␊ |
1291 | 956, 956, 316, 316, 746, 316, 393, 351, 957, 957,␊ |
1292 | 957, 390, 745, 958, 958, 958, 351, 386, 959, 959,␊ |
1293 | 959, 961, 961, 961, 385, 746, 351, 960, 960, 960,␊ |
1294 | 384, 745, 962, 962, 962, 351, 964, 964, 964, 383,␊ |
1295 | 351, 746, 370, 963, 963, 963, 746, 745, 965, 965,␊ |
1296 | 965, 351, 370, 966, 966, 966, 351, 745, 370, 746,␊ |
1297 | 370, 351, 359, 316, 746, 967, 967, 967, 968, 968,␊ |
1298 | 968, 349, 746, 969, 969, 969, 351, 745, 746, 346,␊ |
1299 | 342, 351, 970, 970, 970, 341, 338, 746, 971, 971,␊ |
1300 | 971, 972, 972, 972, 746, 745, 351, 316, 332, 351,␊ |
1301 | ␊ |
1302 | 973, 973, 973, 326, 746, 974, 974, 974, 325, 316,␊ |
1303 | 975, 975, 975, 351, 745, 316, 746, 316, 351, 976,␊ |
1304 | 976, 976, 1156, 1156, 746, 1156, 977, 977, 977, 979,␊ |
1305 | 979, 979, 1156, 746, 351, 978, 978, 978, 1156, 745,␊ |
1306 | 1156, 1156, 746, 351, 980, 980, 980, 982, 982, 982,␊ |
1307 | 1156, 746, 351, 1156, 981, 981, 981, 1156, 745, 1156,␊ |
1308 | 1156, 746, 351, 983, 983, 983, 985, 985, 985, 1156,␊ |
1309 | 746, 351, 1156, 984, 984, 984, 1156, 745, 1156, 1156,␊ |
1310 | 746, 351, 986, 986, 986, 1156, 746, 987, 987, 987,␊ |
1311 | 351, 745, 988, 988, 988, 351, 1156, 1156, 746, 989,␊ |
1312 | ␊ |
1313 | 989, 989, 990, 990, 990, 746, 745, 351, 1156, 1156,␊ |
1314 | 351, 991, 991, 991, 992, 992, 992, 746, 1156, 993,␊ |
1315 | 993, 993, 351, 745, 746, 1156, 1156, 351, 994, 994,␊ |
1316 | 994, 995, 995, 995, 997, 997, 997, 1156, 746, 351,␊ |
1317 | 996, 996, 996, 746, 745, 1000, 1000, 1000, 351, 998,␊ |
1318 | 998, 998, 1156, 746, 1003, 1003, 1003, 351, 1156, 999,␊ |
1319 | 999, 999, 746, 745, 1001, 1001, 1001, 351, 1156, 1156,␊ |
1320 | 746, 1156, 351, 1002, 1002, 1002, 1156, 745, 1156, 746,␊ |
1321 | 1156, 351, 1004, 1004, 1004, 746, 1006, 1006, 1006, 1156,␊ |
1322 | 351, 746, 1156, 1005, 1005, 1005, 746, 745, 1007, 1007,␊ |
1323 | ␊ |
1324 | 1007, 351, 1009, 1009, 1009, 746, 351, 1008, 1008, 1008,␊ |
1325 | 746, 745, 1010, 1010, 1010, 351, 1156, 1011, 1011, 1011,␊ |
1326 | 351, 745, 1156, 1156, 746, 351, 1012, 1012, 1012, 1156,␊ |
1327 | 1013, 1013, 1013, 1015, 1015, 1015, 1156, 746, 351, 1014,␊ |
1328 | 1014, 1014, 1156, 745, 746, 1156, 1156, 351, 1016, 1016,␊ |
1329 | 1016, 1156, 1156, 746, 1156, 1156, 351, 1156, 746, 1017,␊ |
1330 | 1017, 1017, 1156, 745, 1018, 1018, 1018, 351, 746, 1156,␊ |
1331 | 1019, 1019, 1019, 1021, 1021, 1021, 1156, 746, 351, 1020,␊ |
1332 | 1020, 1020, 1156, 745, 746, 1156, 1156, 351, 1156, 1156,␊ |
1333 | 746, 1022, 1022, 1022, 1023, 1023, 1023, 1156, 745, 351,␊ |
1334 | ␊ |
1335 | 1156, 1156, 351, 1024, 1024, 1024, 1025, 1025, 1025, 1156,␊ |
1336 | 746, 1027, 1027, 1027, 351, 746, 1156, 1026, 1026, 1026,␊ |
1337 | 1156, 745, 1156, 1156, 746, 351, 1028, 1028, 1028, 1156,␊ |
1338 | 746, 1029, 1029, 1029, 351, 745, 1030, 1030, 1030, 351,␊ |
1339 | 1031, 1031, 1031, 1156, 1156, 746, 1156, 1156, 351, 1032,␊ |
1340 | 1032, 1032, 1156, 745, 746, 1156, 1156, 351, 1033, 1033,␊ |
1341 | 1033, 1156, 746, 1034, 1034, 1034, 1156, 1156, 746, 1156,␊ |
1342 | 1156, 351, 1035, 1035, 1035, 1156, 745, 1036, 1036, 1036,␊ |
1343 | 351, 1156, 746, 1037, 1037, 1037, 1156, 746, 1038, 1038,␊ |
1344 | 1038, 351, 745, 1039, 1039, 1039, 351, 1040, 1040, 1040,␊ |
1345 | ␊ |
1346 | 746, 1156, 1041, 1041, 1041, 351, 745, 1156, 1156, 746,␊ |
1347 | 351, 1042, 1042, 1042, 1043, 1043, 1043, 1044, 1044, 1044,␊ |
1348 | 1156, 745, 351, 746, 1156, 351, 1156, 1156, 746, 1045,␊ |
1349 | 1045, 1045, 1046, 1046, 1046, 1048, 1048, 1048, 1156, 746,␊ |
1350 | 351, 1047, 1047, 1047, 746, 745, 1049, 1049, 1049, 351,␊ |
1351 | 1051, 1051, 1051, 746, 351, 1050, 1050, 1050, 1156, 745,␊ |
1352 | 1156, 1156, 746, 351, 1052, 1052, 1052, 1156, 746, 1053,␊ |
1353 | 1053, 1053, 351, 745, 1054, 1054, 1054, 351, 1156, 1156,␊ |
1354 | 746, 1055, 1055, 1055, 1156, 1156, 746, 1156, 1156, 351,␊ |
1355 | 1156, 1156, 746, 1156, 1056, 1056, 1056, 1156, 745, 1156,␊ |
1356 | ␊ |
1357 | 1156, 746, 351, 1057, 1057, 1057, 746, 1058, 1058, 1058,␊ |
1358 | 1059, 1059, 1059, 1156, 745, 351, 1156, 1156, 351, 1156,␊ |
1359 | 746, 1060, 1060, 1060, 1156, 746, 1061, 1061, 1061, 1062,␊ |
1360 | 1062, 1062, 1156, 745, 351, 1156, 1156, 351, 1063, 1063,␊ |
1361 | 1063, 1156, 1064, 1064, 1064, 746, 745, 1065, 1065, 1065,␊ |
1362 | 351, 1066, 1066, 1066, 746, 745, 1067, 1067, 1067, 351,␊ |
1363 | 1156, 746, 1068, 1068, 1068, 1156, 745, 1069, 1069, 1069,␊ |
1364 | 351, 1156, 746, 1070, 1070, 1070, 1156, 745, 1156, 1156,␊ |
1365 | 746, 351, 1071, 1071, 1071, 1156, 1072, 1072, 1072, 746,␊ |
1366 | 745, 1156, 1156, 746, 351, 1073, 1073, 1073, 746, 1075,␊ |
1367 | ␊ |
1368 | 1075, 1075, 746, 1156, 1074, 1074, 1074, 746, 745, 1076,␊ |
1369 | 1076, 1076, 351, 746, 1077, 1077, 1077, 1156, 746, 1078,␊ |
1370 | 1078, 1078, 1156, 1156, 746, 1079, 1079, 1079, 1080, 1080,␊ |
1371 | 1080, 1156, 1156, 746, 1081, 1081, 1081, 746, 1082, 1082,␊ |
1372 | 1082, 1083, 1083, 1083, 1156, 1156, 746, 1084, 1084, 1084,␊ |
1373 | 746, 1085, 1085, 1085, 1156, 746, 1086, 1086, 1086, 1156,␊ |
1374 | 746, 1087, 1087, 1087, 1156, 746, 1088, 1088, 1088, 1156,␊ |
1375 | 746, 1089, 1089, 1089, 1156, 1156, 746, 1156, 1156, 746,␊ |
1376 | 1090, 1090, 1090, 1156, 1156, 746, 1091, 1091, 1091, 746,␊ |
1377 | 1156, 1156, 746, 1092, 1092, 1092, 1156, 1156, 746, 1093,␊ |
1378 | ␊ |
1379 | 1093, 1093, 746, 1094, 1094, 1094, 1156, 746, 1095, 1095,␊ |
1380 | 1095, 1156, 746, 1096, 1096, 1096, 1156, 746, 1097, 1097,␊ |
1381 | 1097, 1156, 746, 1098, 1098, 1098, 1099, 1099, 1099, 1156,␊ |
1382 | 1156, 746, 1100, 1100, 1100, 1156, 1156, 746, 1101, 1101,␊ |
1383 | 1101, 1102, 1102, 1102, 746, 1103, 1103, 1103, 1156, 1156,␊ |
1384 | 746, 1104, 1104, 1104, 746, 1105, 1105, 1105, 1156, 746,␊ |
1385 | 1106, 1106, 1106, 1156, 746, 1107, 1107, 1107, 1156, 746,␊ |
1386 | 1108, 1108, 1108, 1156, 746, 1156, 1156, 746, 1109, 1109,␊ |
1387 | 1109, 1156, 1156, 746, 1110, 1110, 1110, 1156, 1156, 746,␊ |
1388 | 1156, 1156, 746, 1111, 1111, 1111, 746, 1112, 1112, 1112,␊ |
1389 | ␊ |
1390 | 1156, 1156, 746, 1113, 1113, 1113, 746, 1114, 1114, 1114,␊ |
1391 | 1156, 746, 1115, 1115, 1115, 1156, 746, 1116, 1116, 1116,␊ |
1392 | 1156, 746, 1117, 1117, 1117, 1118, 1118, 1118, 1156, 746,␊ |
1393 | 1119, 1119, 1119, 1156, 1156, 746, 1120, 1120, 1120, 1121,␊ |
1394 | 1121, 1121, 1156, 1156, 746, 1122, 1122, 1122, 746, 1123,␊ |
1395 | 1123, 1123, 1156, 1156, 746, 1124, 1124, 1124, 746, 1125,␊ |
1396 | 1125, 1125, 1156, 746, 1126, 1126, 1126, 1156, 746, 1127,␊ |
1397 | 1127, 1127, 1156, 746, 1156, 1156, 746, 1128, 1128, 1128,␊ |
1398 | 1156, 746, 1129, 1129, 1129, 1156, 1156, 746, 1156, 1156,␊ |
1399 | 746, 1130, 1130, 1130, 1156, 1156, 746, 1131, 1131, 1131,␊ |
1400 | ␊ |
1401 | 746, 1132, 1132, 1132, 1156, 1156, 746, 1133, 1133, 1133,␊ |
1402 | 746, 1134, 1134, 1134, 1156, 746, 1135, 1135, 1135, 1156,␊ |
1403 | 746, 1136, 1136, 1136, 1137, 1137, 1137, 1156, 746, 1138,␊ |
1404 | 1138, 1138, 1156, 746, 1139, 1139, 1139, 1140, 1140, 1140,␊ |
1405 | 1156, 1156, 746, 1141, 1141, 1141, 1156, 1156, 746, 1142,␊ |
1406 | 1142, 1142, 746, 1143, 1143, 1143, 1156, 1156, 746, 1144,␊ |
1407 | 1144, 1144, 746, 1145, 1145, 1145, 1156, 746, 1146, 1146,␊ |
1408 | 1146, 1156, 746, 1156, 1156, 746, 1147, 1147, 1147, 1156,␊ |
1409 | 746, 1148, 1148, 1148, 1156, 746, 1156, 1156, 746, 1149,␊ |
1410 | 1149, 1149, 1156, 1156, 746, 1150, 1150, 1150, 1156, 1156,␊ |
1411 | ␊ |
1412 | 746, 1151, 1151, 1151, 746, 1152, 1152, 1152, 1156, 1156,␊ |
1413 | 746, 1153, 1153, 1153, 746, 1154, 1154, 1154, 1156, 746,␊ |
1414 | 1155, 1155, 1155, 1079, 1079, 1079, 1156, 746, 1156, 1156,␊ |
1415 | 1156, 1156, 746, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1416 | 746, 1156, 1156, 1156, 1156, 1156, 746, 1156, 1156, 1156,␊ |
1417 | 1156, 1156, 746, 1156, 1156, 1156, 746, 1156, 1156, 1156,␊ |
1418 | 1156, 1156, 746, 1156, 1156, 1156, 746, 1156, 1156, 1156,␊ |
1419 | 1156, 746, 1156, 1156, 746, 68, 68, 68, 68, 68,␊ |
1420 | 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,␊ |
1421 | 68, 68, 68, 75, 75, 75, 75, 75, 75, 75,␊ |
1422 | ␊ |
1423 | 75, 75, 75, 75, 75, 75, 75, 75, 75, 75,␊ |
1424 | 75, 108, 108, 108, 108, 108, 108, 108, 108, 108,␊ |
1425 | 108, 108, 108, 108, 108, 108, 108, 108, 108, 117,␊ |
1426 | 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,␊ |
1427 | 117, 117, 117, 117, 117, 117, 117, 139, 139, 139,␊ |
1428 | 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,␊ |
1429 | 139, 139, 139, 139, 139, 146, 146, 146, 146, 146,␊ |
1430 | 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,␊ |
1431 | 146, 146, 146, 153, 153, 153, 153, 153, 153, 153,␊ |
1432 | 153, 153, 153, 153, 153, 153, 153, 153, 153, 153,␊ |
1433 | ␊ |
1434 | 153, 183, 183, 183, 183, 183, 183, 183, 183, 183,␊ |
1435 | 183, 183, 183, 183, 183, 183, 183, 183, 183, 190,␊ |
1436 | 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,␊ |
1437 | 190, 190, 190, 190, 190, 190, 190, 199, 199, 199,␊ |
1438 | 199, 199, 199, 199, 199, 199, 199, 199, 199, 199,␊ |
1439 | 199, 199, 199, 199, 199, 220, 220, 220, 220, 220,␊ |
1440 | 220, 220, 220, 220, 220, 220, 220, 220, 220, 220,␊ |
1441 | 220, 220, 220, 228, 228, 228, 228, 228, 228, 228,␊ |
1442 | 228, 228, 228, 228, 228, 228, 228, 228, 228, 228,␊ |
1443 | 228, 236, 236, 236, 236, 236, 236, 236, 236, 236,␊ |
1444 | ␊ |
1445 | 236, 236, 236, 236, 236, 236, 236, 236, 236, 263,␊ |
1446 | 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,␊ |
1447 | 263, 263, 263, 263, 263, 263, 263, 271, 271, 271,␊ |
1448 | 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,␊ |
1449 | 271, 271, 271, 271, 271, 280, 280, 280, 280, 280,␊ |
1450 | 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,␊ |
1451 | 280, 280, 280, 287, 287, 287, 287, 287, 287, 287,␊ |
1452 | 287, 287, 287, 287, 287, 287, 287, 287, 287, 287,␊ |
1453 | 287, 299, 299, 299, 299, 299, 299, 299, 299, 299,␊ |
1454 | 299, 299, 299, 299, 299, 299, 299, 299, 299, 317,␊ |
1455 | ␊ |
1456 | 317, 317, 317, 317, 317, 317, 317, 317, 317, 317,␊ |
1457 | 317, 317, 317, 317, 317, 317, 317, 339, 339, 339,␊ |
1458 | 1156, 339, 339, 1156, 1156, 339, 339, 339, 339, 1156,␊ |
1459 | 339, 339, 339, 339, 339, 340, 340, 340, 1156, 340,␊ |
1460 | 340, 340, 1156, 340, 340, 340, 340, 340, 340, 340,␊ |
1461 | 340, 340, 340, 343, 343, 343, 1156, 343, 343, 1156,␊ |
1462 | 343, 343, 343, 343, 343, 343, 343, 343, 343, 343,␊ |
1463 | 347, 347, 347, 1156, 347, 347, 347, 347, 347, 347,␊ |
1464 | 347, 347, 347, 347, 347, 347, 347, 347, 348, 348,␊ |
1465 | 348, 1156, 348, 348, 348, 348, 348, 348, 348, 348,␊ |
1466 | ␊ |
1467 | 348, 348, 348, 348, 348, 348, 352, 352, 352, 1156,␊ |
1468 | 1156, 1156, 352, 1156, 1156, 1156, 1156, 352, 1156, 1156,␊ |
1469 | 352, 356, 356, 356, 1156, 1156, 356, 1156, 356, 356,␊ |
1470 | 356, 356, 356, 356, 356, 356, 356, 356, 360, 360,␊ |
1471 | 360, 1156, 360, 360, 360, 360, 360, 360, 360, 360,␊ |
1472 | 360, 360, 360, 360, 360, 360, 361, 361, 361, 1156,␊ |
1473 | 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,␊ |
1474 | 361, 361, 361, 361, 368, 1156, 1156, 1156, 1156, 1156,␊ |
1475 | 368, 1156, 1156, 1156, 1156, 368, 1156, 1156, 368, 369,␊ |
1476 | 369, 369, 369, 369, 369, 369, 369, 369, 369, 369,␊ |
1477 | ␊ |
1478 | 369, 369, 369, 369, 369, 369, 379, 379, 1156, 1156,␊ |
1479 | 1156, 1156, 379, 1156, 1156, 1156, 1156, 379, 1156, 1156,␊ |
1480 | 379, 379, 389, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1481 | 1156, 389, 1156, 389, 1156, 1156, 389, 399, 399, 399,␊ |
1482 | 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,␊ |
1483 | 399, 399, 399, 399, 399, 402, 1156, 402, 1156, 402,␊ |
1484 | 402, 402, 402, 402, 1156, 402, 402, 1156, 402, 402,␊ |
1485 | 1156, 402, 417, 417, 417, 1156, 417, 417, 417, 417,␊ |
1486 | 417, 1156, 417, 417, 417, 417, 417, 417, 1156, 417,␊ |
1487 | 425, 425, 425, 1156, 425, 425, 425, 425, 425, 425,␊ |
1488 | ␊ |
1489 | 425, 425, 425, 425, 425, 1156, 425, 426, 426, 426,␊ |
1490 | 1156, 426, 426, 426, 426, 426, 426, 426, 426, 1156,␊ |
1491 | 426, 426, 1156, 426, 427, 1156, 427, 1156, 427, 427,␊ |
1492 | 427, 427, 427, 427, 427, 427, 427, 427, 427, 1156,␊ |
1493 | 427, 432, 1156, 432, 1156, 432, 432, 432, 432, 432,␊ |
1494 | 1156, 432, 432, 432, 432, 432, 432, 432, 432, 437,␊ |
1495 | 1156, 437, 1156, 437, 437, 437, 437, 437, 437, 437,␊ |
1496 | 437, 437, 437, 437, 437, 437, 437, 450, 450, 450,␊ |
1497 | 1156, 450, 450, 450, 450, 450, 450, 450, 450, 450,␊ |
1498 | 450, 450, 450, 450, 450, 454, 454, 454, 1156, 454,␊ |
1499 | ␊ |
1500 | 454, 454, 1156, 454, 454, 454, 454, 454, 454, 454,␊ |
1501 | 454, 454, 454, 458, 458, 458, 1156, 458, 458, 458,␊ |
1502 | 458, 458, 458, 458, 458, 458, 458, 458, 458, 458,␊ |
1503 | 458, 459, 459, 1156, 459, 1156, 1156, 459, 462, 1156,␊ |
1504 | 462, 462, 1156, 462, 1156, 462, 1156, 462, 463, 463,␊ |
1505 | 463, 1156, 463, 463, 463, 463, 463, 463, 463, 463,␊ |
1506 | 463, 463, 463, 463, 463, 463, 477, 477, 477, 1156,␊ |
1507 | 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,␊ |
1508 | 477, 477, 477, 477, 479, 479, 479, 1156, 479, 479,␊ |
1509 | 479, 479, 479, 479, 479, 479, 479, 479, 479, 479,␊ |
1510 | ␊ |
1511 | 479, 479, 339, 339, 339, 1156, 339, 339, 1156, 1156,␊ |
1512 | 339, 339, 339, 339, 1156, 339, 339, 339, 339, 339,␊ |
1513 | 487, 487, 487, 1156, 487, 487, 487, 487, 487, 487,␊ |
1514 | 487, 487, 487, 487, 487, 487, 487, 489, 489, 489,␊ |
1515 | 1156, 489, 489, 489, 489, 489, 489, 489, 489, 489,␊ |
1516 | 489, 489, 489, 489, 489, 343, 343, 343, 1156, 343,␊ |
1517 | 343, 1156, 343, 343, 343, 343, 343, 343, 343, 343,␊ |
1518 | 343, 343, 492, 492, 492, 1156, 492, 492, 492, 492,␊ |
1519 | 492, 492, 492, 492, 492, 492, 492, 492, 492, 492,␊ |
1520 | 494, 494, 494, 1156, 494, 494, 494, 494, 494, 494,␊ |
1521 | ␊ |
1522 | 494, 494, 494, 494, 494, 494, 494, 494, 498, 498,␊ |
1523 | 498, 1156, 498, 498, 498, 498, 498, 498, 498, 498,␊ |
1524 | 498, 498, 498, 498, 498, 498, 352, 352, 352, 1156,␊ |
1525 | 1156, 1156, 352, 1156, 1156, 1156, 1156, 352, 1156, 1156,␊ |
1526 | 352, 356, 356, 356, 1156, 1156, 356, 1156, 356, 356,␊ |
1527 | 356, 356, 356, 356, 356, 356, 356, 356, 361, 361,␊ |
1528 | 361, 1156, 361, 361, 361, 361, 361, 361, 361, 361,␊ |
1529 | 361, 361, 361, 361, 361, 361, 368, 1156, 1156, 1156,␊ |
1530 | 1156, 1156, 368, 1156, 1156, 1156, 1156, 368, 1156, 1156,␊ |
1531 | 368, 369, 369, 369, 369, 369, 369, 369, 369, 369,␊ |
1532 | ␊ |
1533 | 369, 369, 369, 369, 369, 369, 369, 369, 379, 379,␊ |
1534 | 1156, 1156, 1156, 1156, 379, 1156, 1156, 1156, 1156, 379,␊ |
1535 | 1156, 1156, 379, 379, 389, 1156, 1156, 1156, 1156, 1156,␊ |
1536 | 1156, 1156, 1156, 389, 1156, 389, 1156, 1156, 389, 399,␊ |
1537 | 399, 399, 399, 399, 399, 399, 399, 399, 399, 399,␊ |
1538 | 399, 399, 399, 399, 399, 399, 399, 402, 1156, 402,␊ |
1539 | 1156, 402, 402, 402, 402, 402, 1156, 402, 402, 1156,␊ |
1540 | 402, 402, 1156, 402, 417, 417, 417, 1156, 417, 417,␊ |
1541 | 417, 417, 417, 1156, 417, 417, 417, 417, 417, 417,␊ |
1542 | 1156, 417, 425, 425, 425, 1156, 425, 425, 425, 425,␊ |
1543 | ␊ |
1544 | 425, 425, 425, 425, 425, 425, 425, 1156, 425, 426,␊ |
1545 | 426, 426, 1156, 426, 426, 426, 426, 426, 426, 426,␊ |
1546 | 426, 1156, 426, 426, 1156, 426, 427, 1156, 427, 1156,␊ |
1547 | 427, 427, 427, 427, 427, 427, 427, 427, 427, 427,␊ |
1548 | 427, 1156, 427, 432, 1156, 432, 1156, 432, 432, 432,␊ |
1549 | 432, 432, 1156, 432, 432, 432, 432, 432, 432, 432,␊ |
1550 | 432, 437, 1156, 437, 1156, 437, 437, 437, 437, 437,␊ |
1551 | 437, 437, 437, 437, 437, 437, 437, 437, 437, 559,␊ |
1552 | 559, 559, 1156, 559, 559, 559, 559, 559, 559, 559,␊ |
1553 | 559, 559, 559, 559, 559, 559, 561, 561, 561, 1156,␊ |
1554 | ␊ |
1555 | 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,␊ |
1556 | 561, 561, 561, 561, 459, 459, 1156, 459, 1156, 1156,␊ |
1557 | 459, 463, 463, 463, 1156, 463, 463, 463, 463, 463,␊ |
1558 | 463, 463, 463, 463, 463, 463, 463, 463, 463, 564,␊ |
1559 | 564, 564, 1156, 564, 564, 564, 564, 564, 564, 564,␊ |
1560 | 564, 564, 564, 564, 564, 564, 564, 477, 477, 477,␊ |
1561 | 1156, 477, 477, 477, 477, 477, 477, 477, 477, 477,␊ |
1562 | 477, 477, 477, 477, 477, 479, 479, 479, 1156, 479,␊ |
1563 | 479, 479, 479, 479, 479, 479, 479, 479, 479, 479,␊ |
1564 | 479, 479, 479, 585, 585, 585, 1156, 585, 585, 585,␊ |
1565 | ␊ |
1566 | 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,␊ |
1567 | 339, 339, 339, 1156, 339, 339, 1156, 1156, 339, 339,␊ |
1568 | 339, 339, 1156, 339, 339, 339, 339, 339, 492, 492,␊ |
1569 | 492, 1156, 492, 492, 492, 492, 492, 492, 492, 492,␊ |
1570 | 492, 492, 492, 492, 492, 492, 494, 494, 494, 1156,␊ |
1571 | 494, 494, 494, 494, 494, 494, 494, 494, 494, 494,␊ |
1572 | 494, 494, 494, 494, 343, 343, 343, 1156, 343, 343,␊ |
1573 | 1156, 343, 343, 343, 343, 343, 343, 343, 343, 343,␊ |
1574 | 343, 352, 352, 352, 1156, 1156, 1156, 352, 1156, 1156,␊ |
1575 | 1156, 1156, 352, 1156, 1156, 352, 356, 356, 356, 1156,␊ |
1576 | ␊ |
1577 | 1156, 356, 1156, 356, 356, 356, 356, 356, 356, 356,␊ |
1578 | 356, 356, 356, 361, 361, 361, 1156, 361, 361, 361,␊ |
1579 | 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,␊ |
1580 | 361, 622, 622, 622, 1156, 622, 622, 622, 622, 622,␊ |
1581 | 622, 622, 622, 622, 622, 622, 622, 622, 625, 625,␊ |
1582 | 625, 625, 625, 625, 625, 625, 625, 625, 625, 625,␊ |
1583 | 625, 625, 625, 625, 625, 625, 650, 650, 650, 1156,␊ |
1584 | 650, 650, 650, 650, 650, 650, 650, 650, 650, 650,␊ |
1585 | 650, 650, 650, 682, 682, 682, 1156, 682, 682, 682,␊ |
1586 | 682, 682, 682, 682, 682, 682, 682, 682, 682, 682,␊ |
1587 | ␊ |
1588 | 773, 1156, 1156, 1156, 773, 1156, 1156, 1156, 1156, 1156,␊ |
1589 | 1156, 1156, 773, 1156, 773, 807, 807, 807, 807, 807,␊ |
1590 | 807, 807, 807, 807, 807, 807, 807, 807, 1156, 807,␊ |
1591 | 807, 1156, 807, 67, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1592 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1593 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1594 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1595 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
1596 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156␊ |
1597 | } ;␊ |
1598 | ␊ |
1599 | static yyconst flex_int16_t yy_chk[5491] =␊ |
1600 | { 0,␊ |
1601 | 0, 1, 162, 1, 1, 2, 146, 2, 2, 0,␊ |
1602 | 3, 162, 3, 3, 72, 81, 1, 89, 72, 81,␊ |
1603 | 2, 89, 102, 146, 1, 3, 102, 9, 2, 9,␊ |
1604 | 9, 152, 9, 3, 0, 9, 134, 134, 10, 152,␊ |
1605 | 10, 10, 9, 10, 114, 94, 10, 94, 114, 105,␊ |
1606 | 9, 105, 0, 10, 21, 1, 21, 21, 1079, 2,␊ |
1607 | 29, 10, 29, 29, 3, 4, 4, 4, 4, 21,␊ |
1608 | 121, 4, 131, 77, 121, 29, 131, 21, 77, 83,␊ |
1609 | 4, 9, 21, 29, 147, 142, 1061, 83, 4, 142,␊ |
1610 | 4, 4, 10, 95, 83, 83, 83, 77, 77, 95,␊ |
1611 | ␊ |
1612 | 95, 147, 157, 83, 83, 133, 133, 133, 21, 159,␊ |
1613 | 159, 157, 171, 133, 29, 157, 226, 171, 226, 4,␊ |
1614 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,␊ |
1615 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,␊ |
1616 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,␊ |
1617 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,␊ |
1618 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,␊ |
1619 | 5, 5, 5, 5, 5, 5, 7, 7, 7, 7,␊ |
1620 | 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,␊ |
1621 | 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,␊ |
1622 | ␊ |
1623 | 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,␊ |
1624 | 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,␊ |
1625 | 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,␊ |
1626 | 7, 7, 11, 148, 11, 11, 12, 11, 12, 12,␊ |
1627 | 150, 12, 181, 181, 151, 158, 149, 11, 192, 167,␊ |
1628 | 148, 12, 149, 192, 849, 11, 149, 150, 150, 12,␊ |
1629 | 11, 151, 167, 149, 12, 177, 158, 187, 196, 177,␊ |
1630 | 204, 187, 196, 213, 204, 218, 840, 213, 224, 218,␊ |
1631 | 219, 219, 224, 233, 239, 246, 11, 233, 239, 246,␊ |
1632 | 12, 13, 13, 13, 13, 13, 13, 13, 13, 13,␊ |
1633 | ␊ |
1634 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,␊ |
1635 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,␊ |
1636 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,␊ |
1637 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,␊ |
1638 | 13, 13, 13, 13, 13, 13, 13, 15, 371, 15,␊ |
1639 | 15, 16, 15, 16, 16, 256, 16, 371, 17, 256,␊ |
1640 | 17, 17, 15, 17, 161, 161, 16, 220, 223, 839,␊ |
1641 | 15, 361, 161, 17, 16, 15, 381, 225, 227, 16,␊ |
1642 | 17, 17, 220, 223, 18, 381, 18, 18, 361, 18,␊ |
1643 | 372, 161, 225, 227, 249, 249, 285, 285, 267, 18,␊ |
1644 | ␊ |
1645 | 225, 15, 267, 372, 275, 16, 18, 18, 275, 283,␊ |
1646 | 295, 303, 17, 283, 295, 303, 310, 321, 322, 322,␊ |
1647 | 310, 327, 336, 341, 341, 321, 349, 391, 366, 327,␊ |
1648 | 336, 838, 391, 404, 349, 349, 366, 404, 18, 19,␊ |
1649 | 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,␊ |
1650 | 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,␊ |
1651 | 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,␊ |
1652 | 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,␊ |
1653 | 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,␊ |
1654 | 19, 19, 19, 19, 19, 22, 320, 22, 22, 30,␊ |
1655 | ␊ |
1656 | 30, 30, 30, 318, 320, 30, 387, 368, 318, 323,␊ |
1657 | 22, 320, 320, 320, 30, 368, 829, 323, 22, 387,␊ |
1658 | 320, 320, 30, 22, 323, 323, 323, 318, 318, 344,␊ |
1659 | 364, 345, 389, 323, 323, 344, 350, 350, 350, 394,␊ |
1660 | 364, 345, 828, 400, 350, 389, 394, 364, 400, 22,␊ |
1661 | 23, 23, 344, 30, 345, 23, 23, 23, 23, 23,␊ |
1662 | 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,␊ |
1663 | 23, 23, 23, 23, 23, 23, 23, 25, 25, 25,␊ |
1664 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,␊ |
1665 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,␊ |
1666 | ␊ |
1667 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,␊ |
1668 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,␊ |
1669 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,␊ |
1670 | 25, 25, 25, 27, 27, 27, 27, 27, 27, 27,␊ |
1671 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,␊ |
1672 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,␊ |
1673 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,␊ |
1674 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,␊ |
1675 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 31,␊ |
1676 | 533, 31, 31, 32, 425, 32, 32, 433, 33, 533,␊ |
1677 | ␊ |
1678 | 33, 33, 433, 34, 31, 34, 34, 329, 32, 425,␊ |
1679 | 329, 827, 31, 33, 395, 329, 32, 41, 34, 41,␊ |
1680 | 41, 33, 352, 352, 352, 395, 34, 135, 135, 135,␊ |
1681 | 352, 42, 41, 42, 42, 135, 363, 455, 455, 329,␊ |
1682 | 41, 41, 363, 31, 826, 41, 42, 32, 329, 376,␊ |
1683 | 376, 492, 33, 363, 42, 42, 825, 34, 35, 42,␊ |
1684 | 35, 35, 379, 379, 43, 376, 43, 43, 548, 35,␊ |
1685 | 379, 41, 494, 35, 492, 43, 135, 463, 463, 43,␊ |
1686 | 510, 35, 35, 548, 507, 42, 35, 43, 44, 379,␊ |
1687 | 44, 44, 424, 510, 45, 494, 45, 45, 582, 44,␊ |
1688 | ␊ |
1689 | 495, 507, 338, 44, 46, 338, 46, 46, 508, 45,␊ |
1690 | 338, 44, 35, 36, 424, 36, 36, 45, 43, 46,␊ |
1691 | 824, 490, 493, 495, 36, 508, 823, 46, 36, 490,␊ |
1692 | 490, 500, 493, 514, 338, 582, 36, 36, 424, 500,␊ |
1693 | 500, 36, 44, 338, 506, 493, 595, 814, 45, 501,␊ |
1694 | 501, 501, 514, 813, 506, 551, 562, 501, 46, 1176,␊ |
1695 | 551, 506, 1176, 595, 562, 562, 812, 36, 37, 37,␊ |
1696 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,␊ |
1697 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,␊ |
1698 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,␊ |
1699 | ␊ |
1700 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,␊ |
1701 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,␊ |
1702 | 37, 37, 37, 37, 39, 811, 39, 39, 588, 572,␊ |
1703 | 637, 53, 572, 53, 53, 39, 53, 572, 54, 39,␊ |
1704 | 54, 54, 55, 54, 55, 55, 53, 39, 39, 810,␊ |
1705 | 55, 588, 39, 54, 53, 809, 526, 55, 646, 53,␊ |
1706 | 56, 54, 56, 56, 808, 55, 54, 637, 56, 625,␊ |
1707 | 55, 806, 355, 355, 355, 56, 526, 625, 39, 40,␊ |
1708 | 355, 40, 40, 56, 805, 53, 628, 628, 56, 804,␊ |
1709 | 40, 693, 54, 792, 40, 646, 55, 502, 502, 502,␊ |
1710 | ␊ |
1711 | 791, 526, 40, 40, 587, 502, 790, 40, 581, 686,␊ |
1712 | 686, 581, 587, 587, 56, 591, 581, 624, 355, 592,␊ |
1713 | 592, 592, 789, 591, 591, 624, 624, 592, 693, 1177,␊ |
1714 | 502, 788, 1177, 40, 47, 47, 47, 47, 47, 47,␊ |
1715 | 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,␊ |
1716 | 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,␊ |
1717 | 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,␊ |
1718 | 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,␊ |
1719 | 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,␊ |
1720 | 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,␊ |
1721 | ␊ |
1722 | 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,␊ |
1723 | 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,␊ |
1724 | 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,␊ |
1725 | 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,␊ |
1726 | 49, 49, 49, 49, 49, 49, 51, 593, 593, 593,␊ |
1727 | 610, 610, 610, 787, 786, 593, 629, 640, 657, 657,␊ |
1728 | 657, 51, 51, 785, 629, 640, 51, 51, 51, 51,␊ |
1729 | 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,␊ |
1730 | 51, 51, 51, 51, 51, 51, 51, 51, 57, 57,␊ |
1731 | 784, 593, 782, 57, 57, 57, 57, 57, 57, 57,␊ |
1732 | ␊ |
1733 | 57, 57, 57, 57, 57, 57, 57, 57, 57, 57,␊ |
1734 | 57, 57, 57, 57, 57, 59, 781, 59, 59, 60,␊ |
1735 | 1191, 60, 60, 1191, 649, 696, 63, 649, 63, 63,␊ |
1736 | 59, 63, 649, 696, 60, 664, 664, 664, 59, 780,␊ |
1737 | 698, 63, 60, 59, 465, 465, 465, 60, 698, 63,␊ |
1738 | 665, 665, 665, 737, 63, 779, 737, 566, 566, 566,␊ |
1739 | 778, 737, 465, 64, 1200, 64, 64, 1200, 64, 59,␊ |
1740 | 567, 567, 567, 60, 61, 566, 61, 61, 64, 61,␊ |
1741 | 63, 699, 61, 61, 61, 699, 64, 1201, 567, 61,␊ |
1742 | 1201, 64, 565, 565, 565, 465, 777, 61, 61, 738,␊ |
1743 | ␊ |
1744 | 699, 565, 776, 767, 568, 568, 568, 738, 566, 766,␊ |
1745 | 565, 767, 630, 630, 630, 765, 764, 64, 626, 626,␊ |
1746 | 626, 567, 568, 705, 705, 705, 763, 626, 61, 62,␊ |
1747 | 630, 62, 62, 762, 62, 761, 626, 62, 62, 62,␊ |
1748 | 760, 618, 618, 565, 62, 759, 618, 758, 742, 618,␊ |
1749 | 618, 742, 62, 62, 618, 568, 742, 757, 618, 618,␊ |
1750 | 654, 654, 654, 630, 703, 703, 703, 1202, 654, 626,␊ |
1751 | 1202, 793, 703, 712, 712, 712, 714, 714, 714, 793,␊ |
1752 | 756, 755, 754, 62, 65, 65, 65, 65, 65, 65,␊ |
1753 | 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,␊ |
1754 | ␊ |
1755 | 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,␊ |
1756 | 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,␊ |
1757 | 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,␊ |
1758 | 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,␊ |
1759 | 206, 753, 752, 751, 206, 627, 627, 627, 206, 206,␊ |
1760 | 206, 740, 750, 206, 627, 740, 206, 206, 749, 1204,␊ |
1761 | 748, 206, 1204, 627, 747, 206, 206, 342, 745, 736,␊ |
1762 | 740, 342, 342, 342, 1210, 730, 342, 1210, 342, 729,␊ |
1763 | 631, 631, 631, 342, 342, 342, 346, 728, 727, 726,␊ |
1764 | 346, 346, 346, 725, 724, 346, 627, 346, 631, 743,␊ |
1765 | ␊ |
1766 | 743, 743, 346, 346, 346, 359, 723, 743, 722, 359,␊ |
1767 | 359, 359, 1213, 721, 359, 1213, 359, 720, 774, 774,␊ |
1768 | 774, 359, 359, 359, 365, 365, 774, 719, 365, 365,␊ |
1769 | 365, 631, 718, 365, 717, 365, 655, 655, 655, 716,␊ |
1770 | 365, 365, 365, 373, 655, 373, 715, 711, 710, 373,␊ |
1771 | 373, 373, 1228, 709, 373, 1228, 373, 708, 632, 632,␊ |
1772 | 632, 373, 373, 373, 406, 707, 706, 702, 406, 406,␊ |
1773 | 406, 1237, 701, 406, 1237, 406, 632, 655, 700, 694,␊ |
1774 | 406, 406, 406, 407, 407, 692, 407, 1238, 407, 691,␊ |
1775 | 1238, 407, 407, 683, 682, 681, 407, 801, 801, 801,␊ |
1776 | ␊ |
1777 | 407, 407, 420, 680, 679, 801, 420, 420, 420, 632,␊ |
1778 | 678, 420, 677, 420, 684, 684, 684, 676, 420, 420,␊ |
1779 | 420, 430, 675, 684, 674, 430, 822, 822, 822, 430,␊ |
1780 | 430, 430, 684, 673, 430, 672, 430, 820, 820, 820,␊ |
1781 | 671, 430, 430, 430, 436, 820, 670, 669, 436, 436,␊ |
1782 | 436, 1239, 668, 436, 1239, 436, 835, 835, 835, 667,␊ |
1783 | 436, 436, 436, 440, 835, 684, 666, 440, 440, 440,␊ |
1784 | 1240, 663, 440, 1240, 440, 1246, 662, 822, 1246, 440,␊ |
1785 | 440, 440, 573, 573, 573, 573, 573, 573, 573, 573,␊ |
1786 | 573, 573, 573, 573, 573, 573, 573, 573, 573, 573,␊ |
1787 | ␊ |
1788 | 573, 573, 573, 573, 573, 573, 573, 573, 573, 573,␊ |
1789 | 573, 573, 573, 573, 573, 573, 573, 573, 573, 573,␊ |
1790 | 573, 573, 573, 573, 573, 573, 573, 573, 573, 573,␊ |
1791 | 573, 573, 573, 573, 573, 573, 573, 573, 639, 639,␊ |
1792 | 639, 639, 639, 639, 639, 639, 639, 639, 639, 639,␊ |
1793 | 639, 639, 639, 639, 639, 639, 639, 639, 639, 639,␊ |
1794 | 639, 639, 639, 639, 639, 639, 639, 639, 639, 639,␊ |
1795 | 639, 639, 639, 639, 639, 639, 639, 639, 639, 639,␊ |
1796 | 639, 639, 639, 639, 639, 639, 639, 639, 639, 639,␊ |
1797 | 639, 639, 639, 639, 685, 685, 685, 688, 688, 688,␊ |
1798 | ␊ |
1799 | 689, 689, 689, 685, 690, 690, 690, 661, 660, 704,␊ |
1800 | 704, 704, 685, 704, 659, 688, 658, 704, 689, 731,␊ |
1801 | 731, 731, 690, 732, 732, 732, 656, 653, 731, 733,␊ |
1802 | 733, 733, 732, 651, 734, 734, 734, 731, 735, 735,␊ |
1803 | 735, 732, 744, 744, 744, 685, 744, 733, 688, 650,␊ |
1804 | 744, 689, 734, 647, 644, 690, 735, 768, 768, 768,␊ |
1805 | 704, 643, 642, 769, 769, 769, 768, 641, 1249, 638,␊ |
1806 | 731, 1249, 769, 634, 732, 768, 770, 770, 770, 633,␊ |
1807 | 733, 769, 771, 771, 771, 734, 772, 772, 772, 735,␊ |
1808 | 846, 846, 846, 744, 770, 775, 775, 775, 846, 775,␊ |
1809 | ␊ |
1810 | 771, 622, 621, 775, 772, 797, 797, 797, 768, 617,␊ |
1811 | 795, 795, 795, 616, 769, 615, 796, 796, 796, 795,␊ |
1812 | 798, 798, 798, 797, 614, 796, 613, 770, 795, 799,␊ |
1813 | 799, 799, 1263, 771, 796, 1263, 612, 772, 798, 611,␊ |
1814 | 802, 802, 802, 609, 802, 608, 775, 799, 802, 803,␊ |
1815 | 803, 803, 607, 803, 606, 605, 797, 815, 815, 815,␊ |
1816 | 604, 795, 603, 816, 816, 816, 815, 796, 817, 817,␊ |
1817 | 817, 798, 816, 602, 600, 815, 818, 818, 818, 599,␊ |
1818 | 799, 816, 598, 819, 819, 819, 817, 596, 821, 821,␊ |
1819 | 821, 802, 821, 585, 818, 584, 821, 830, 830, 830,␊ |
1820 | ␊ |
1821 | 803, 819, 831, 831, 831, 583, 830, 579, 815, 578,␊ |
1822 | 577, 831, 576, 575, 816, 830, 837, 837, 837, 817,␊ |
1823 | 831, 574, 832, 832, 832, 571, 570, 818, 833, 833,␊ |
1824 | 833, 834, 834, 834, 819, 564, 561, 559, 558, 821,␊ |
1825 | 832, 555, 550, 836, 836, 836, 833, 836, 830, 834,␊ |
1826 | 546, 836, 544, 831, 841, 841, 841, 842, 842, 842,␊ |
1827 | 843, 843, 843, 841, 541, 540, 842, 837, 844, 844,␊ |
1828 | 844, 539, 841, 832, 538, 842, 537, 536, 843, 833,␊ |
1829 | 535, 534, 834, 845, 845, 845, 844, 847, 847, 847,␊ |
1830 | 532, 847, 531, 530, 836, 847, 848, 848, 848, 529,␊ |
1831 | ␊ |
1832 | 528, 845, 852, 852, 852, 841, 527, 525, 842, 524,␊ |
1833 | 522, 843, 850, 850, 850, 851, 851, 851, 519, 844,␊ |
1834 | 852, 850, 517, 516, 851, 853, 853, 853, 512, 511,␊ |
1835 | 850, 503, 499, 851, 845, 857, 857, 857, 847, 854,␊ |
1836 | 854, 854, 498, 853, 855, 855, 855, 848, 862, 862,␊ |
1837 | 862, 489, 855, 852, 856, 856, 856, 854, 856, 858,␊ |
1838 | 858, 858, 856, 850, 487, 486, 851, 485, 858, 859,␊ |
1839 | 859, 859, 860, 860, 860, 483, 853, 858, 859, 482,␊ |
1840 | 860, 861, 861, 861, 481, 861, 857, 859, 478, 861,␊ |
1841 | 854, 476, 863, 863, 863, 865, 865, 865, 475, 862,␊ |
1842 | ␊ |
1843 | 863, 868, 868, 868, 474, 856, 473, 864, 864, 864,␊ |
1844 | 858, 864, 871, 871, 871, 864, 866, 866, 866, 472,␊ |
1845 | 859, 867, 867, 867, 866, 867, 869, 869, 869, 867,␊ |
1846 | 470, 469, 861, 468, 869, 870, 870, 870, 467, 870,␊ |
1847 | 872, 872, 872, 870, 466, 464, 865, 460, 872, 873,␊ |
1848 | 873, 873, 868, 873, 874, 874, 874, 873, 864, 875,␊ |
1849 | 875, 875, 457, 871, 877, 877, 877, 875, 456, 876,␊ |
1850 | 876, 876, 867, 876, 878, 878, 878, 876, 454, 879,␊ |
1851 | 879, 879, 878, 879, 453, 449, 870, 879, 880, 880,␊ |
1852 | 880, 881, 881, 881, 882, 882, 882, 448, 882, 881,␊ |
1853 | ␊ |
1854 | 873, 444, 882, 443, 439, 874, 883, 883, 883, 884,␊ |
1855 | 884, 884, 886, 886, 886, 877, 438, 884, 435, 434,␊ |
1856 | 876, 885, 885, 885, 431, 885, 887, 887, 887, 885,␊ |
1857 | 879, 889, 889, 889, 887, 429, 888, 888, 888, 880,␊ |
1858 | 888, 890, 890, 890, 888, 882, 891, 891, 891, 890,␊ |
1859 | 891, 892, 892, 892, 891, 428, 423, 883, 893, 893,␊ |
1860 | 893, 422, 419, 886, 416, 415, 893, 894, 894, 894,␊ |
1861 | 414, 894, 885, 413, 412, 894, 895, 895, 895, 898,␊ |
1862 | 898, 898, 889, 896, 896, 896, 411, 888, 897, 897,␊ |
1863 | 897, 896, 897, 899, 899, 899, 897, 891, 901, 901,␊ |
1864 | ␊ |
1865 | 901, 899, 892, 900, 900, 900, 410, 900, 902, 902,␊ |
1866 | 902, 900, 409, 903, 903, 903, 902, 903, 894, 408,␊ |
1867 | 405, 903, 904, 904, 904, 398, 393, 895, 392, 388,␊ |
1868 | 898, 386, 905, 905, 905, 907, 907, 907, 385, 897,␊ |
1869 | 905, 384, 906, 906, 906, 383, 906, 382, 380, 901,␊ |
1870 | 906, 908, 908, 908, 900, 910, 910, 910, 375, 908,␊ |
1871 | 369, 909, 909, 909, 903, 909, 911, 911, 911, 909,␊ |
1872 | 913, 913, 913, 904, 911, 912, 912, 912, 358, 912,␊ |
1873 | 914, 914, 914, 912, 357, 354, 907, 348, 914, 340,␊ |
1874 | 915, 915, 915, 906, 915, 916, 916, 916, 915, 917,␊ |
1875 | ␊ |
1876 | 917, 917, 919, 919, 919, 337, 910, 917, 334, 918,␊ |
1877 | 918, 918, 909, 918, 920, 920, 920, 918, 922, 922,␊ |
1878 | 922, 913, 920, 921, 921, 921, 912, 921, 923, 923,␊ |
1879 | 923, 921, 925, 925, 925, 333, 923, 928, 928, 928,␊ |
1880 | 332, 915, 331, 924, 924, 924, 916, 924, 926, 926,␊ |
1881 | 926, 924, 330, 919, 328, 326, 926, 927, 927, 927,␊ |
1882 | 918, 927, 929, 929, 929, 927, 931, 931, 931, 922,␊ |
1883 | 929, 930, 930, 930, 921, 930, 932, 932, 932, 930,␊ |
1884 | 934, 934, 934, 925, 932, 933, 933, 933, 928, 933,␊ |
1885 | 935, 935, 935, 933, 924, 936, 936, 936, 935, 936,␊ |
1886 | ␊ |
1887 | 937, 937, 937, 936, 938, 938, 938, 325, 927, 940,␊ |
1888 | 940, 940, 938, 943, 943, 943, 315, 931, 314, 939,␊ |
1889 | 939, 939, 930, 939, 941, 941, 941, 939, 946, 946,␊ |
1890 | 946, 934, 941, 942, 942, 942, 933, 942, 949, 949,␊ |
1891 | 949, 942, 944, 944, 944, 311, 936, 304, 296, 292,␊ |
1892 | 944, 937, 284, 945, 945, 945, 276, 945, 268, 259,␊ |
1893 | 940, 945, 257, 250, 943, 947, 947, 947, 247, 240,␊ |
1894 | 939, 234, 232, 947, 948, 948, 948, 217, 948, 946,␊ |
1895 | 214, 212, 948, 205, 942, 950, 950, 950, 203, 949,␊ |
1896 | 951, 951, 951, 950, 951, 952, 952, 952, 951, 953,␊ |
1897 | ␊ |
1898 | 953, 953, 197, 188, 945, 178, 175, 953, 954, 954,␊ |
1899 | 954, 168, 954, 955, 955, 955, 954, 166, 956, 956,␊ |
1900 | 956, 958, 958, 958, 165, 948, 956, 957, 957, 957,␊ |
1901 | 164, 957, 959, 959, 959, 957, 961, 961, 961, 163,␊ |
1902 | 959, 951, 160, 960, 960, 960, 952, 960, 962, 962,␊ |
1903 | 962, 960, 156, 963, 963, 963, 962, 963, 154, 954,␊ |
1904 | 153, 963, 143, 132, 955, 964, 964, 964, 965, 965,␊ |
1905 | 965, 130, 958, 966, 966, 966, 965, 966, 957, 122,␊ |
1906 | 115, 966, 967, 967, 967, 113, 106, 961, 968, 968,␊ |
1907 | 968, 969, 969, 969, 960, 969, 968, 103, 96, 969,␊ |
1908 | ␊ |
1909 | 970, 970, 970, 93, 963, 971, 971, 971, 92, 90,␊ |
1910 | 972, 972, 972, 971, 972, 82, 964, 73, 972, 973,␊ |
1911 | 973, 973, 67, 0, 966, 0, 974, 974, 974, 976,␊ |
1912 | 976, 976, 0, 967, 974, 975, 975, 975, 0, 975,␊ |
1913 | 0, 0, 969, 975, 977, 977, 977, 979, 979, 979,␊ |
1914 | 0, 970, 977, 0, 978, 978, 978, 0, 978, 0,␊ |
1915 | 0, 972, 978, 980, 980, 980, 982, 982, 982, 0,␊ |
1916 | 973, 980, 0, 981, 981, 981, 0, 981, 0, 0,␊ |
1917 | 976, 981, 983, 983, 983, 0, 975, 984, 984, 984,␊ |
1918 | 983, 984, 985, 985, 985, 984, 0, 0, 979, 986,␊ |
1919 | ␊ |
1920 | 986, 986, 987, 987, 987, 978, 987, 986, 0, 0,␊ |
1921 | 987, 988, 988, 988, 989, 989, 989, 982, 0, 990,␊ |
1922 | 990, 990, 989, 990, 981, 0, 0, 990, 991, 991,␊ |
1923 | 991, 992, 992, 992, 994, 994, 994, 0, 984, 992,␊ |
1924 | 993, 993, 993, 985, 993, 997, 997, 997, 993, 995,␊ |
1925 | 995, 995, 0, 987, 1000, 1000, 1000, 995, 0, 996,␊ |
1926 | 996, 996, 988, 996, 998, 998, 998, 996, 0, 0,␊ |
1927 | 990, 0, 998, 999, 999, 999, 0, 999, 0, 991,␊ |
1928 | 0, 999, 1001, 1001, 1001, 994, 1003, 1003, 1003, 0,␊ |
1929 | 1001, 993, 0, 1002, 1002, 1002, 997, 1002, 1004, 1004,␊ |
1930 | ␊ |
1931 | 1004, 1002, 1006, 1006, 1006, 1000, 1004, 1005, 1005, 1005,␊ |
1932 | 996, 1005, 1007, 1007, 1007, 1005, 0, 1008, 1008, 1008,␊ |
1933 | 1007, 1008, 0, 0, 999, 1008, 1009, 1009, 1009, 0,␊ |
1934 | 1010, 1010, 1010, 1012, 1012, 1012, 0, 1003, 1010, 1011,␊ |
1935 | 1011, 1011, 0, 1011, 1002, 0, 0, 1011, 1013, 1013,␊ |
1936 | 1013, 0, 0, 1006, 0, 0, 1013, 0, 1005, 1014,␊ |
1937 | 1014, 1014, 0, 1014, 1015, 1015, 1015, 1014, 1008, 0,␊ |
1938 | 1016, 1016, 1016, 1018, 1018, 1018, 0, 1009, 1016, 1017,␊ |
1939 | 1017, 1017, 0, 1017, 1012, 0, 0, 1017, 0, 0,␊ |
1940 | 1011, 1019, 1019, 1019, 1020, 1020, 1020, 0, 1020, 1019,␊ |
1941 | ␊ |
1942 | 0, 0, 1020, 1021, 1021, 1021, 1022, 1022, 1022, 0,␊ |
1943 | 1014, 1024, 1024, 1024, 1022, 1015, 0, 1023, 1023, 1023,␊ |
1944 | 0, 1023, 0, 0, 1018, 1023, 1025, 1025, 1025, 0,␊ |
1945 | 1017, 1026, 1026, 1026, 1025, 1026, 1027, 1027, 1027, 1026,␊ |
1946 | 1028, 1028, 1028, 0, 0, 1020, 0, 0, 1028, 1029,␊ |
1947 | 1029, 1029, 0, 1029, 1021, 0, 0, 1029, 1030, 1030,␊ |
1948 | 1030, 0, 1024, 1031, 1031, 1031, 0, 0, 1023, 0,␊ |
1949 | 0, 1031, 1032, 1032, 1032, 0, 1032, 1033, 1033, 1033,␊ |
1950 | 1032, 0, 1026, 1034, 1034, 1034, 0, 1027, 1035, 1035,␊ |
1951 | 1035, 1034, 1035, 1036, 1036, 1036, 1035, 1037, 1037, 1037,␊ |
1952 | ␊ |
1953 | 1029, 0, 1038, 1038, 1038, 1037, 1038, 0, 0, 1030,␊ |
1954 | 1038, 1039, 1039, 1039, 1040, 1040, 1040, 1041, 1041, 1041,␊ |
1955 | 0, 1041, 1040, 1032, 0, 1041, 0, 0, 1033, 1042,␊ |
1956 | 1042, 1042, 1043, 1043, 1043, 1045, 1045, 1045, 0, 1035,␊ |
1957 | 1043, 1044, 1044, 1044, 1036, 1044, 1046, 1046, 1046, 1044,␊ |
1958 | 1048, 1048, 1048, 1038, 1046, 1047, 1047, 1047, 0, 1047,␊ |
1959 | 0, 0, 1039, 1047, 1049, 1049, 1049, 0, 1041, 1050,␊ |
1960 | 1050, 1050, 1049, 1050, 1051, 1051, 1051, 1050, 0, 0,␊ |
1961 | 1042, 1052, 1052, 1052, 0, 0, 1045, 0, 0, 1052,␊ |
1962 | 0, 0, 1044, 0, 1053, 1053, 1053, 0, 1053, 0,␊ |
1963 | ␊ |
1964 | 0, 1048, 1053, 1054, 1054, 1054, 1047, 1055, 1055, 1055,␊ |
1965 | 1056, 1056, 1056, 0, 1056, 1055, 0, 0, 1056, 0,␊ |
1966 | 1050, 1057, 1057, 1057, 0, 1051, 1058, 1058, 1058, 1059,␊ |
1967 | 1059, 1059, 0, 1059, 1058, 0, 0, 1059, 1060, 1060,␊ |
1968 | 1060, 0, 1062, 1062, 1062, 1053, 1062, 1063, 1063, 1063,␊ |
1969 | 1062, 1064, 1064, 1064, 1054, 1064, 1065, 1065, 1065, 1064,␊ |
1970 | 0, 1056, 1066, 1066, 1066, 0, 1066, 1067, 1067, 1067,␊ |
1971 | 1066, 0, 1057, 1068, 1068, 1068, 0, 1068, 0, 0,␊ |
1972 | 1059, 1068, 1069, 1069, 1069, 0, 1070, 1070, 1070, 1060,␊ |
1973 | 1070, 0, 0, 1062, 1070, 1071, 1071, 1071, 1063, 1073,␊ |
1974 | ␊ |
1975 | 1073, 1073, 1064, 0, 1072, 1072, 1072, 1065, 1072, 1074,␊ |
1976 | 1074, 1074, 1072, 1066, 1075, 1075, 1075, 0, 1067, 1076,␊ |
1977 | 1076, 1076, 0, 0, 1068, 1077, 1077, 1077, 1078, 1078,␊ |
1978 | 1078, 0, 0, 1069, 1080, 1080, 1080, 1070, 1081, 1081,␊ |
1979 | 1081, 1082, 1082, 1082, 0, 0, 1071, 1083, 1083, 1083,␊ |
1980 | 1073, 1084, 1084, 1084, 0, 1072, 1085, 1085, 1085, 0,␊ |
1981 | 1074, 1086, 1086, 1086, 0, 1075, 1087, 1087, 1087, 0,␊ |
1982 | 1076, 1088, 1088, 1088, 0, 0, 1077, 0, 0, 1078,␊ |
1983 | 1089, 1089, 1089, 0, 0, 1080, 1090, 1090, 1090, 1081,␊ |
1984 | 0, 0, 1082, 1091, 1091, 1091, 0, 0, 1083, 1092,␊ |
1985 | ␊ |
1986 | 1092, 1092, 1084, 1093, 1093, 1093, 0, 1085, 1094, 1094,␊ |
1987 | 1094, 0, 1086, 1095, 1095, 1095, 0, 1087, 1096, 1096,␊ |
1988 | 1096, 0, 1088, 1097, 1097, 1097, 1098, 1098, 1098, 0,␊ |
1989 | 0, 1089, 1099, 1099, 1099, 0, 0, 1090, 1100, 1100,␊ |
1990 | 1100, 1101, 1101, 1101, 1091, 1102, 1102, 1102, 0, 0,␊ |
1991 | 1092, 1103, 1103, 1103, 1093, 1104, 1104, 1104, 0, 1094,␊ |
1992 | 1105, 1105, 1105, 0, 1095, 1106, 1106, 1106, 0, 1096,␊ |
1993 | 1107, 1107, 1107, 0, 1097, 0, 0, 1098, 1108, 1108,␊ |
1994 | 1108, 0, 0, 1099, 1109, 1109, 1109, 0, 0, 1100,␊ |
1995 | 0, 0, 1101, 1110, 1110, 1110, 1102, 1111, 1111, 1111,␊ |
1996 | ␊ |
1997 | 0, 0, 1103, 1112, 1112, 1112, 1104, 1113, 1113, 1113,␊ |
1998 | 0, 1105, 1114, 1114, 1114, 0, 1106, 1115, 1115, 1115,␊ |
1999 | 0, 1107, 1116, 1116, 1116, 1117, 1117, 1117, 0, 1108,␊ |
2000 | 1118, 1118, 1118, 0, 0, 1109, 1119, 1119, 1119, 1120,␊ |
2001 | 1120, 1120, 0, 0, 1110, 1121, 1121, 1121, 1111, 1122,␊ |
2002 | 1122, 1122, 0, 0, 1112, 1123, 1123, 1123, 1113, 1124,␊ |
2003 | 1124, 1124, 0, 1114, 1125, 1125, 1125, 0, 1115, 1126,␊ |
2004 | 1126, 1126, 0, 1116, 0, 0, 1117, 1127, 1127, 1127,␊ |
2005 | 0, 1118, 1128, 1128, 1128, 0, 0, 1119, 0, 0,␊ |
2006 | 1120, 1129, 1129, 1129, 0, 0, 1121, 1130, 1130, 1130,␊ |
2007 | ␊ |
2008 | 1122, 1131, 1131, 1131, 0, 0, 1123, 1132, 1132, 1132,␊ |
2009 | 1124, 1133, 1133, 1133, 0, 1125, 1134, 1134, 1134, 0,␊ |
2010 | 1126, 1135, 1135, 1135, 1136, 1136, 1136, 0, 1127, 1137,␊ |
2011 | 1137, 1137, 0, 1128, 1138, 1138, 1138, 1139, 1139, 1139,␊ |
2012 | 0, 0, 1129, 1140, 1140, 1140, 0, 0, 1130, 1141,␊ |
2013 | 1141, 1141, 1131, 1142, 1142, 1142, 0, 0, 1132, 1143,␊ |
2014 | 1143, 1143, 1133, 1144, 1144, 1144, 0, 1134, 1145, 1145,␊ |
2015 | 1145, 0, 1135, 0, 0, 1136, 1146, 1146, 1146, 0,␊ |
2016 | 1137, 1147, 1147, 1147, 0, 1138, 0, 0, 1139, 1148,␊ |
2017 | 1148, 1148, 0, 0, 1140, 1149, 1149, 1149, 0, 0,␊ |
2018 | ␊ |
2019 | 1141, 1150, 1150, 1150, 1142, 1151, 1151, 1151, 0, 0,␊ |
2020 | 1143, 1152, 1152, 1152, 1144, 1153, 1153, 1153, 0, 1145,␊ |
2021 | 1154, 1154, 1154, 1155, 1155, 1155, 0, 1146, 0, 0,␊ |
2022 | 0, 0, 1147, 0, 0, 0, 0, 0, 0, 0,␊ |
2023 | 1148, 0, 0, 0, 0, 0, 1149, 0, 0, 0,␊ |
2024 | 0, 0, 1150, 0, 0, 0, 1151, 0, 0, 0,␊ |
2025 | 0, 0, 1152, 0, 0, 0, 1153, 0, 0, 0,␊ |
2026 | 0, 1154, 0, 0, 1155, 1157, 1157, 1157, 1157, 1157,␊ |
2027 | 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157,␊ |
2028 | 1157, 1157, 1157, 1158, 1158, 1158, 1158, 1158, 1158, 1158,␊ |
2029 | ␊ |
2030 | 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158,␊ |
2031 | 1158, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159,␊ |
2032 | 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1160,␊ |
2033 | 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160,␊ |
2034 | 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1161, 1161, 1161,␊ |
2035 | 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161,␊ |
2036 | 1161, 1161, 1161, 1161, 1161, 1162, 1162, 1162, 1162, 1162,␊ |
2037 | 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162,␊ |
2038 | 1162, 1162, 1162, 1163, 1163, 1163, 1163, 1163, 1163, 1163,␊ |
2039 | 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163,␊ |
2040 | ␊ |
2041 | 1163, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164,␊ |
2042 | 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1165,␊ |
2043 | 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165,␊ |
2044 | 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1166, 1166, 1166,␊ |
2045 | 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166,␊ |
2046 | 1166, 1166, 1166, 1166, 1166, 1167, 1167, 1167, 1167, 1167,␊ |
2047 | 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167,␊ |
2048 | 1167, 1167, 1167, 1168, 1168, 1168, 1168, 1168, 1168, 1168,␊ |
2049 | 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168,␊ |
2050 | 1168, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169,␊ |
2051 | ␊ |
2052 | 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1170,␊ |
2053 | 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170,␊ |
2054 | 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1171, 1171, 1171,␊ |
2055 | 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171,␊ |
2056 | 1171, 1171, 1171, 1171, 1171, 1172, 1172, 1172, 1172, 1172,␊ |
2057 | 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172,␊ |
2058 | 1172, 1172, 1172, 1173, 1173, 1173, 1173, 1173, 1173, 1173,␊ |
2059 | 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173,␊ |
2060 | 1173, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174,␊ |
2061 | 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1175,␊ |
2062 | ␊ |
2063 | 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175,␊ |
2064 | 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1178, 1178, 1178,␊ |
2065 | 0, 1178, 1178, 0, 0, 1178, 1178, 1178, 1178, 0,␊ |
2066 | 1178, 1178, 1178, 1178, 1178, 1179, 1179, 1179, 0, 1179,␊ |
2067 | 1179, 1179, 0, 1179, 1179, 1179, 1179, 1179, 1179, 1179,␊ |
2068 | 1179, 1179, 1179, 1180, 1180, 1180, 0, 1180, 1180, 0,␊ |
2069 | 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180,␊ |
2070 | 1181, 1181, 1181, 0, 1181, 1181, 1181, 1181, 1181, 1181,␊ |
2071 | 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1182, 1182,␊ |
2072 | 1182, 0, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182,␊ |
2073 | ␊ |
2074 | 1182, 1182, 1182, 1182, 1182, 1182, 1183, 1183, 1183, 0,␊ |
2075 | 0, 0, 1183, 0, 0, 0, 0, 1183, 0, 0,␊ |
2076 | 1183, 1184, 1184, 1184, 0, 0, 1184, 0, 1184, 1184,␊ |
2077 | 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1185, 1185,␊ |
2078 | 1185, 0, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185,␊ |
2079 | 1185, 1185, 1185, 1185, 1185, 1185, 1186, 1186, 1186, 0,␊ |
2080 | 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186,␊ |
2081 | 1186, 1186, 1186, 1186, 1187, 0, 0, 0, 0, 0,␊ |
2082 | 1187, 0, 0, 0, 0, 1187, 0, 0, 1187, 1188,␊ |
2083 | 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188,␊ |
2084 | ␊ |
2085 | 1188, 1188, 1188, 1188, 1188, 1188, 1189, 1189, 0, 0,␊ |
2086 | 0, 0, 1189, 0, 0, 0, 0, 1189, 0, 0,␊ |
2087 | 1189, 1189, 1190, 0, 0, 0, 0, 0, 0, 0,␊ |
2088 | 0, 1190, 0, 1190, 0, 0, 1190, 1192, 1192, 1192,␊ |
2089 | 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192,␊ |
2090 | 1192, 1192, 1192, 1192, 1192, 1193, 0, 1193, 0, 1193,␊ |
2091 | 1193, 1193, 1193, 1193, 0, 1193, 1193, 0, 1193, 1193,␊ |
2092 | 0, 1193, 1194, 1194, 1194, 0, 1194, 1194, 1194, 1194,␊ |
2093 | 1194, 0, 1194, 1194, 1194, 1194, 1194, 1194, 0, 1194,␊ |
2094 | 1195, 1195, 1195, 0, 1195, 1195, 1195, 1195, 1195, 1195,␊ |
2095 | ␊ |
2096 | 1195, 1195, 1195, 1195, 1195, 0, 1195, 1196, 1196, 1196,␊ |
2097 | 0, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 0,␊ |
2098 | 1196, 1196, 0, 1196, 1197, 0, 1197, 0, 1197, 1197,␊ |
2099 | 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 0,␊ |
2100 | 1197, 1198, 0, 1198, 0, 1198, 1198, 1198, 1198, 1198,␊ |
2101 | 0, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1199,␊ |
2102 | 0, 1199, 0, 1199, 1199, 1199, 1199, 1199, 1199, 1199,␊ |
2103 | 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1203, 1203, 1203,␊ |
2104 | 0, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203,␊ |
2105 | 1203, 1203, 1203, 1203, 1203, 1205, 1205, 1205, 0, 1205,␊ |
2106 | ␊ |
2107 | 1205, 1205, 0, 1205, 1205, 1205, 1205, 1205, 1205, 1205,␊ |
2108 | 1205, 1205, 1205, 1206, 1206, 1206, 0, 1206, 1206, 1206,␊ |
2109 | 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206,␊ |
2110 | 1206, 1207, 1207, 0, 1207, 0, 0, 1207, 1208, 0,␊ |
2111 | 1208, 1208, 0, 1208, 0, 1208, 0, 1208, 1209, 1209,␊ |
2112 | 1209, 0, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209,␊ |
2113 | 1209, 1209, 1209, 1209, 1209, 1209, 1211, 1211, 1211, 0,␊ |
2114 | 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,␊ |
2115 | 1211, 1211, 1211, 1211, 1212, 1212, 1212, 0, 1212, 1212,␊ |
2116 | 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212,␊ |
2117 | ␊ |
2118 | 1212, 1212, 1214, 1214, 1214, 0, 1214, 1214, 0, 0,␊ |
2119 | 1214, 1214, 1214, 1214, 0, 1214, 1214, 1214, 1214, 1214,␊ |
2120 | 1215, 1215, 1215, 0, 1215, 1215, 1215, 1215, 1215, 1215,␊ |
2121 | 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1216, 1216, 1216,␊ |
2122 | 0, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216,␊ |
2123 | 1216, 1216, 1216, 1216, 1216, 1217, 1217, 1217, 0, 1217,␊ |
2124 | 1217, 0, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217,␊ |
2125 | 1217, 1217, 1218, 1218, 1218, 0, 1218, 1218, 1218, 1218,␊ |
2126 | 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218,␊ |
2127 | 1219, 1219, 1219, 0, 1219, 1219, 1219, 1219, 1219, 1219,␊ |
2128 | ␊ |
2129 | 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1220, 1220,␊ |
2130 | 1220, 0, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,␊ |
2131 | 1220, 1220, 1220, 1220, 1220, 1220, 1221, 1221, 1221, 0,␊ |
2132 | 0, 0, 1221, 0, 0, 0, 0, 1221, 0, 0,␊ |
2133 | 1221, 1222, 1222, 1222, 0, 0, 1222, 0, 1222, 1222,␊ |
2134 | 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1223, 1223,␊ |
2135 | 1223, 0, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223,␊ |
2136 | 1223, 1223, 1223, 1223, 1223, 1223, 1224, 0, 0, 0,␊ |
2137 | 0, 0, 1224, 0, 0, 0, 0, 1224, 0, 0,␊ |
2138 | 1224, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225,␊ |
2139 | ␊ |
2140 | 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1226, 1226,␊ |
2141 | 0, 0, 0, 0, 1226, 0, 0, 0, 0, 1226,␊ |
2142 | 0, 0, 1226, 1226, 1227, 0, 0, 0, 0, 0,␊ |
2143 | 0, 0, 0, 1227, 0, 1227, 0, 0, 1227, 1229,␊ |
2144 | 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229,␊ |
2145 | 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1230, 0, 1230,␊ |
2146 | 0, 1230, 1230, 1230, 1230, 1230, 0, 1230, 1230, 0,␊ |
2147 | 1230, 1230, 0, 1230, 1231, 1231, 1231, 0, 1231, 1231,␊ |
2148 | 1231, 1231, 1231, 0, 1231, 1231, 1231, 1231, 1231, 1231,␊ |
2149 | 0, 1231, 1232, 1232, 1232, 0, 1232, 1232, 1232, 1232,␊ |
2150 | ␊ |
2151 | 1232, 1232, 1232, 1232, 1232, 1232, 1232, 0, 1232, 1233,␊ |
2152 | 1233, 1233, 0, 1233, 1233, 1233, 1233, 1233, 1233, 1233,␊ |
2153 | 1233, 0, 1233, 1233, 0, 1233, 1234, 0, 1234, 0,␊ |
2154 | 1234, 1234, 1234, 1234, 1234, 1234, 1234, 1234, 1234, 1234,␊ |
2155 | 1234, 0, 1234, 1235, 0, 1235, 0, 1235, 1235, 1235,␊ |
2156 | 1235, 1235, 0, 1235, 1235, 1235, 1235, 1235, 1235, 1235,␊ |
2157 | 1235, 1236, 0, 1236, 0, 1236, 1236, 1236, 1236, 1236,␊ |
2158 | 1236, 1236, 1236, 1236, 1236, 1236, 1236, 1236, 1236, 1241,␊ |
2159 | 1241, 1241, 0, 1241, 1241, 1241, 1241, 1241, 1241, 1241,␊ |
2160 | 1241, 1241, 1241, 1241, 1241, 1241, 1242, 1242, 1242, 0,␊ |
2161 | ␊ |
2162 | 1242, 1242, 1242, 1242, 1242, 1242, 1242, 1242, 1242, 1242,␊ |
2163 | 1242, 1242, 1242, 1242, 1243, 1243, 0, 1243, 0, 0,␊ |
2164 | 1243, 1244, 1244, 1244, 0, 1244, 1244, 1244, 1244, 1244,␊ |
2165 | 1244, 1244, 1244, 1244, 1244, 1244, 1244, 1244, 1244, 1245,␊ |
2166 | 1245, 1245, 0, 1245, 1245, 1245, 1245, 1245, 1245, 1245,␊ |
2167 | 1245, 1245, 1245, 1245, 1245, 1245, 1245, 1247, 1247, 1247,␊ |
2168 | 0, 1247, 1247, 1247, 1247, 1247, 1247, 1247, 1247, 1247,␊ |
2169 | 1247, 1247, 1247, 1247, 1247, 1248, 1248, 1248, 0, 1248,␊ |
2170 | 1248, 1248, 1248, 1248, 1248, 1248, 1248, 1248, 1248, 1248,␊ |
2171 | 1248, 1248, 1248, 1250, 1250, 1250, 0, 1250, 1250, 1250,␊ |
2172 | ␊ |
2173 | 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250,␊ |
2174 | 1251, 1251, 1251, 0, 1251, 1251, 0, 0, 1251, 1251,␊ |
2175 | 1251, 1251, 0, 1251, 1251, 1251, 1251, 1251, 1252, 1252,␊ |
2176 | 1252, 0, 1252, 1252, 1252, 1252, 1252, 1252, 1252, 1252,␊ |
2177 | 1252, 1252, 1252, 1252, 1252, 1252, 1253, 1253, 1253, 0,␊ |
2178 | 1253, 1253, 1253, 1253, 1253, 1253, 1253, 1253, 1253, 1253,␊ |
2179 | 1253, 1253, 1253, 1253, 1254, 1254, 1254, 0, 1254, 1254,␊ |
2180 | 0, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254,␊ |
2181 | 1254, 1255, 1255, 1255, 0, 0, 0, 1255, 0, 0,␊ |
2182 | 0, 0, 1255, 0, 0, 1255, 1256, 1256, 1256, 0,␊ |
2183 | ␊ |
2184 | 0, 1256, 0, 1256, 1256, 1256, 1256, 1256, 1256, 1256,␊ |
2185 | 1256, 1256, 1256, 1257, 1257, 1257, 0, 1257, 1257, 1257,␊ |
2186 | 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257,␊ |
2187 | 1257, 1258, 1258, 1258, 0, 1258, 1258, 1258, 1258, 1258,␊ |
2188 | 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1259, 1259,␊ |
2189 | 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259,␊ |
2190 | 1259, 1259, 1259, 1259, 1259, 1259, 1260, 1260, 1260, 0,␊ |
2191 | 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260,␊ |
2192 | 1260, 1260, 1260, 1261, 1261, 1261, 0, 1261, 1261, 1261,␊ |
2193 | 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261,␊ |
2194 | ␊ |
2195 | 1262, 0, 0, 0, 1262, 0, 0, 0, 0, 0,␊ |
2196 | 0, 0, 1262, 0, 1262, 1264, 1264, 1264, 1264, 1264,␊ |
2197 | 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 0, 1264,␊ |
2198 | 1264, 0, 1264, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
2199 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
2200 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
2201 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
2202 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156,␊ |
2203 | 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156␊ |
2204 | } ;␊ |
2205 | ␊ |
2206 | extern int preYY_flex_debug;␊ |
2207 | int preYY_flex_debug = 0;␊ |
2208 | ␊ |
2209 | static yy_state_type *yy_state_buf=0, *yy_state_ptr=0;␊ |
2210 | static char *yy_full_match;␊ |
2211 | static int yy_lp;␊ |
2212 | static int yy_looking_for_trail_begin = 0;␊ |
2213 | static int yy_full_lp;␊ |
2214 | static int *yy_full_state;␊ |
2215 | #define YY_TRAILING_MASK 0x2000␊ |
2216 | #define YY_TRAILING_HEAD_MASK 0x4000␊ |
2217 | #define REJECT \␊ |
2218 | { \␊ |
2219 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */ \␊ |
2220 | yy_cp = (yy_full_match); /* restore poss. backed-over text */ \␊ |
2221 | (yy_lp) = (yy_full_lp); /* restore orig. accepting pos. */ \␊ |
2222 | (yy_state_ptr) = (yy_full_state); /* restore orig. state */ \␊ |
2223 | yy_current_state = *(yy_state_ptr); /* restore curr. state */ \␊ |
2224 | ++(yy_lp); \␊ |
2225 | goto find_rule; \␊ |
2226 | }␊ |
2227 | ␊ |
2228 | #define yymore() yymore_used_but_not_detected␊ |
2229 | #define YY_MORE_ADJ 0␊ |
2230 | #define YY_RESTORE_YY_MORE_OFFSET␊ |
2231 | char *preYYtext;␊ |
2232 | #line 1 "pre.l"␊ |
2233 | /******************************************************************************␊ |
2234 | *␊ |
2235 | * ␊ |
2236 | *␊ |
2237 | * Copyright (C) 1997-2011 by Dimitri van Heesch.␊ |
2238 | *␊ |
2239 | * Permission to use, copy, modify, and distribute this software and its␊ |
2240 | * documentation under the terms of the GNU General Public License is hereby ␊ |
2241 | * granted. No representations are made about the suitability of this software ␊ |
2242 | * for any purpose. It is provided "as is" without express or implied warranty.␊ |
2243 | * See the GNU General Public License for more details.␊ |
2244 | *␊ |
2245 | * Documents produced by Doxygen are derivative works derived from the␊ |
2246 | * input used in their production; they are not affected by this license.␊ |
2247 | *␊ |
2248 | */␊ |
2249 | #line 19 "pre.l"␊ |
2250 | ␊ |
2251 | /*␊ |
2252 | *␉includes␊ |
2253 | */␊ |
2254 | ␊ |
2255 | #include <stdio.h>␊ |
2256 | #include <assert.h>␊ |
2257 | #include <ctype.h>␊ |
2258 | #include <errno.h>␊ |
2259 | ␊ |
2260 | #include "qtbc.h"␊ |
2261 | #include <qarray.h>␊ |
2262 | #include <qstack.h>␊ |
2263 | #include <qfile.h>␊ |
2264 | #include <qstrlist.h>␊ |
2265 | #include <qdict.h>␊ |
2266 | #include <qregexp.h>␊ |
2267 | #include <qfileinfo.h>␊ |
2268 | #include <qdir.h>␊ |
2269 | ␊ |
2270 | #include "pre.h"␊ |
2271 | #include "constexp.h"␊ |
2272 | #include "define.h"␊ |
2273 | #include "doxygen.h"␊ |
2274 | #include "message.h"␊ |
2275 | #include "util.h"␊ |
2276 | #include "defargs.h"␊ |
2277 | #include "debug.h"␊ |
2278 | #include "bufstr.h"␊ |
2279 | #include "portable.h"␊ |
2280 | #include "bufstr.h"␊ |
2281 | ␊ |
2282 | #define YY_NEVER_INTERACTIVE 1␊ |
2283 | ␊ |
2284 | ␊ |
2285 | struct FileState␊ |
2286 | {␊ |
2287 | FileState(int size) : fileBuf(size), ␊ |
2288 | oldFileBuf(0), oldFileBufPos(0) {}␊ |
2289 | int lineNr;␊ |
2290 | BufStr fileBuf;␊ |
2291 | BufStr *oldFileBuf;␊ |
2292 | int oldFileBufPos;␊ |
2293 | YY_BUFFER_STATE bufState;␊ |
2294 | QCString fileName;␊ |
2295 | }; ␊ |
2296 | ␊ |
2297 | /* -----------------------------------------------------------------␊ |
2298 | *␊ |
2299 | *␉scanner's state␊ |
2300 | */␊ |
2301 | ␊ |
2302 | static int g_yyLineNr = 1;␊ |
2303 | static QCString g_yyFileName;␊ |
2304 | static FileDef *g_yyFileDef;␊ |
2305 | static FileDef *g_inputFileDef;␊ |
2306 | static int g_ifcount = 0;␊ |
2307 | static QStrList *g_pathList = 0; ␊ |
2308 | static QStack<FileState> g_includeStack;␊ |
2309 | static QDict<int> *g_argDict;␊ |
2310 | static int g_defArgs = -1;␊ |
2311 | static QCString g_defName;␊ |
2312 | static QCString g_defText;␊ |
2313 | static QCString g_defLitText;␊ |
2314 | static QCString g_defArgsStr;␊ |
2315 | static QCString g_defExtraSpacing;␊ |
2316 | static bool g_defVarArgs;␊ |
2317 | static int g_level;␊ |
2318 | static int g_lastCContext;␊ |
2319 | static int g_lastCPPContext;␊ |
2320 | static QArray<int> g_levelGuard;␊ |
2321 | static BufStr *g_inputBuf;␊ |
2322 | static int g_inputBufPos;␊ |
2323 | static BufStr *g_outputBuf;␊ |
2324 | static int g_roundCount;␊ |
2325 | static bool g_quoteArg;␊ |
2326 | static DefineDict *g_globalDefineDict = new DefineDict(10009);␊ |
2327 | static DefineDict *g_fileDefineDict = new DefineDict(1009);␊ |
2328 | static DefineDict *g_expandedDict;␊ |
2329 | static int g_findDefArgContext;␊ |
2330 | static bool g_expectGuard;␊ |
2331 | static QCString g_lastGuardName;␊ |
2332 | static QCString g_incName;␊ |
2333 | static QCString g_guardExpr;␊ |
2334 | static int g_curlyCount;␊ |
2335 | static bool g_nospaces; // add extra spaces during macro expansion␊ |
2336 | ␊ |
2337 | static bool g_macroExpansion; // from the configuration␊ |
2338 | static bool g_expandOnlyPredef; // from the configuration␊ |
2339 | static int g_commentCount;␊ |
2340 | static bool g_insideComment;␊ |
2341 | static bool g_isImported;␊ |
2342 | static QCString g_blockName;␊ |
2343 | static int g_condCtx;␊ |
2344 | static bool g_skip;␊ |
2345 | static QStack<bool> g_condStack;␊ |
2346 | static bool g_insideCS; // C# has simpler preprocessor␊ |
2347 | static bool g_isSource;␊ |
2348 | ␊ |
2349 | static bool g_lexInit = FALSE;␊ |
2350 | ␊ |
2351 | DefineDict* getGlobalDefineDict() ␊ |
2352 | {␊ |
2353 | return g_globalDefineDict;␊ |
2354 | }␊ |
2355 | ␊ |
2356 | static void setFileName(const char *name)␊ |
2357 | {␊ |
2358 | bool ambig;␊ |
2359 | QFileInfo fi(name);␊ |
2360 | g_yyFileName=convertToQCString(fi.absFilePath());␊ |
2361 | g_yyFileDef=findFileDef(Doxygen::inputNameDict,g_yyFileName,ambig);␊ |
2362 | if (g_yyFileDef==0) // if this is not an input file check if it is an␊ |
2363 | // include file␊ |
2364 | {␊ |
2365 | g_yyFileDef=findFileDef(Doxygen::includeNameDict,g_yyFileName,ambig);␊ |
2366 | }␊ |
2367 | //printf("setFileName(%s) g_yyFileName=%s g_yyFileDef=%p\n",␊ |
2368 | // name,g_yyFileName.data(),g_yyFileDef);␊ |
2369 | if (g_yyFileDef && g_yyFileDef->isReference()) g_yyFileDef=0;␊ |
2370 | g_insideCS = getLanguageFromFileName(g_yyFileName)==SrcLangExt_CSharp;␊ |
2371 | g_isSource = guessSection(g_yyFileName);␊ |
2372 | }␊ |
2373 | ␊ |
2374 | static void incrLevel()␊ |
2375 | {␊ |
2376 | g_level++;␊ |
2377 | g_levelGuard.resize(g_level);␊ |
2378 | g_levelGuard[g_level-1]=FALSE;␊ |
2379 | //printf("%s line %d: incrLevel %d\n",g_yyFileName.data(),g_yyLineNr,g_level);␊ |
2380 | }␊ |
2381 | ␊ |
2382 | static void decrLevel()␊ |
2383 | {␊ |
2384 | //printf("%s line %d: decrLevel %d\n",g_yyFileName.data(),g_yyLineNr,g_level);␊ |
2385 | if (g_level > 0)␊ |
2386 | {␊ |
2387 | g_level--;␊ |
2388 | g_levelGuard.resize(g_level);␊ |
2389 | }␊ |
2390 | else␊ |
2391 | {␊ |
2392 | warn(g_yyFileName,g_yyLineNr,"warning: More #endif's than #if's found.\n");␊ |
2393 | }␊ |
2394 | }␊ |
2395 | ␊ |
2396 | static bool otherCaseDone()␊ |
2397 | {␊ |
2398 | if (g_level==0)␊ |
2399 | {␊ |
2400 | warn(g_yyFileName,g_yyLineNr,"warning: Found an #else without a preceding #if.\n");␊ |
2401 | return TRUE;␊ |
2402 | }␊ |
2403 | else␊ |
2404 | {␊ |
2405 | return g_levelGuard[g_level-1];␊ |
2406 | }␊ |
2407 | }␊ |
2408 | ␊ |
2409 | static void setCaseDone(bool value)␊ |
2410 | {␊ |
2411 | g_levelGuard[g_level-1]=value;␊ |
2412 | }␊ |
2413 | ␊ |
2414 | static bool macroIsAccessible(Define *def)␊ |
2415 | {␊ |
2416 | //printf("macroIsAccessible(%s) input=%s def=%s\n",␊ |
2417 | // def->name.data(),g_inputFileDef?g_inputFileDef->name().data():"<none>",␊ |
2418 | // def->fileDef ? def->fileDef->name().data() : "<none>");␊ |
2419 | if (def && def->isPredefined) // predefined macro -> globally accessible␊ |
2420 | {␊ |
2421 | //printf("%s: predefined macro %s\n",g_inputFileDef->name().data(),def->name.data());␊ |
2422 | return TRUE;␊ |
2423 | }␊ |
2424 | if (def && def->fileDef==g_inputFileDef)␊ |
2425 | {␊ |
2426 | //printf("%s: macro %s defined in this file at line %d now at %d\n",␊ |
2427 | //␉g_inputFileDef->name().data(),def->name.data(),def->lineNr,g_yyLineNr);␊ |
2428 | return def->lineNr<=g_yyLineNr;␊ |
2429 | }␊ |
2430 | if (g_inputFileDef && def && def->fileDef) // check if g_inputFileDef actually includes def->fileDef␊ |
2431 | {␊ |
2432 | QDict<FileDef> includedFiles(257);␊ |
2433 | bool b = g_inputFileDef->includes(def->fileDef,&includedFiles);␊ |
2434 | //printf("%s: Checking for accessibility of define '%s' (defined in %s): result=%d\n",␊ |
2435 | // g_inputFileDef->name().data(),def->name.data(),def->fileDef->name().data(),b);␊ |
2436 | return b;␊ |
2437 | }␊ |
2438 | //printf("not accessible!\n");␊ |
2439 | return FALSE;␊ |
2440 | }␊ |
2441 | ␊ |
2442 | static Define *isDefined(const char *name)␊ |
2443 | {␊ |
2444 | Define *def=0;␊ |
2445 | if (name)␊ |
2446 | {␊ |
2447 | def=g_globalDefineDict->find(name);␊ |
2448 | //if ((def=fileDefineCache->findDefine(g_yyFileName,name)) && !def->undef) ␊ |
2449 | //␉return def;␊ |
2450 | if (def && def->undef) def=0;␊ |
2451 | if (def && !macroIsAccessible(def)) def=0;␊ |
2452 | }␊ |
2453 | return def;␊ |
2454 | }␊ |
2455 | ␊ |
2456 | ␊ |
2457 | static QDict<void> g_allIncludes(10009);␊ |
2458 | ␊ |
2459 | static FileState *checkAndOpenFile(const QCString &fileName,bool &alreadyIncluded)␊ |
2460 | {␊ |
2461 | alreadyIncluded = FALSE;␊ |
2462 | FileState *fs = 0;␊ |
2463 | //printf("checkAndOpenFile(%s)\n",fileName.data());␊ |
2464 | QFileInfo fi(fileName);␊ |
2465 | if (fi.exists() && fi.isFile())␊ |
2466 | {␊ |
2467 | static QStrList &exclPatterns = Config_getList("EXCLUDE_PATTERNS");␊ |
2468 | if (patternMatch(fi,&exclPatterns)) return 0;␊ |
2469 | ␊ |
2470 | QCString absName = convertToQCString(fi.absFilePath());␊ |
2471 | ␊ |
2472 | // global guard␊ |
2473 | if (g_curlyCount==0) // not #include inside { ... }␊ |
2474 | {␊ |
2475 | if (g_allIncludes.find(absName)!=0)␊ |
2476 | {␊ |
2477 | alreadyIncluded = TRUE;␊ |
2478 | //printf(" already included 1\n");␊ |
2479 | return 0; // already done␊ |
2480 | }␊ |
2481 | g_allIncludes.insert(absName,(void *)0x8);␊ |
2482 | }␊ |
2483 | // check include stack for absName␊ |
2484 | ␊ |
2485 | QStack<FileState> tmpStack;␊ |
2486 | g_includeStack.setAutoDelete(FALSE);␊ |
2487 | while ((fs=g_includeStack.pop()))␊ |
2488 | {␊ |
2489 | if (fs->fileName==absName) alreadyIncluded=TRUE;␊ |
2490 | tmpStack.push(fs);␊ |
2491 | }␊ |
2492 | while ((fs=tmpStack.pop()))␊ |
2493 | {␊ |
2494 | g_includeStack.push(fs);␊ |
2495 | }␊ |
2496 | g_includeStack.setAutoDelete(TRUE);␊ |
2497 | ␊ |
2498 | if (alreadyIncluded)␊ |
2499 | {␊ |
2500 | //printf(" already included 2\n");␊ |
2501 | return 0;␊ |
2502 | }␊ |
2503 | //printf("#include %s\n",absName.data());␊ |
2504 | ␊ |
2505 | fs = new FileState(fi.size()+4096);␊ |
2506 | alreadyIncluded = FALSE;␊ |
2507 | if (!readInputFile(absName,fs->fileBuf))␊ |
2508 | { // error␊ |
2509 | //printf(" error reading\n");␊ |
2510 | delete fs;␊ |
2511 | fs=0;␊ |
2512 | }␊ |
2513 | else␊ |
2514 | {␊ |
2515 | fs->oldFileBuf = g_inputBuf;␊ |
2516 | fs->oldFileBufPos = g_inputBufPos;␊ |
2517 | }␊ |
2518 | }␊ |
2519 | return fs;␊ |
2520 | }␊ |
2521 | ␊ |
2522 | static FileState *findFile(const char *fileName,bool localInclude,bool &alreadyIncluded)␊ |
2523 | {␊ |
2524 | //printf("** findFile(%s,%d) g_yyFileName=%s\n",fileName,localInclude,g_yyFileName.data());␊ |
2525 | if (localInclude && !g_yyFileName.isEmpty())␊ |
2526 | {␊ |
2527 | QFileInfo fi(g_yyFileName);␊ |
2528 | if (fi.exists())␊ |
2529 | {␊ |
2530 | QCString absName = QCString(fi.dirPath(TRUE).data())+"/"+fileName;␊ |
2531 | FileState *fs = checkAndOpenFile(absName,alreadyIncluded);␊ |
2532 | if (fs)␊ |
2533 | {␊ |
2534 | ␉setFileName(absName);␊ |
2535 | ␉g_yyLineNr=1;␊ |
2536 | ␉return fs;␊ |
2537 | }␊ |
2538 | else if (alreadyIncluded)␊ |
2539 | {␊ |
2540 | ␉return 0;␊ |
2541 | }␊ |
2542 | }␊ |
2543 | }␊ |
2544 | if (g_pathList==0) ␊ |
2545 | {␊ |
2546 | return 0;␊ |
2547 | }␊ |
2548 | char *s=g_pathList->first();␊ |
2549 | while (s)␊ |
2550 | {␊ |
2551 | QCString absName = (QCString)s+"/"+fileName;␊ |
2552 | //printf(" Looking for %s in %s\n",fileName,s);␊ |
2553 | FileState *fs = checkAndOpenFile(absName,alreadyIncluded);␊ |
2554 | if (fs)␊ |
2555 | {␊ |
2556 | setFileName(absName);␊ |
2557 | g_yyLineNr=1;␊ |
2558 | //printf(" -> found it\n");␊ |
2559 | return fs;␊ |
2560 | }␊ |
2561 | else if (alreadyIncluded)␊ |
2562 | {␊ |
2563 | return 0;␊ |
2564 | }␊ |
2565 | ␊ |
2566 | s=g_pathList->next();␊ |
2567 | } ␊ |
2568 | return 0;␊ |
2569 | }␊ |
2570 | ␊ |
2571 | static QCString extractTrailingComment(const char *s)␊ |
2572 | {␊ |
2573 | if (s==0) return "";␊ |
2574 | int i=strlen(s)-1;␊ |
2575 | while (i>=0)␊ |
2576 | {␊ |
2577 | char c=s[i];␊ |
2578 | switch (c)␊ |
2579 | {␊ |
2580 | case '/':␊ |
2581 | ␉{␊ |
2582 | ␉ i--;␊ |
2583 | ␉ if (i>=0 && s[i]=='*') // end of a comment block␊ |
2584 | ␉ {␊ |
2585 | ␉ i--;␊ |
2586 | ␉ while (i>0 && !(s[i-1]=='/' && s[i]=='*')) i--;␊ |
2587 | ␉ if (i==0) return s; else return &s[i-1];␊ |
2588 | ␉ }␊ |
2589 | ␉ else␊ |
2590 | ␉ {␊ |
2591 | ␉ return "";␊ |
2592 | ␉ }␊ |
2593 | ␉} ␊ |
2594 | ␉break;␊ |
2595 | ␉// whitespace or line-continuation␊ |
2596 | case ' ':␊ |
2597 | case '\t': ␊ |
2598 | case '\r':␊ |
2599 | case '\n':␊ |
2600 | case '\\':␊ |
2601 | ␉break;␊ |
2602 | default:␊ |
2603 | ␉return "";␊ |
2604 | }␊ |
2605 | i--;␊ |
2606 | }␊ |
2607 | return "";␊ |
2608 | }␊ |
2609 | ␊ |
2610 | static int getNextChar(const QCString &expr,QCString *rest,uint &pos);␊ |
2611 | static int getCurrentChar(const QCString &expr,QCString *rest,uint pos);␊ |
2612 | static void unputChar(const QCString &expr,QCString *rest,uint &pos,char c);␊ |
2613 | static void expandExpression(QCString &expr,QCString *rest,int pos);␊ |
2614 | ␊ |
2615 | static QCString stringize(const QCString &s)␊ |
2616 | {␊ |
2617 | QCString result;␊ |
2618 | uint i=0;␊ |
2619 | bool inString=FALSE;␊ |
2620 | bool inChar=FALSE;␊ |
2621 | char c,pc;␊ |
2622 | while (i<s.length())␊ |
2623 | {␊ |
2624 | if (!inString && !inChar)␊ |
2625 | {␊ |
2626 | while (i<s.length() && !inString && !inChar)␊ |
2627 | {␊ |
2628 | ␉c=s.at(i++);␊ |
2629 | ␉if (c=='"')␊ |
2630 | ␉{␊ |
2631 | ␉ result+="\\\"";␊ |
2632 | ␉ inString=TRUE;␊ |
2633 | ␉}␊ |
2634 | ␉else if (c=='\'')␊ |
2635 | ␉{␊ |
2636 | ␉ result+=c;␊ |
2637 | ␉ inChar=TRUE;␊ |
2638 | ␉}␊ |
2639 | ␉else␊ |
2640 | ␉{␊ |
2641 | ␉ result+=c;␊ |
2642 | ␉}␊ |
2643 | }␊ |
2644 | }␊ |
2645 | else if (inChar)␊ |
2646 | {␊ |
2647 | while (i<s.length() && inChar)␊ |
2648 | {␊ |
2649 | ␉c=s.at(i++);␊ |
2650 | ␉if (c=='\'')␊ |
2651 | ␉{␊ |
2652 | ␉ result+='\'';␊ |
2653 | ␉ inChar=FALSE;␊ |
2654 | ␉}␊ |
2655 | ␉else if (c=='\\')␊ |
2656 | ␉{␊ |
2657 | ␉ result+="\\\\";␊ |
2658 | ␉}␊ |
2659 | ␉else␊ |
2660 | ␉{␊ |
2661 | ␉ result+=c;␊ |
2662 | ␉}␊ |
2663 | }␊ |
2664 | }␊ |
2665 | else␊ |
2666 | {␊ |
2667 | pc=0;␊ |
2668 | while (i<s.length() && inString)␊ |
2669 | {␊ |
2670 | ␉char c=s.at(i++);␊ |
2671 | ␉if (c=='"') ␊ |
2672 | ␉{␊ |
2673 | ␉ result+="\\\"";␊ |
2674 | ␉ inString= pc=='\\';␊ |
2675 | ␉}␊ |
2676 | ␉else if (c=='\\')␊ |
2677 | ␉ result+="\\\\";␊ |
2678 | ␉else␊ |
2679 | ␉ result+=c;␊ |
2680 | ␉pc=c;␊ |
2681 | }␊ |
2682 | }␊ |
2683 | }␊ |
2684 | //printf("stringize `%s'->`%s'\n",s.data(),result.data());␊ |
2685 | return result;␊ |
2686 | }␊ |
2687 | ␊ |
2688 | /*! Execute all ## operators in expr. ␊ |
2689 | * If the macro name before or after the operator contains a no-rescan ␊ |
2690 | * marker (@-) then this is removed (before the concatenated macro name␊ |
2691 | * may be expanded again.␊ |
2692 | */␊ |
2693 | static void processConcatOperators(QCString &expr)␊ |
2694 | {␊ |
2695 | //printf("processConcatOperators: in=`%s'\n",expr.data());␊ |
2696 | QRegExp r("[ \\t\\n]*##[ \\t\\n]*"); ␊ |
2697 | int l,n,i=0;␊ |
2698 | if (expr.isEmpty()) return;␊ |
2699 | while ((n=r.match(expr,i,&l))!=-1)␊ |
2700 | {␊ |
2701 | //printf("Match: `%s'\n",expr.data()+i);␊ |
2702 | if (n+l+1<(int)expr.length() && expr.at(n+l)=='@' && expr.at(n+l+1)=='-')␊ |
2703 | {␊ |
2704 | // remove no-rescan marker after ID␊ |
2705 | l+=2;␊ |
2706 | }␊ |
2707 | //printf("found `%s'\n",expr.mid(n,l).data());␊ |
2708 | // remove the ## operator and the surrounding whitespace␊ |
2709 | expr=expr.left(n)+expr.right(expr.length()-n-l);␊ |
2710 | int k=n-1;␊ |
2711 | while (k>=0 && isId(expr.at(k))) k--; ␊ |
2712 | if (k>0 && expr.at(k)=='-' && expr.at(k-1)=='@')␊ |
2713 | {␊ |
2714 | // remove no-rescan marker before ID␊ |
2715 | expr=expr.left(k-1)+expr.right(expr.length()-k-1);␊ |
2716 | n-=2;␊ |
2717 | }␊ |
2718 | i=n;␊ |
2719 | }␊ |
2720 | //printf("processConcatOperators: out=`%s'\n",expr.data());␊ |
2721 | }␊ |
2722 | ␊ |
2723 | static void yyunput (int c,char *buf_ptr );␊ |
2724 | static void returnCharToStream(char c)␊ |
2725 | {␊ |
2726 | unput(c);␊ |
2727 | }␊ |
2728 | ␊ |
2729 | static inline void addTillEndOfString(const QCString &expr,QCString *rest,␊ |
2730 | uint &pos,char term,QCString &arg)␊ |
2731 | {␊ |
2732 | int cc;␊ |
2733 | while ((cc=getNextChar(expr,rest,pos))!=EOF)␊ |
2734 | {␊ |
2735 | if (cc=='\\') arg+=(char)cc,cc=getNextChar(expr,rest,pos);␊ |
2736 | else if (cc==term) return;␊ |
2737 | arg+=(char)cc;␊ |
2738 | }␊ |
2739 | }␊ |
2740 | ␊ |
2741 | /*! replaces the function macro \a def whose argument list starts at␊ |
2742 | * \a pos in expression \a expr. ␊ |
2743 | * Notice that this routine may scan beyond the \a expr string if needed.␊ |
2744 | * In that case the characters will be read from the input file.␊ |
2745 | * The replacement string will be returned in \a result and the ␊ |
2746 | * length of the (unexpanded) argument list is stored in \a len.␊ |
2747 | */ ␊ |
2748 | static bool replaceFunctionMacro(const QCString &expr,QCString *rest,int pos,int &len,const Define *def,QCString &result)␊ |
2749 | {␊ |
2750 | //printf("replaceFunctionMacro(expr=%s,rest=%s,pos=%d,def=%s) level=%d\n",expr.data(),rest ? rest->data() : 0,pos,def->name.data(),g_level);␊ |
2751 | uint j=pos;␊ |
2752 | len=0;␊ |
2753 | result.resize(0);␊ |
2754 | int cc;␊ |
2755 | while ((cc=getCurrentChar(expr,rest,j))!=EOF && isspace(cc)) ␊ |
2756 | { ␊ |
2757 | len++; ␊ |
2758 | getNextChar(expr,rest,j); ␊ |
2759 | }␊ |
2760 | if (cc!='(') ␊ |
2761 | { ␊ |
2762 | unputChar(expr,rest,j,' '); ␊ |
2763 | return FALSE; ␊ |
2764 | }␊ |
2765 | getNextChar(expr,rest,j); // eat the `(' character␊ |
2766 | ␊ |
2767 | QDict<QCString> argTable; // list of arguments␊ |
2768 | argTable.setAutoDelete(TRUE);␊ |
2769 | QCString arg;␊ |
2770 | int argCount=0;␊ |
2771 | bool done=FALSE;␊ |
2772 | ␊ |
2773 | // PHASE 1: read the macro arguments␊ |
2774 | if (def->nargs==0)␊ |
2775 | {␊ |
2776 | while ((cc=getNextChar(expr,rest,j))!=EOF)␊ |
2777 | {␊ |
2778 | char c = (char)cc;␊ |
2779 | if (c==')') break;␊ |
2780 | }␊ |
2781 | }␊ |
2782 | else␊ |
2783 | {␊ |
2784 | while (!done && (argCount<def->nargs || def->varArgs) && ␊ |
2785 | ␉((cc=getNextChar(expr,rest,j))!=EOF)␊ |
2786 | ␉ )␊ |
2787 | {␊ |
2788 | char c=(char)cc;␊ |
2789 | if (c=='(') // argument is a function => search for matching )␊ |
2790 | {␊ |
2791 | ␉int level=1;␊ |
2792 | ␉arg+=c;␊ |
2793 | ␉//char term='\0';␊ |
2794 | ␉while ((cc=getNextChar(expr,rest,j))!=EOF)␊ |
2795 | ␉{␊ |
2796 | ␉ char c=(char)cc;␊ |
2797 | ␉ //printf("processing %c: term=%c (%d)\n",c,term,term);␊ |
2798 | ␉ if (c=='\'' || c=='\"') // skip ('s and )'s inside strings␊ |
2799 | ␉ {␊ |
2800 | ␉ arg+=c;␊ |
2801 | ␉ addTillEndOfString(expr,rest,j,c,arg);␊ |
2802 | ␉ }␊ |
2803 | ␉ if (c==')')␊ |
2804 | ␉ {␊ |
2805 | ␉ level--;␊ |
2806 | ␉ arg+=c;␊ |
2807 | ␉ if (level==0) break;␊ |
2808 | ␉ }␊ |
2809 | ␉ else if (c=='(')␊ |
2810 | ␉ {␊ |
2811 | ␉ level++;␊ |
2812 | ␉ arg+=c;␊ |
2813 | ␉ }␊ |
2814 | ␉ else␊ |
2815 | ␉ arg+=c;␊ |
2816 | ␉}␊ |
2817 | }␊ |
2818 | else if (c==')' || c==',') // last or next argument found␊ |
2819 | {␊ |
2820 | ␉if (c==',' && argCount==def->nargs-1 && def->varArgs)␊ |
2821 | ␉{␊ |
2822 | ␉ arg=arg.stripWhiteSpace();␊ |
2823 | ␉ arg+=',';␊ |
2824 | ␉}␊ |
2825 | ␉else␊ |
2826 | ␉{␊ |
2827 | ␉ QCString argKey;␊ |
2828 | ␉ argKey.sprintf("@%d",argCount++); // key name␊ |
2829 | ␉ arg=arg.stripWhiteSpace();␊ |
2830 | ␉ // add argument to the lookup table␊ |
2831 | ␉ argTable.insert(argKey, new QCString(arg));␊ |
2832 | ␉ arg.resize(0);␊ |
2833 | ␉ if (c==')') // end of the argument list␊ |
2834 | ␉ {␊ |
2835 | ␉ done=TRUE;␊ |
2836 | ␉ }␊ |
2837 | ␉}␊ |
2838 | } ␊ |
2839 | else if (c=='\"') // append literal strings␊ |
2840 | {␊ |
2841 | ␉arg+=c; ␊ |
2842 | ␉bool found=FALSE;␊ |
2843 | ␉while (!found && (cc=getNextChar(expr,rest,j))!=EOF)␊ |
2844 | ␉{␊ |
2845 | ␉ found = cc=='"';␊ |
2846 | ␉ if (cc=='\\')␊ |
2847 | ␉ {␊ |
2848 | ␉ c=(char)cc;␉ ␊ |
2849 | ␉ arg+=c;␊ |
2850 | ␉ if ((cc=getNextChar(expr,rest,j))==EOF) break;␊ |
2851 | ␉ }␊ |
2852 | ␉ c=(char)cc;␉ ␊ |
2853 | ␉ arg+=c;␊ |
2854 | ␉}␊ |
2855 | }␊ |
2856 | else if (c=='\'') // append literal characters␊ |
2857 | {␊ |
2858 | ␉arg+=c;␊ |
2859 | ␉bool found=FALSE;␊ |
2860 | ␉while (!found && (cc=getNextChar(expr,rest,j))!=EOF)␊ |
2861 | ␉{␊ |
2862 | ␉ found = cc=='\'';␊ |
2863 | ␉ if (cc=='\\')␊ |
2864 | ␉ {␊ |
2865 | ␉ c=(char)cc;␉ ␊ |
2866 | ␉ arg+=c;␊ |
2867 | ␉ if ((cc=getNextChar(expr,rest,j))==EOF) break;␊ |
2868 | ␉ }␊ |
2869 | ␉ c=(char)cc;␊ |
2870 | ␉ arg+=c;␊ |
2871 | ␉}␊ |
2872 | }␉ ␊ |
2873 | else // append other characters␊ |
2874 | {␊ |
2875 | ␉arg+=c;␊ |
2876 | }␊ |
2877 | }␊ |
2878 | }␊ |
2879 | ␊ |
2880 | // PHASE 2: apply the macro function␊ |
2881 | if (argCount==def->nargs || ␊ |
2882 | (argCount>def->nargs && def->varArgs)) // matching parameters lists␊ |
2883 | {␊ |
2884 | uint k=0;␊ |
2885 | // substitution of all formal arguments␊ |
2886 | QCString resExpr;␊ |
2887 | const QCString d=def->definition.stripWhiteSpace();␊ |
2888 | //printf("Macro definition: %s\n",d.data());␊ |
2889 | bool inString=FALSE;␊ |
2890 | while (k<d.length())␊ |
2891 | {␊ |
2892 | if (d.at(k)=='@') // maybe a marker, otherwise an escaped @␊ |
2893 | {␊ |
2894 | ␉if (d.at(k+1)=='@') // escaped @ => copy it (is unescaped later)␊ |
2895 | ␉{␊ |
2896 | ␉ k+=2;␊ |
2897 | ␉ resExpr+="@@"; // we unescape these later␊ |
2898 | ␉}␊ |
2899 | ␉else if (d.at(k+1)=='-') // no-rescan marker␊ |
2900 | ␉{␊ |
2901 | ␉ k+=2;␊ |
2902 | ␉ resExpr+="@-";␊ |
2903 | ␉}␊ |
2904 | ␉else // argument marker => read the argument number␊ |
2905 | ␉{␊ |
2906 | ␉ QCString key="@";␊ |
2907 | ␉ QCString *subst=0;␊ |
2908 | ␉ bool hash=FALSE;␊ |
2909 | ␉ int l=k-1;␊ |
2910 | ␉ // search for ## backward␊ |
2911 | ␉ if (l>=0 && d.at(l)=='"') l--;␊ |
2912 | ␉ while (l>=0 && d.at(l)==' ') l--;␊ |
2913 | ␉ if (l>0 && d.at(l)=='#' && d.at(l-1)=='#') hash=TRUE;␊ |
2914 | ␉ k++;␊ |
2915 | ␉ // scan the number␊ |
2916 | ␉ while (k<d.length() && d.at(k)>='0' && d.at(k)<='9') key+=d.at(k++);␊ |
2917 | ␉ if (!hash) ␊ |
2918 | ␉ {␊ |
2919 | ␉ // search for ## forward␊ |
2920 | ␉ l=k;␊ |
2921 | ␉ if (l<(int)d.length() && d.at(l)=='"') l++;␊ |
2922 | ␉ while (l<(int)d.length() && d.at(l)==' ') l++;␊ |
2923 | ␉ if (l<(int)d.length()-1 && d.at(l)=='#' && d.at(l+1)=='#') hash=TRUE;␊ |
2924 | ␉ }␊ |
2925 | ␉ //printf("request key %s result %s\n",key.data(),argTable[key]->data());␊ |
2926 | ␉ if (key.length()>1 && (subst=argTable[key])) ␊ |
2927 | ␉ {␊ |
2928 | ␉ QCString substArg=*subst;␊ |
2929 | ␉ //printf("substArg=`%s'\n",substArg.data());␊ |
2930 | ␉ // only if no ## operator is before or after the argument␊ |
2931 | ␉ // marker we do macro expansion.␊ |
2932 | ␉ if (!hash) expandExpression(substArg,0,0);␊ |
2933 | ␉ if (inString)␊ |
2934 | ␉ {␊ |
2935 | ␉ //printf("`%s'=stringize(`%s')\n",stringize(*subst).data(),subst->data());␊ |
2936 | ␊ |
2937 | ␉ // if the marker is inside a string (because a # was put ␊ |
2938 | ␉ // before the macro name) we must escape " and \ characters␊ |
2939 | ␉ resExpr+=stringize(substArg);␊ |
2940 | ␉ }␊ |
2941 | ␉ else␊ |
2942 | ␉ {␊ |
2943 | ␉ if (hash && substArg.isEmpty())␊ |
2944 | ␉ {␊ |
2945 | ␉␉resExpr+="@E"; // empty argument will be remove later on␊ |
2946 | ␉ }␊ |
2947 | ␉ else if (g_nospaces)␊ |
2948 | ␉ {␊ |
2949 | ␉ resExpr+=substArg;␊ |
2950 | ␉ }␊ |
2951 | ␉ else␊ |
2952 | ␉ {␊ |
2953 | ␉ resExpr+=" "+substArg+" ";␊ |
2954 | ␉ }␊ |
2955 | ␉ }␊ |
2956 | ␉ }␊ |
2957 | ␉}␊ |
2958 | }␊ |
2959 | else // no marker, just copy␊ |
2960 | {␊ |
2961 | ␉if (!inString && d.at(k)=='\"') ␊ |
2962 | ␉{␊ |
2963 | ␉ inString=TRUE; // entering a literal string␊ |
2964 | ␉}␊ |
2965 | ␉else if (inString && d.at(k)=='\"' && (d.at(k-1)!='\\' || d.at(k-2)=='\\'))␊ |
2966 | ␉{␊ |
2967 | ␉ inString=FALSE; // leaving a literal string␊ |
2968 | ␉}␊ |
2969 | ␉resExpr+=d.at(k++);␊ |
2970 | }␊ |
2971 | }␊ |
2972 | len=j-pos;␊ |
2973 | result=resExpr;␊ |
2974 | //printf("result after substitution `%s' expr=`%s'\n",␊ |
2975 | // result.data(),expr.mid(pos,len).data());␊ |
2976 | return TRUE;␊ |
2977 | }␊ |
2978 | return FALSE;␊ |
2979 | }␊ |
2980 | ␊ |
2981 | ␊ |
2982 | /*! returns the next identifier in string \a expr by starting at position \a p.␊ |
2983 | * The position of the identifier is returned (or -1 if nothing is found)␊ |
2984 | * and \a l is its length. Any quoted strings are skipping during the search.␊ |
2985 | */␊ |
2986 | static int getNextId(const QCString &expr,int p,int *l)␊ |
2987 | {␊ |
2988 | int n;␊ |
2989 | while (p<(int)expr.length())␊ |
2990 | {␊ |
2991 | char c=expr.at(p++);␊ |
2992 | if (isdigit(c)) // skip number␊ |
2993 | {␊ |
2994 | while (p<(int)expr.length() && isId(expr.at(p))) p++;␊ |
2995 | }␊ |
2996 | else if (isalpha(c) || c=='_') // read id␊ |
2997 | {␊ |
2998 | n=p-1;␊ |
2999 | while (p<(int)expr.length() && isId(expr.at(p))) p++;␊ |
3000 | *l=p-n;␊ |
3001 | return n; ␊ |
3002 | }␊ |
3003 | else if (c=='"') // skip string␊ |
3004 | {␊ |
3005 | char ppc=0,pc=c;␊ |
3006 | if (p<(int)expr.length()) c=expr.at(p);␊ |
3007 | while (p<(int)expr.length() && (c!='"' || (pc=='\\' && ppc!='\\'))) ␊ |
3008 | ␉// continue as long as no " is found, but ignoring \", but not \\"␊ |
3009 | {␊ |
3010 | ␉ppc=pc;␊ |
3011 | ␉pc=c;␊ |
3012 | ␉c=expr.at(p);␊ |
3013 | ␉p++;␊ |
3014 | }␊ |
3015 | if (p<(int)expr.length()) ++p; // skip closing quote␊ |
3016 | }␊ |
3017 | else if (c=='/') // skip C Comment␊ |
3018 | {␊ |
3019 | char pc=c;␊ |
3020 | if (p<(int)expr.length()) ␊ |
3021 | {␊ |
3022 | ␉c=expr.at(++p);␊ |
3023 | if (c=='*') // Start of C comment␊ |
3024 | { ␊ |
3025 | ␉ while (p<(int)expr.length() && !(pc=='*' && c=='/'))␊ |
3026 | ␉ {␊ |
3027 | ␉ pc=c;␊ |
3028 | ␉ c=expr.at(++p);␊ |
3029 | ␉ }␊ |
3030 | ␉ p++;␊ |
3031 | }␊ |
3032 | }␊ |
3033 | }␊ |
3034 | }␊ |
3035 | return -1;␊ |
3036 | }␊ |
3037 | ␊ |
3038 | /*! preforms recursive macro expansion on the string \a expr␊ |
3039 | * starting at position \a pos.␊ |
3040 | * May read additional characters from the input while re-scanning!␊ |
3041 | * If \a expandAll is \c TRUE then all macros in the expression are␊ |
3042 | * expanded, otherwise only the first is expanded.␊ |
3043 | */␊ |
3044 | static void expandExpression(QCString &expr,QCString *rest,int pos)␊ |
3045 | {␊ |
3046 | //printf("expandExpression(%s,%s)\n",expr.data(),rest ? rest->data() : 0);␊ |
3047 | QCString macroName;␊ |
3048 | QCString expMacro;␊ |
3049 | bool definedTest=FALSE;␊ |
3050 | int i=pos,l,p,len;␊ |
3051 | while ((p=getNextId(expr,i,&l))!=-1) // search for an macro name␊ |
3052 | {␊ |
3053 | bool replaced=FALSE;␊ |
3054 | macroName=expr.mid(p,l);␊ |
3055 | if (p<2 || !(expr.at(p-2)=='@' && expr.at(p-1)=='-')) // no-rescan marker?␊ |
3056 | {␊ |
3057 | if (g_expandedDict->find(macroName)==0) // expand macro␊ |
3058 | {␊ |
3059 | ␉Define *def=isDefined(macroName);␊ |
3060 | ␉if (definedTest) // macro name was found after defined ␊ |
3061 | ␉{␊ |
3062 | ␉ if (def) expMacro = " 1 "; else expMacro = " 0 ";␊ |
3063 | ␉ replaced=TRUE;␊ |
3064 | ␉ len=l;␊ |
3065 | ␉ definedTest=FALSE;␊ |
3066 | ␉}␊ |
3067 | ␉else if (def && def->nargs==-1) // simple macro␊ |
3068 | ␉{␊ |
3069 | ␉ // substitute the definition of the macro␊ |
3070 | ␉ //printf("macro `%s'->`%s'\n",macroName.data(),def->definition.data());␊ |
3071 | ␉ if (g_nospaces)␊ |
3072 | ␉ {␊ |
3073 | ␉ expMacro=def->definition.stripWhiteSpace();␊ |
3074 | ␉ }␊ |
3075 | ␉ else␊ |
3076 | ␉ {␊ |
3077 | ␉ expMacro=" "+def->definition.stripWhiteSpace()+" ";␊ |
3078 | ␉ }␊ |
3079 | ␉ //expMacro=def->definition.stripWhiteSpace();␊ |
3080 | ␉ replaced=TRUE;␊ |
3081 | ␉ len=l;␊ |
3082 | ␉ //printf("simple macro expansion=`%s'->`%s'\n",macroName.data(),expMacro.data());␊ |
3083 | ␉}␊ |
3084 | ␉else if (def && def->nargs>=0) // function macro␊ |
3085 | ␉{␊ |
3086 | ␉ replaced=replaceFunctionMacro(expr,rest,p+l,len,def,expMacro);␊ |
3087 | ␉ len+=l;␊ |
3088 | ␉}␊ |
3089 | else if (macroName=="defined")␊ |
3090 | {␊ |
3091 | ␉ //printf("found defined inside macro definition '%s'\n",expr.right(expr.length()-p).data());␊ |
3092 | ␉ definedTest=TRUE;␊ |
3093 | }␊ |
3094 | ␊ |
3095 | ␉if (replaced) // expand the macro and rescan the expression␊ |
3096 | ␉{␊ |
3097 | ␉ ␊ |
3098 | ␉ //printf("replacing `%s'->`%s'\n",expr.mid(p,len).data(),expMacro.data());␊ |
3099 | ␉ QCString resultExpr=expMacro;␊ |
3100 | ␉ QCString restExpr=expr.right(expr.length()-len-p);␊ |
3101 | ␉ processConcatOperators(resultExpr);␊ |
3102 | ␉ if (def && !def->nonRecursive)␊ |
3103 | ␉ {␊ |
3104 | ␉ g_expandedDict->insert(macroName,def);␊ |
3105 | ␉ expandExpression(resultExpr,&restExpr,0);␊ |
3106 | ␉ g_expandedDict->remove(macroName);␊ |
3107 | ␉ }␊ |
3108 | ␉ expr=expr.left(p)+resultExpr+restExpr;␊ |
3109 | ␉ i=p;␊ |
3110 | ␉ //printf("new expression: %s\n",expr.data());␊ |
3111 | ␉}␊ |
3112 | ␉else // move to the next macro name␊ |
3113 | ␉{␊ |
3114 | ␉ //printf("moving to the next macro old=%d new=%d\n",i,p+l);␊ |
3115 | ␉ i=p+l;␊ |
3116 | ␉}␊ |
3117 | }␊ |
3118 | else // move to the next macro name␊ |
3119 | {␊ |
3120 | ␉expr=expr.left(p)+"@-"+expr.right(expr.length()-p);␊ |
3121 | ␉//printf("macro already expanded, moving to the next macro expr=%s\n",expr.data());␊ |
3122 | ␉i=p+l+2;␊ |
3123 | ␉//i=p+l;␊ |
3124 | }␊ |
3125 | }␊ |
3126 | else // no re-scan marker found, skip the macro name␊ |
3127 | {␊ |
3128 | //printf("skipping marked macro\n");␊ |
3129 | i=p+l;␊ |
3130 | }␊ |
3131 | }␊ |
3132 | }␊ |
3133 | ␊ |
3134 | /*! replaces all occurrences of @@@@ in \a s by @@␊ |
3135 | * and removes all occurrences of @@E.␊ |
3136 | * All identifiers found are replaced by 0L␊ |
3137 | */␊ |
3138 | QCString removeIdsAndMarkers(const char *s)␊ |
3139 | {␊ |
3140 | //printf("removeIdsAndMarkers(%s)\n",s);␊ |
3141 | const char *p=s;␊ |
3142 | char c;␊ |
3143 | bool inNum=FALSE;␊ |
3144 | QCString result;␊ |
3145 | if (p)␊ |
3146 | {␊ |
3147 | while ((c=*p))␊ |
3148 | {␊ |
3149 | if (c=='@') // replace @@ with @ and remove @E␊ |
3150 | {␊ |
3151 | ␉if (*(p+1)=='@')␊ |
3152 | ␉{␊ |
3153 | ␉ result+=c; ␊ |
3154 | ␉}␊ |
3155 | ␉else if (*(p+1)=='E')␊ |
3156 | ␉{␊ |
3157 | ␉ // skip␊ |
3158 | ␉}␊ |
3159 | ␉p+=2;␊ |
3160 | }␊ |
3161 | else if (isdigit(c)) // number␊ |
3162 | {␊ |
3163 | ␉result+=c;␊ |
3164 | ␉p++;␊ |
3165 | inNum=TRUE;␉␊ |
3166 | }␊ |
3167 | else if (c=='d' && !inNum) // identifier starting with a `d'␊ |
3168 | {␊ |
3169 | ␉if (strncmp(p,"defined ",8)==0 || strncmp(p,"defined(",8)==0) ␊ |
3170 | ␉ // defined keyword␊ |
3171 | ␉{␊ |
3172 | ␉ p+=7; // skip defined␊ |
3173 | ␉}␊ |
3174 | ␉else␊ |
3175 | ␉{␊ |
3176 | ␉ result+="0L";␊ |
3177 | ␉ p++;␊ |
3178 | ␉ while ((c=*p) && isId(c)) p++;␊ |
3179 | ␉}␊ |
3180 | }␊ |
3181 | else if ((isalpha(c) || c=='_') && !inNum) // replace identifier with 0L␊ |
3182 | {␊ |
3183 | ␉result+="0L";␊ |
3184 | ␉p++;␊ |
3185 | ␉while ((c=*p) && isId(c)) p++;␊ |
3186 | ␉if (*p=='(') // undefined function macro␊ |
3187 | ␉{␊ |
3188 | ␉ p++;␊ |
3189 | ␉ int count=1;␊ |
3190 | ␉ while ((c=*p++))␊ |
3191 | ␉ {␊ |
3192 | ␉ if (c=='(') count++;␊ |
3193 | ␉ else if (c==')')␊ |
3194 | ␉ {␊ |
3195 | ␉ count--;␊ |
3196 | ␉ if (count==0) break;␊ |
3197 | ␉ }␊ |
3198 | ␉ else if (c=='/')␊ |
3199 | ␉ {␊ |
3200 | ␉ char pc=c;␊ |
3201 | ␉ c=*++p;␊ |
3202 | ␉ if (c=='*') // start of C comment␊ |
3203 | ␉ {␊ |
3204 | ␉␉while (*p && !(pc=='*' && c=='/')) // search end of comment␊ |
3205 | ␉␉{␊ |
3206 | ␉␉ pc=c;␊ |
3207 | ␉␉ c=*++p;␊ |
3208 | ␉␉}␊ |
3209 | ␉␉p++;␊ |
3210 | ␉ }␊ |
3211 | ␉ }␊ |
3212 | ␉ }␊ |
3213 | ␉}␊ |
3214 | }␊ |
3215 | else if (c=='/') // skip C comments␊ |
3216 | {␊ |
3217 | ␉char pc=c;␊ |
3218 | ␉c=*++p;␊ |
3219 | ␉if (c=='*') // start of C comment␊ |
3220 | ␉{ ␊ |
3221 | ␉ while (*p && !(pc=='*' && c=='/')) // search end of comment␊ |
3222 | ␉ {␊ |
3223 | ␉ pc=c;␊ |
3224 | ␉ c=*++p;␊ |
3225 | ␉ }␊ |
3226 | ␉ p++;␊ |
3227 | ␉}␊ |
3228 | ␉else // oops, not comment but division␊ |
3229 | ␉{␊ |
3230 | ␉ result+=pc;␊ |
3231 | ␉ goto nextChar;␊ |
3232 | ␉}␊ |
3233 | }␊ |
3234 | else ␊ |
3235 | {␊ |
3236 | nextChar:␊ |
3237 | ␉result+=c;␊ |
3238 | ␉char lc=tolower(c);␊ |
3239 | ␉if (!isId(lc) && lc!='.' /*&& lc!='-' && lc!='+'*/) inNum=FALSE;␊ |
3240 | ␉p++;␊ |
3241 | }␊ |
3242 | }␊ |
3243 | }␊ |
3244 | //printf("removeIdsAndMarkers(%s)=%s\n",s,result.data());␊ |
3245 | return result;␊ |
3246 | }␊ |
3247 | ␊ |
3248 | /*! replaces all occurrences of @@ in \a s by @␊ |
3249 | * \par assumption: ␊ |
3250 | * \a s only contains pairs of @@'s␊ |
3251 | */␊ |
3252 | QCString removeMarkers(const char *s)␊ |
3253 | {␊ |
3254 | const char *p=s;␊ |
3255 | char c;␊ |
3256 | QCString result;␊ |
3257 | if (p)␊ |
3258 | {␊ |
3259 | while ((c=*p))␊ |
3260 | {␊ |
3261 | switch(c)␊ |
3262 | {␊ |
3263 | ␉case '@': // replace @@ with @␊ |
3264 | ␉ {␊ |
3265 | ␉ if (*(p+1)=='@')␊ |
3266 | ␉ {␊ |
3267 | ␉ result+=c; ␊ |
3268 | ␉ }␊ |
3269 | ␉ p+=2;␊ |
3270 | ␉ }␊ |
3271 | ␉ break;␊ |
3272 | ␉case '/': // skip C comments␊ |
3273 | ␉ {␊ |
3274 | ␉ result+=c;␊ |
3275 | ␉ char pc=c;␊ |
3276 | ␉ c=*++p;␊ |
3277 | ␉ if (c=='*') // start of C comment␊ |
3278 | ␉ { ␊ |
3279 | ␉ while (*p && !(pc=='*' && c=='/')) // search end of comment␊ |
3280 | ␉ {␊ |
3281 | ␉␉if (*p=='@' && *(p+1)=='@') ␊ |
3282 | ␉␉ result+=c,p++;␊ |
3283 | ␉␉else ␊ |
3284 | ␉␉ result+=c;␊ |
3285 | ␉␉pc=c;␊ |
3286 | ␉␉c=*++p;␊ |
3287 | ␉ }␊ |
3288 | ␉ if (*p)␊ |
3289 | ␉ {␊ |
3290 | ␉ result+=c;␊ |
3291 | ␉ p++;␊ |
3292 | ␉ }␊ |
3293 | ␉ }␊ |
3294 | ␉ }␊ |
3295 | ␉ break;␊ |
3296 | ␉case '"': // skip string literals␊ |
3297 | ␉ {␊ |
3298 | ␉ result+=c;␊ |
3299 | ␉ char pc=c;␊ |
3300 | ␉ c=*++p;␊ |
3301 | ␉ while (*p && (c!='"' || pc=='\\')) // no end quote␊ |
3302 | ␉ {␊ |
3303 | ␉ result+=c;␊ |
3304 | ␉ c=*++p;␊ |
3305 | ␉ }␊ |
3306 | ␉ }␊ |
3307 | ␉ break;␊ |
3308 | ␉case '\'': // skip char literals␊ |
3309 | ␉ {␊ |
3310 | ␉ result+=c;␊ |
3311 | ␉ char pc=c;␊ |
3312 | ␉ c=*++p;␊ |
3313 | ␉ while (*p && (c!='\'' || pc=='\\')) // no end quote␊ |
3314 | ␉ {␊ |
3315 | ␉ result+=c;␊ |
3316 | ␉ c=*++p;␊ |
3317 | ␉ }␊ |
3318 | ␉ }␊ |
3319 | ␉ break;␊ |
3320 | ␉default:␊ |
3321 | ␉ {␊ |
3322 | ␉ result+=c;␊ |
3323 | ␉ p++;␊ |
3324 | ␉ }␊ |
3325 | ␉ break;␊ |
3326 | }␊ |
3327 | }␊ |
3328 | }␊ |
3329 | //printf("RemoveMarkers(%s)=%s\n",s,result.data());␊ |
3330 | return result;␊ |
3331 | }␊ |
3332 | ␊ |
3333 | /*! compute the value of the expression in string \a expr.␊ |
3334 | * If needed the function may read additional characters from the input.␊ |
3335 | */␊ |
3336 | ␊ |
3337 | bool computeExpression(const QCString &expr)␊ |
3338 | {␊ |
3339 | QCString e=expr;␊ |
3340 | expandExpression(e,0,0);␊ |
3341 | //printf("after expansion `%s'\n",e.data());␊ |
3342 | e = removeIdsAndMarkers(e);␊ |
3343 | if (e.isEmpty()) return FALSE;␊ |
3344 | //printf("parsing `%s'\n",e.data());␊ |
3345 | return parseCppExpression(g_yyFileName,g_yyLineNr,e);␊ |
3346 | }␊ |
3347 | ␊ |
3348 | /*! expands the macro definition in \a name␊ |
3349 | * If needed the function may read additional characters from the input␊ |
3350 | */␊ |
3351 | ␊ |
3352 | QCString expandMacro(const QCString &name)␊ |
3353 | {␊ |
3354 | QCString n=name;␊ |
3355 | expandExpression(n,0,0);␊ |
3356 | n=removeMarkers(n);␊ |
3357 | //printf("expandMacro `%s'->`%s'\n",name.data(),n.data());␊ |
3358 | return n;␊ |
3359 | }␊ |
3360 | ␊ |
3361 | Define *newDefine()␊ |
3362 | {␊ |
3363 | Define *def=new Define;␊ |
3364 | def->name = g_defName;␊ |
3365 | def->definition = g_defText.stripWhiteSpace();␊ |
3366 | def->nargs = g_defArgs;␊ |
3367 | def->fileName = g_yyFileName; ␊ |
3368 | def->fileDef = g_yyFileDef;␊ |
3369 | def->lineNr = g_yyLineNr;␊ |
3370 | def->varArgs = g_defVarArgs;␊ |
3371 | //printf("newDefine: %s->%s\n",def->name.data(),␊ |
3372 | // def->fileDef ? def->fileDef->name().data() : "<none>");␊ |
3373 | //printf("newDefine: `%s'->`%s'\n",def->name.data(),def->definition.data());␊ |
3374 | if (!def->name.isEmpty() && Doxygen::expandAsDefinedDict[def->name])␊ |
3375 | {␊ |
3376 | def->isPredefined=TRUE;␊ |
3377 | }␊ |
3378 | return def;␊ |
3379 | }␊ |
3380 | ␊ |
3381 | void addDefine()␊ |
3382 | {␊ |
3383 | if (g_skip) return; // do not add this define as it is inside a ␊ |
3384 | // conditional section (cond command) that is disabled.␊ |
3385 | if (!Doxygen::gatherDefines) return;␊ |
3386 | ␊ |
3387 | //printf("addDefine %s %s\n",g_defName.data(),g_defArgsStr.data());␊ |
3388 | //ArgumentList *al = new ArgumentList;␊ |
3389 | //stringToArgumentList(g_defArgsStr,al);␊ |
3390 | MemberDef *md=new MemberDef(␊ |
3391 | g_yyFileName,g_yyLineNr,␊ |
3392 | "#define",g_defName,g_defArgsStr,0,␊ |
3393 | Public,Normal,FALSE,Member,MemberDef::Define,0,0);␊ |
3394 | if (!g_defArgsStr.isEmpty())␊ |
3395 | {␊ |
3396 | ArgumentList *argList = new ArgumentList;␊ |
3397 | //printf("addDefine() g_defName=`%s' g_defArgsStr=`%s'\n",g_defName.data(),g_defArgsStr.data());␊ |
3398 | stringToArgumentList(g_defArgsStr,argList);␊ |
3399 | md->setArgumentList(argList);␊ |
3400 | }␊ |
3401 | //printf("Setting initializer for `%s' to `%s'\n",g_defName.data(),g_defText.data());␊ |
3402 | int l=g_defLitText.find('\n');␊ |
3403 | if (l>0 && g_defLitText.left(l).stripWhiteSpace()=="\\")␊ |
3404 | {␊ |
3405 | // strip first line if it only contains a slash␊ |
3406 | g_defLitText = g_defLitText.right(g_defLitText.length()-l-1);␊ |
3407 | }␊ |
3408 | else if (l>0)␊ |
3409 | {␊ |
3410 | // align the items on the first line with the items on the second line␊ |
3411 | int k=l+1;␊ |
3412 | const char *p=g_defLitText.data()+k;␊ |
3413 | char c;␊ |
3414 | while ((c=*p++) && (c==' ' || c=='\t')) k++;␊ |
3415 | g_defLitText=g_defLitText.mid(l+1,k-l-1)+g_defLitText.stripWhiteSpace();␊ |
3416 | }␊ |
3417 | md->setInitializer(g_defLitText.stripWhiteSpace());␊ |
3418 | ␊ |
3419 | //printf("pre.l: md->setFileDef(%p)\n",g_inputFileDef);␊ |
3420 | md->setFileDef(g_inputFileDef);␊ |
3421 | md->setDefinition("#define "+g_defName);␊ |
3422 | ␊ |
3423 | MemberName *mn=Doxygen::functionNameSDict->find(g_defName);␊ |
3424 | if (mn==0)␊ |
3425 | {␊ |
3426 | mn = new MemberName(g_defName);␊ |
3427 | Doxygen::functionNameSDict->append(g_defName,mn);␊ |
3428 | }␊ |
3429 | mn->append(md);␊ |
3430 | if (g_yyFileDef) ␊ |
3431 | {␊ |
3432 | g_yyFileDef->insertMember(md);␊ |
3433 | }␊ |
3434 | ␊ |
3435 | //Define *d;␊ |
3436 | //if ((d=defineDict[g_defName])==0) defineDict.insert(g_defName,newDefine()); ␊ |
3437 | }␊ |
3438 | ␊ |
3439 | static inline void outputChar(char c)␊ |
3440 | {␊ |
3441 | if (g_includeStack.isEmpty() || g_curlyCount>0) g_outputBuf->addChar(c);␊ |
3442 | }␊ |
3443 | ␊ |
3444 | static inline void outputArray(const char *a,int len)␊ |
3445 | {␊ |
3446 | if (g_includeStack.isEmpty() || g_curlyCount>0) g_outputBuf->addArray(a,len);␊ |
3447 | }␊ |
3448 | ␊ |
3449 | static void readIncludeFile(const QCString &inc)␊ |
3450 | {␊ |
3451 | if (!Config_getBool("SEARCH_INCLUDES")) return; // do not read include files␊ |
3452 | uint i=0;␊ |
3453 | ␊ |
3454 | // find the start of the include file name␊ |
3455 | while (i<inc.length() &&␊ |
3456 | (inc.at(i)==' ' || inc.at(i)=='"' || inc.at(i)=='<')␊ |
3457 | ) i++;␊ |
3458 | uint s=i;␊ |
3459 | ␊ |
3460 | // was it a local include?␊ |
3461 | bool localInclude = s>0 && inc.at(s-1)=='"';␊ |
3462 | ␊ |
3463 | // find the end of the include file name␊ |
3464 | while (i<inc.length() && inc.at(i)!='"' && inc.at(i)!='>') i++;␊ |
3465 | ␊ |
3466 | if (s<inc.length() && i>s) // valid include file name found␊ |
3467 | {␊ |
3468 | // extract include path+name␊ |
3469 | QCString incFileName=inc.mid(s,i-s).stripWhiteSpace();␊ |
3470 | ␊ |
3471 | QCString dosExt = incFileName.right(4);␊ |
3472 | if (dosExt==".exe" || dosExt==".dll" || dosExt==".tbl")␊ |
3473 | {␊ |
3474 | // skip imported binary files (e.g. M$ type libraries)␊ |
3475 | return;␊ |
3476 | }␊ |
3477 | ␊ |
3478 | QCString oldFileName = g_yyFileName;␊ |
3479 | FileDef *oldFileDef = g_yyFileDef;␊ |
3480 | int oldLineNr = g_yyLineNr;␊ |
3481 | //printf("Searching for `%s'\n",incFileName.data());␊ |
3482 | ␊ |
3483 | // findFile will overwrite g_yyFileDef if found␊ |
3484 | FileState *fs;␊ |
3485 | bool alreadyIncluded = FALSE;␊ |
3486 | //printf("calling findFile(%s)\n",incFileName.data());␊ |
3487 | if ((fs=findFile(incFileName,localInclude,alreadyIncluded))) // see if the include file can be found␊ |
3488 | {␊ |
3489 | //printf("Found include file!\n");␊ |
3490 | if (Debug::isFlagSet(Debug::Preprocessor))␊ |
3491 | {␊ |
3492 | for (i=0;i<g_includeStack.count();i++) msg(" ");␊ |
3493 | //msg("#include %s: parsing...\n",incFileName.data());␊ |
3494 | }␊ |
3495 | if (oldFileDef)␊ |
3496 | {␊ |
3497 | // add include dependency to the file in which the #include was found␊ |
3498 | ␉bool ambig;␊ |
3499 | ␉// change to local name for bug 641336 ␊ |
3500 | FileDef *incFd = findFileDef(Doxygen::inputNameDict,incFileName,ambig);␊ |
3501 | oldFileDef->addIncludeDependency(ambig ? 0 : incFd,incFileName,localInclude,g_isImported);␊ |
3502 | // add included by dependency␊ |
3503 | if (g_yyFileDef)␊ |
3504 | {␊ |
3505 | //printf("Adding include dependency %s->%s\n",oldFileDef->name().data(),incFileName.data());␊ |
3506 | g_yyFileDef->addIncludedByDependency(oldFileDef,oldFileDef->docName(),localInclude,g_isImported);␊ |
3507 | }␊ |
3508 | }␊ |
3509 | fs->bufState = YY_CURRENT_BUFFER;␊ |
3510 | fs->lineNr = oldLineNr;␊ |
3511 | fs->fileName = oldFileName;␊ |
3512 | // push the state on the stack␊ |
3513 | g_includeStack.push(fs);␊ |
3514 | // set the scanner to the include file␊ |
3515 | ␊ |
3516 | // Deal with file changes due to ␊ |
3517 | // #include's within { .. } blocks␊ |
3518 | QCString lineStr(g_yyFileName.length()+20);␊ |
3519 | lineStr.sprintf("# 1 \"%s\" 1\n",g_yyFileName.data());␊ |
3520 | outputArray(lineStr.data(),lineStr.length());␊ |
3521 | ␊ |
3522 | //fprintf(stderr,"Switching to include file %s\n",incFileName.data());␊ |
3523 | g_expectGuard=TRUE;␊ |
3524 | g_inputBuf = &fs->fileBuf;␊ |
3525 | g_inputBufPos=0;␊ |
3526 | preYY_switch_to_buffer(preYY_create_buffer(0,YY_BUF_SIZE));␊ |
3527 | }␊ |
3528 | else␊ |
3529 | {␊ |
3530 | //printf(" calling findFile(%s) alreadyInc=%d\n",incFileName.data(),alreadyIncluded);␊ |
3531 | if (oldFileDef)␊ |
3532 | {␊ |
3533 | ␉bool ambig;␊ |
3534 | ␉//QCString absPath = incFileName;␊ |
3535 | ␉//if (QDir::isRelativePath(incFileName))␊ |
3536 | ␉//{␊ |
3537 | ␉// absPath = QDir::cleanDirPath(oldFileDef->getPath()+"/"+incFileName);␊ |
3538 | ␉// //printf("%s + %s -> resolved path %s\n",oldFileDef->getPath().data(),incFileName.data(),absPath.data());␊ |
3539 | ␉//}␊ |
3540 | ␊ |
3541 | ␉// change to local name for bug 641336 ␊ |
3542 | ␉FileDef *fd = findFileDef(Doxygen::inputNameDict,incFileName,ambig);␊ |
3543 | ␉//printf("%s::findFileDef(%s)=%p\n",oldFileDef->name().data(),incFileName.data(),fd);␊ |
3544 | ␉// add include dependency to the file in which the #include was found␊ |
3545 | ␉oldFileDef->addIncludeDependency(ambig ? 0 : fd,incFileName,localInclude,g_isImported);␊ |
3546 | ␉// add included by dependency␊ |
3547 | if (fd)␊ |
3548 | {␊ |
3549 | //printf("Adding include dependency (2) %s->%s ambig=%d\n",oldFileDef->name().data(),fd->name().data(),ambig);␊ |
3550 | fd->addIncludedByDependency(oldFileDef,oldFileDef->docName(),localInclude,g_isImported);␊ |
3551 | }␊ |
3552 | }␊ |
3553 | if (Debug::isFlagSet(Debug::Preprocessor))␊ |
3554 | {␊ |
3555 | msg("#include %s: not found or already included! skipping...\n",incFileName.data());␊ |
3556 | //printf("error: include file %s not found\n",preYYtext);␊ |
3557 | }␊ |
3558 | if (g_curlyCount>0 && !alreadyIncluded) // failed to find #include inside { ... }␊ |
3559 | {␊ |
3560 | ␉warn(g_yyFileName,g_yyLineNr,"Warning: include file %s not found, perhaps you forgot to add its directory to INCLUDE_PATH?",incFileName.data());␊ |
3561 | }␊ |
3562 | }␊ |
3563 | }␊ |
3564 | }␊ |
3565 | ␊ |
3566 | /* ----------------------------------------------------------------- */␊ |
3567 | ␊ |
3568 | static void startCondSection(const char *sectId)␊ |
3569 | {␊ |
3570 | g_condStack.push(new bool(g_skip));␊ |
3571 | if (Config_getList("ENABLED_SECTIONS").find(sectId)==-1)␊ |
3572 | {␊ |
3573 | g_skip=TRUE;␊ |
3574 | }␊ |
3575 | }␊ |
3576 | ␊ |
3577 | static void endCondSection()␊ |
3578 | {␊ |
3579 | if (g_condStack.isEmpty())␊ |
3580 | {␊ |
3581 | g_skip=FALSE;␊ |
3582 | }␊ |
3583 | else␊ |
3584 | {␊ |
3585 | bool *ctx = g_condStack.pop();␊ |
3586 | g_skip=*ctx;␊ |
3587 | }␊ |
3588 | }␊ |
3589 | ␊ |
3590 | static void forceEndCondSection()␊ |
3591 | {␊ |
3592 | while (!g_condStack.isEmpty())␊ |
3593 | {␊ |
3594 | g_condStack.pop();␊ |
3595 | }␊ |
3596 | g_skip=FALSE;␊ |
3597 | }␊ |
3598 | ␊ |
3599 | static QCString escapeAt(const char *text)␊ |
3600 | {␊ |
3601 | QCString result;␊ |
3602 | if (text)␊ |
3603 | {␊ |
3604 | char c;␊ |
3605 | const char *p=text;␊ |
3606 | while ((c=*p++))␊ |
3607 | {␊ |
3608 | if (c=='@') result+="@@"; else result+=c;␊ |
3609 | }␊ |
3610 | }␊ |
3611 | return result;␊ |
3612 | }␊ |
3613 | ␊ |
3614 | static char resolveTrigraph(char c)␊ |
3615 | {␊ |
3616 | switch (c)␊ |
3617 | {␊ |
3618 | case '=': return '#';␊ |
3619 | case '/': return '\\';␊ |
3620 | case '\'': return '^';␊ |
3621 | case '(': return '[';␊ |
3622 | case ')': return ']';␊ |
3623 | case '!': return '|';␊ |
3624 | case '<': return '{';␊ |
3625 | case '>': return '}';␊ |
3626 | case '-': return '~';␊ |
3627 | }␊ |
3628 | return '?';␊ |
3629 | }␊ |
3630 | ␊ |
3631 | /* ----------------------------------------------------------------- */␊ |
3632 | ␊ |
3633 | #undef YY_INPUT␊ |
3634 | #define YY_INPUT(buf,result,max_size) result=yyread(buf,max_size);␊ |
3635 | ␊ |
3636 | static int yyread(char *buf,int max_size)␊ |
3637 | {␊ |
3638 | int bytesInBuf = g_inputBuf->curPos()-g_inputBufPos;␊ |
3639 | int bytesToCopy = QMIN(max_size,bytesInBuf);␊ |
3640 | memcpy(buf,g_inputBuf->data()+g_inputBufPos,bytesToCopy);␊ |
3641 | g_inputBufPos+=bytesToCopy;␊ |
3642 | return bytesToCopy;␊ |
3643 | }␊ |
3644 | ␊ |
3645 | /* ----------------------------------------------------------------- */␊ |
3646 | ␊ |
3647 | ␊ |
3648 | ␊ |
3649 | ␊ |
3650 | ␊ |
3651 | ␊ |
3652 | ␊ |
3653 | ␊ |
3654 | ␊ |
3655 | ␊ |
3656 | ␊ |
3657 | ␊ |
3658 | ␊ |
3659 | ␊ |
3660 | ␊ |
3661 | ␊ |
3662 | ␊ |
3663 | ␊ |
3664 | ␊ |
3665 | ␊ |
3666 | ␊ |
3667 | ␊ |
3668 | ␊ |
3669 | ␊ |
3670 | ␊ |
3671 | ␊ |
3672 | ␊ |
3673 | ␊ |
3674 | ␊ |
3675 | ␊ |
3676 | ␊ |
3677 | ␊ |
3678 | ␊ |
3679 | #line 3680 "<stdout>"␊ |
3680 | ␊ |
3681 | #define INITIAL 0␊ |
3682 | #define Start 1␊ |
3683 | #define Command 2␊ |
3684 | #define SkipCommand 3␊ |
3685 | #define SkipLine 4␊ |
3686 | #define SkipString 5␊ |
3687 | #define CopyLine 6␊ |
3688 | #define CopyString 7␊ |
3689 | #define Include 8␊ |
3690 | #define IncludeID 9␊ |
3691 | #define EndImport 10␊ |
3692 | #define DefName 11␊ |
3693 | #define DefineArg 12␊ |
3694 | #define DefineText 13␊ |
3695 | #define SkipCPPBlock 14␊ |
3696 | #define Ifdef 15␊ |
3697 | #define Ifndef 16␊ |
3698 | #define SkipCComment 17␊ |
3699 | #define CopyCComment 18␊ |
3700 | #define SkipVerbatim 19␊ |
3701 | #define SkipCPPComment 20␊ |
3702 | #define RemoveCComment 21␊ |
3703 | #define RemoveCPPComment 22␊ |
3704 | #define Guard 23␊ |
3705 | #define DefinedExpr1 24␊ |
3706 | #define DefinedExpr2 25␊ |
3707 | #define SkipDoubleQuote 26␊ |
3708 | #define SkipSingleQuote 27␊ |
3709 | #define UndefName 28␊ |
3710 | #define IgnoreLine 29␊ |
3711 | #define FindDefineArgs 30␊ |
3712 | #define ReadString 31␊ |
3713 | #define CondLine 32␊ |
3714 | ␊ |
3715 | #ifndef YY_NO_UNISTD_H␊ |
3716 | /* Special case for "unistd.h", since it is non-ANSI. We include it way␊ |
3717 | * down here because we want the user's section 1 to have been scanned first.␊ |
3718 | * The user has a chance to override it with an option.␊ |
3719 | */␊ |
3720 | #include <unistd.h>␊ |
3721 | #endif␊ |
3722 | ␊ |
3723 | #ifndef YY_EXTRA_TYPE␊ |
3724 | #define YY_EXTRA_TYPE void *␊ |
3725 | #endif␊ |
3726 | ␊ |
3727 | static int yy_init_globals (void );␊ |
3728 | ␊ |
3729 | /* Accessor methods to globals.␊ |
3730 | These are made visible to non-reentrant scanners for convenience. */␊ |
3731 | ␊ |
3732 | int preYYlex_destroy (void );␊ |
3733 | ␊ |
3734 | int preYYget_debug (void );␊ |
3735 | ␊ |
3736 | void preYYset_debug (int debug_flag );␊ |
3737 | ␊ |
3738 | YY_EXTRA_TYPE preYYget_extra (void );␊ |
3739 | ␊ |
3740 | void preYYset_extra (YY_EXTRA_TYPE user_defined );␊ |
3741 | ␊ |
3742 | FILE *preYYget_in (void );␊ |
3743 | ␊ |
3744 | void preYYset_in (FILE * in_str );␊ |
3745 | ␊ |
3746 | FILE *preYYget_out (void );␊ |
3747 | ␊ |
3748 | void preYYset_out (FILE * out_str );␊ |
3749 | ␊ |
3750 | yy_size_t preYYget_leng (void );␊ |
3751 | ␊ |
3752 | char *preYYget_text (void );␊ |
3753 | ␊ |
3754 | int preYYget_lineno (void );␊ |
3755 | ␊ |
3756 | void preYYset_lineno (int line_number );␊ |
3757 | ␊ |
3758 | /* Macros after this point can all be overridden by user definitions in␊ |
3759 | * section 1.␊ |
3760 | */␊ |
3761 | ␊ |
3762 | #ifndef YY_SKIP_YYWRAP␊ |
3763 | #ifdef __cplusplus␊ |
3764 | extern "C" int preYYwrap (void );␊ |
3765 | #else␊ |
3766 | extern int preYYwrap (void );␊ |
3767 | #endif␊ |
3768 | #endif␊ |
3769 | ␊ |
3770 | static void yyunput (int c,char *buf_ptr );␊ |
3771 | ␊ |
3772 | #ifndef yytext_ptr␊ |
3773 | static void yy_flex_strncpy (char *,yyconst char *,int );␊ |
3774 | #endif␊ |
3775 | ␊ |
3776 | #ifdef YY_NEED_STRLEN␊ |
3777 | static int yy_flex_strlen (yyconst char * );␊ |
3778 | #endif␊ |
3779 | ␊ |
3780 | #ifndef YY_NO_INPUT␊ |
3781 | ␊ |
3782 | #ifdef __cplusplus␊ |
3783 | static int yyinput (void );␊ |
3784 | #else␊ |
3785 | static int input (void );␊ |
3786 | #endif␊ |
3787 | ␊ |
3788 | #endif␊ |
3789 | ␊ |
3790 | /* Amount of stuff to slurp up with each read. */␊ |
3791 | #ifndef YY_READ_BUF_SIZE␊ |
3792 | #define YY_READ_BUF_SIZE 262144␊ |
3793 | #endif␊ |
3794 | ␊ |
3795 | /* Copy whatever the last rule matched to the standard output. */␊ |
3796 | #ifndef ECHO␊ |
3797 | /* This used to be an fputs(), but since the string might contain NUL's,␊ |
3798 | * we now use fwrite().␊ |
3799 | */␊ |
3800 | #define ECHO fwrite( preYYtext, preYYleng, 1, preYYout )␊ |
3801 | #endif␊ |
3802 | ␊ |
3803 | /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,␊ |
3804 | * is returned in "result".␊ |
3805 | */␊ |
3806 | #ifndef YY_INPUT␊ |
3807 | #define YY_INPUT(buf,result,max_size) \␊ |
3808 | ␉if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \␊ |
3809 | ␉␉{ \␊ |
3810 | ␉␉int c = '*'; \␊ |
3811 | ␉␉yy_size_t n; \␊ |
3812 | ␉␉for ( n = 0; n < max_size && \␊ |
3813 | ␉␉␉ (c = getc( preYYin )) != EOF && c != '\n'; ++n ) \␊ |
3814 | ␉␉␉buf[n] = (char) c; \␊ |
3815 | ␉␉if ( c == '\n' ) \␊ |
3816 | ␉␉␉buf[n++] = (char) c; \␊ |
3817 | ␉␉if ( c == EOF && ferror( preYYin ) ) \␊ |
3818 | ␉␉␉YY_FATAL_ERROR( "input in flex scanner failed" ); \␊ |
3819 | ␉␉result = n; \␊ |
3820 | ␉␉} \␊ |
3821 | ␉else \␊ |
3822 | ␉␉{ \␊ |
3823 | ␉␉errno=0; \␊ |
3824 | ␉␉while ( (result = fread(buf, 1, max_size, preYYin))==0 && ferror(preYYin)) \␊ |
3825 | ␉␉␉{ \␊ |
3826 | ␉␉␉if( errno != EINTR) \␊ |
3827 | ␉␉␉␉{ \␊ |
3828 | ␉␉␉␉YY_FATAL_ERROR( "input in flex scanner failed" ); \␊ |
3829 | ␉␉␉␉break; \␊ |
3830 | ␉␉␉␉} \␊ |
3831 | ␉␉␉errno=0; \␊ |
3832 | ␉␉␉clearerr(preYYin); \␊ |
3833 | ␉␉␉} \␊ |
3834 | ␉␉}\␊ |
3835 | \␊ |
3836 | ␊ |
3837 | #endif␊ |
3838 | ␊ |
3839 | /* No semi-colon after return; correct usage is to write "yyterminate();" -␊ |
3840 | * we don't want an extra ';' after the "return" because that will cause␊ |
3841 | * some compilers to complain about unreachable statements.␊ |
3842 | */␊ |
3843 | #ifndef yyterminate␊ |
3844 | #define yyterminate() return YY_NULL␊ |
3845 | #endif␊ |
3846 | ␊ |
3847 | /* Number of entries by which start-condition stack grows. */␊ |
3848 | #ifndef YY_START_STACK_INCR␊ |
3849 | #define YY_START_STACK_INCR 25␊ |
3850 | #endif␊ |
3851 | ␊ |
3852 | /* Report a fatal error. */␊ |
3853 | #ifndef YY_FATAL_ERROR␊ |
3854 | #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )␊ |
3855 | #endif␊ |
3856 | ␊ |
3857 | /* end tables serialization structures and prototypes */␊ |
3858 | ␊ |
3859 | /* Default declaration of generated scanner - a define so the user can␊ |
3860 | * easily add parameters.␊ |
3861 | */␊ |
3862 | #ifndef YY_DECL␊ |
3863 | #define YY_DECL_IS_OURS 1␊ |
3864 | ␊ |
3865 | extern int preYYlex (void);␊ |
3866 | ␊ |
3867 | #define YY_DECL int preYYlex (void)␊ |
3868 | #endif /* !YY_DECL */␊ |
3869 | ␊ |
3870 | /* Code executed at the beginning of each rule, after preYYtext and preYYleng␊ |
3871 | * have been set up.␊ |
3872 | */␊ |
3873 | #ifndef YY_USER_ACTION␊ |
3874 | #define YY_USER_ACTION␊ |
3875 | #endif␊ |
3876 | ␊ |
3877 | /* Code executed at the end of each rule. */␊ |
3878 | #ifndef YY_BREAK␊ |
3879 | #define YY_BREAK break;␊ |
3880 | #endif␊ |
3881 | ␊ |
3882 | #define YY_RULE_SETUP \␊ |
3883 | ␉if ( preYYleng > 0 ) \␊ |
3884 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \␊ |
3885 | ␉␉␉␉(preYYtext[preYYleng - 1] == '\n'); \␊ |
3886 | ␉YY_USER_ACTION␊ |
3887 | ␊ |
3888 | /** The main scanner function which does all the work.␊ |
3889 | */␊ |
3890 | YY_DECL␊ |
3891 | {␊ |
3892 | ␉register yy_state_type yy_current_state;␊ |
3893 | ␉register char *yy_cp, *yy_bp;␊ |
3894 | ␉register int yy_act;␊ |
3895 | ␊ |
3896 | #line 1458 "pre.l"␊ |
3897 | ␊ |
3898 | ␊ |
3899 | #line 3900 "<stdout>"␊ |
3900 | ␊ |
3901 | ␉if ( !(yy_init) )␊ |
3902 | ␉␉{␊ |
3903 | ␉␉(yy_init) = 1;␊ |
3904 | ␊ |
3905 | #ifdef YY_USER_INIT␊ |
3906 | ␉␉YY_USER_INIT;␊ |
3907 | #endif␊ |
3908 | ␊ |
3909 | /* Create the reject buffer large enough to save one state per allowed character. */␊ |
3910 | if ( ! (yy_state_buf) )␊ |
3911 | (yy_state_buf) = (yy_state_type *)preYYalloc(YY_STATE_BUF_SIZE );␊ |
3912 | if ( ! (yy_state_buf) )␊ |
3913 | YY_FATAL_ERROR( "out of dynamic memory in preYYlex()" );␊ |
3914 | ␊ |
3915 | ␉␉if ( ! (yy_start) )␊ |
3916 | ␉␉␉(yy_start) = 1;␉/* first start state */␊ |
3917 | ␊ |
3918 | ␉␉if ( ! preYYin )␊ |
3919 | ␉␉␉preYYin = stdin;␊ |
3920 | ␊ |
3921 | ␉␉if ( ! preYYout )␊ |
3922 | ␉␉␉preYYout = stdout;␊ |
3923 | ␊ |
3924 | ␉␉if ( ! YY_CURRENT_BUFFER ) {␊ |
3925 | ␉␉␉preYYensure_buffer_stack ();␊ |
3926 | ␉␉␉YY_CURRENT_BUFFER_LVALUE =␊ |
3927 | ␉␉␉␉preYY_create_buffer(preYYin,YY_BUF_SIZE );␊ |
3928 | ␉␉}␊ |
3929 | ␊ |
3930 | ␉␉preYY_load_buffer_state( );␊ |
3931 | ␉␉}␊ |
3932 | ␊ |
3933 | ␉while ( 1 )␉␉/* loops until end-of-file is reached */␊ |
3934 | ␉␉{␊ |
3935 | ␉␉yy_cp = (yy_c_buf_p);␊ |
3936 | ␊ |
3937 | ␉␉/* Support of preYYtext. */␊ |
3938 | ␉␉*yy_cp = (yy_hold_char);␊ |
3939 | ␊ |
3940 | ␉␉/* yy_bp points to the position in yy_ch_buf of the start of␊ |
3941 | ␉␉ * the current run.␊ |
3942 | ␉␉ */␊ |
3943 | ␉␉yy_bp = yy_cp;␊ |
3944 | ␊ |
3945 | ␉␉yy_current_state = (yy_start);␊ |
3946 | ␉␉yy_current_state += YY_AT_BOL();␊ |
3947 | ␊ |
3948 | ␉␉(yy_state_ptr) = (yy_state_buf);␊ |
3949 | ␉␉*(yy_state_ptr)++ = yy_current_state;␊ |
3950 | ␊ |
3951 | yy_match:␊ |
3952 | ␉␉do␊ |
3953 | ␉␉␉{␊ |
3954 | ␉␉␉register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];␊ |
3955 | ␉␉␉while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )␊ |
3956 | ␉␉␉␉{␊ |
3957 | ␉␉␉␉yy_current_state = (int) yy_def[yy_current_state];␊ |
3958 | ␉␉␉␉if ( yy_current_state >= 1157 )␊ |
3959 | ␉␉␉␉␉yy_c = yy_meta[(unsigned int) yy_c];␊ |
3960 | ␉␉␉␉}␊ |
3961 | ␉␉␉yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];␊ |
3962 | ␉␉␉*(yy_state_ptr)++ = yy_current_state;␊ |
3963 | ␉␉␉++yy_cp;␊ |
3964 | ␉␉␉}␊ |
3965 | ␉␉while ( yy_base[yy_current_state] != 5434 );␊ |
3966 | ␊ |
3967 | yy_find_action:␊ |
3968 | ␉␉yy_current_state = *--(yy_state_ptr);␊ |
3969 | ␉␉(yy_lp) = yy_accept[yy_current_state];␊ |
3970 | goto find_rule; /* Shut up GCC warning -Wall */␊ |
3971 | find_rule: /* we branch to this label when backing up */␊ |
3972 | ␉␉for ( ; ; ) /* until we find what rule we matched */␊ |
3973 | ␉␉␉{␊ |
3974 | ␉␉␉if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] )␊ |
3975 | ␉␉␉␉{␊ |
3976 | ␉␉␉␉yy_act = yy_acclist[(yy_lp)];␊ |
3977 | ␉␉␉␉if ( yy_act & YY_TRAILING_HEAD_MASK ||␊ |
3978 | ␉␉␉␉ (yy_looking_for_trail_begin) )␊ |
3979 | ␉␉␉␉␉{␊ |
3980 | ␉␉␉␉␉if ( yy_act == (yy_looking_for_trail_begin) )␊ |
3981 | ␉␉␉␉␉␉{␊ |
3982 | ␉␉␉␉␉␉(yy_looking_for_trail_begin) = 0;␊ |
3983 | ␉␉␉␉␉␉yy_act &= ~YY_TRAILING_HEAD_MASK;␊ |
3984 | ␉␉␉␉␉␉break;␊ |
3985 | ␉␉␉␉␉␉}␊ |
3986 | ␉␉␉␉␉}␊ |
3987 | ␉␉␉␉else if ( yy_act & YY_TRAILING_MASK )␊ |
3988 | ␉␉␉␉␉{␊ |
3989 | ␉␉␉␉␉(yy_looking_for_trail_begin) = yy_act & ~YY_TRAILING_MASK;␊ |
3990 | ␉␉␉␉␉(yy_looking_for_trail_begin) |= YY_TRAILING_HEAD_MASK;␊ |
3991 | ␉␉␉␉␉(yy_full_match) = yy_cp;␊ |
3992 | ␉␉␉␉␉(yy_full_state) = (yy_state_ptr);␊ |
3993 | ␉␉␉␉␉(yy_full_lp) = (yy_lp);␊ |
3994 | ␉␉␉␉␉}␊ |
3995 | ␉␉␉␉else␊ |
3996 | ␉␉␉␉␉{␊ |
3997 | ␉␉␉␉␉(yy_full_match) = yy_cp;␊ |
3998 | ␉␉␉␉␉(yy_full_state) = (yy_state_ptr);␊ |
3999 | ␉␉␉␉␉(yy_full_lp) = (yy_lp);␊ |
4000 | ␉␉␉␉␉break;␊ |
4001 | ␉␉␉␉␉}␊ |
4002 | ␉␉␉␉++(yy_lp);␊ |
4003 | ␉␉␉␉goto find_rule;␊ |
4004 | ␉␉␉␉}␊ |
4005 | ␉␉␉--yy_cp;␊ |
4006 | ␉␉␉yy_current_state = *--(yy_state_ptr);␊ |
4007 | ␉␉␉(yy_lp) = yy_accept[yy_current_state];␊ |
4008 | ␉␉␉}␊ |
4009 | ␊ |
4010 | ␉␉YY_DO_BEFORE_ACTION;␊ |
4011 | ␊ |
4012 | do_action:␉/* This label is used only to access EOF actions. */␊ |
4013 | ␊ |
4014 | ␉␉switch ( yy_act )␊ |
4015 | ␉{ /* beginning of action switch */␊ |
4016 | case 1:␊ |
4017 | YY_RULE_SETUP␊ |
4018 | #line 1460 "pre.l"␊ |
4019 | ␊ |
4020 | ␉YY_BREAK␊ |
4021 | case 2:␊ |
4022 | YY_RULE_SETUP␊ |
4023 | #line 1461 "pre.l"␊ |
4024 | ␊ |
4025 | ␉YY_BREAK␊ |
4026 | case 3:␊ |
4027 | YY_RULE_SETUP␊ |
4028 | #line 1462 "pre.l"␊ |
4029 | ␊ |
4030 | ␉YY_BREAK␊ |
4031 | case 4:␊ |
4032 | YY_RULE_SETUP␊ |
4033 | #line 1463 "pre.l"␊ |
4034 | { // Trigraph␊ |
4035 | ␉␉␉␉␉ unput(resolveTrigraph(preYYtext[2]));␊ |
4036 | ␉␉␉␉␉}␊ |
4037 | ␉YY_BREAK␊ |
4038 | case 5:␊ |
4039 | YY_RULE_SETUP␊ |
4040 | #line 1466 "pre.l"␊ |
4041 | { BEGIN(Command); }␊ |
4042 | ␉YY_BREAK␊ |
4043 | case 6:␊ |
4044 | /* rule 6 can match eol */␊ |
4045 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4046 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4047 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4048 | YY_RULE_SETUP␊ |
4049 | #line 1467 "pre.l"␊ |
4050 | {␊ |
4051 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng); ␊ |
4052 | ␉␉␉␉␉ BEGIN(CopyLine); ␊ |
4053 | ␉␉␉␉␉}␊ |
4054 | ␉YY_BREAK␊ |
4055 | case 7:␊ |
4056 | /* rule 7 can match eol */␊ |
4057 | YY_RULE_SETUP␊ |
4058 | #line 1471 "pre.l"␊ |
4059 | { // constructors?␊ |
4060 | ␉␉␉␉␉ int i;␊ |
4061 | ␉␉␉␉␉ for (i=preYYleng-1;i>=0;i--)␊ |
4062 | ␉␉␉␉␉ {␊ |
4063 | ␉␉␉␉␉ unput(preYYtext[i]);␊ |
4064 | ␉␉␉␉␉ }␊ |
4065 | ␉␉␉␉␉ BEGIN(CopyLine);␊ |
4066 | }␊ |
4067 | ␉YY_BREAK␊ |
4068 | case 8:␊ |
4069 | /* rule 8 can match eol */␊ |
4070 | #line 1480 "pre.l"␊ |
4071 | case 9:␊ |
4072 | /* rule 9 can match eol */␊ |
4073 | YY_RULE_SETUP␊ |
4074 | #line 1480 "pre.l"␊ |
4075 | { // function like macro␊ |
4076 | ␉␉␉␉␉ static bool skipFuncMacros = Config_getBool("SKIP_FUNCTION_MACROS");␊ |
4077 | ␉␉␉␉␉ QCString name(preYYtext);␊ |
4078 | ␉␉␉␉␉ name=name.left(name.find('(')).stripWhiteSpace();␊ |
4079 | ␊ |
4080 | ␉␉␉␉␉ Define *def=0;␊ |
4081 | ␉␉␉␉␉ if (skipFuncMacros && ␊ |
4082 | ␉␉␉␉␉ name!="Q_PROPERTY" &&␊ |
4083 | ␉␉␉␉␉ !(␊ |
4084 | ␉␉␉␉␉ (g_includeStack.isEmpty() || g_curlyCount>0) &&␊ |
4085 | ␉␉␉␉␉ g_macroExpansion &&␊ |
4086 | ␉␉␉␉␉ (def=g_globalDefineDict->find(name)) &&␊ |
4087 | ␉␉␉␉␉␉ macroIsAccessible(def) &&␊ |
4088 | ␉␉␉␉␉ (!g_expandOnlyPredef || def->isPredefined)␊ |
4089 | ␉␉␉␉␉ )␊ |
4090 | ␉␉␉␉␉ )␊ |
4091 | ␉␉␉␉␉ {␊ |
4092 | ␉␉␉␉␉ outputChar('\n');␊ |
4093 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4094 | ␉␉␉␉␉ }␊ |
4095 | ␉␉␉␉␉ else // don't skip␊ |
4096 | ␉␉␉␉␉ {␊ |
4097 | ␉␉␉␉␉ int i;␊ |
4098 | ␉␉␉␉␉ for (i=preYYleng-1;i>=0;i--)␊ |
4099 | ␉␉␉␉␉ {␊ |
4100 | ␉␉␉␉␉ unput(preYYtext[i]);␊ |
4101 | ␉␉␉␉␉ }␊ |
4102 | ␉␉␉␉␉ BEGIN(CopyLine);␊ |
4103 | ␉␉␉␉␉ }␊ |
4104 | ␉␉␉␉␉}␊ |
4105 | ␉YY_BREAK␊ |
4106 | case 10:␊ |
4107 | /* rule 10 can match eol */␊ |
4108 | YY_RULE_SETUP␊ |
4109 | #line 1510 "pre.l"␊ |
4110 | {␊ |
4111 | QCString text=preYYtext;␊ |
4112 | ␉␉␉␉␉ g_yyLineNr+=text.contains('\n');␊ |
4113 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4114 | ␉␉␉␉␉}␊ |
4115 | ␉YY_BREAK␊ |
4116 | case 11:␊ |
4117 | YY_RULE_SETUP␊ |
4118 | #line 1515 "pre.l"␊ |
4119 | { // count brackets inside the main file␊ |
4120 | ␉␉␉␉␉ if (g_includeStack.isEmpty()) ␊ |
4121 | ␉␉␉␉␉ {␊ |
4122 | ␉␉␉␉␉ g_curlyCount++;␊ |
4123 | ␉␉␉␉␉ }␊ |
4124 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
4125 | ␉␉␉␉␉}␊ |
4126 | ␉YY_BREAK␊ |
4127 | case 12:␊ |
4128 | YY_RULE_SETUP␊ |
4129 | #line 1522 "pre.l"␊ |
4130 | { // count brackets inside the main file␊ |
4131 | ␉␉␉␉␉ if (g_includeStack.isEmpty() && g_curlyCount>0) ␊ |
4132 | ␉␉␉␉␉ {␊ |
4133 | ␉␉␉␉␉ g_curlyCount--;␊ |
4134 | ␉␉␉␉␉ }␊ |
4135 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
4136 | ␉␉␉␉␉}␊ |
4137 | ␉YY_BREAK␊ |
4138 | case 13:␊ |
4139 | YY_RULE_SETUP␊ |
4140 | #line 1529 "pre.l"␊ |
4141 | { ␊ |
4142 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4143 | ␉␉␉␉␉}␊ |
4144 | ␉YY_BREAK␊ |
4145 | case 14:␊ |
4146 | YY_RULE_SETUP␊ |
4147 | #line 1532 "pre.l"␊ |
4148 | { ␊ |
4149 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4150 | ␉␉␉␉␉}␊ |
4151 | ␉YY_BREAK␊ |
4152 | case 15:␊ |
4153 | YY_RULE_SETUP␊ |
4154 | #line 1535 "pre.l"␊ |
4155 | { ␊ |
4156 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4157 | ␉␉␉␉␉}␊ |
4158 | ␉YY_BREAK␊ |
4159 | case 16:␊ |
4160 | YY_RULE_SETUP␊ |
4161 | #line 1538 "pre.l"␊ |
4162 | {␊ |
4163 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
4164 | ␉␉␉␉␉ BEGIN( CopyString );␊ |
4165 | ␉␉␉␉␉}␊ |
4166 | ␉YY_BREAK␊ |
4167 | case 17:␊ |
4168 | YY_RULE_SETUP␊ |
4169 | #line 1542 "pre.l"␊ |
4170 | {␊ |
4171 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4172 | ␉␉␉␉␉}␊ |
4173 | ␉YY_BREAK␊ |
4174 | case 18:␊ |
4175 | YY_RULE_SETUP␊ |
4176 | #line 1545 "pre.l"␊ |
4177 | {␊ |
4178 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4179 | ␉␉␉␉␉}␊ |
4180 | ␉YY_BREAK␊ |
4181 | case 19:␊ |
4182 | YY_RULE_SETUP␊ |
4183 | #line 1548 "pre.l"␊ |
4184 | {␊ |
4185 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
4186 | ␉␉␉␉␉ BEGIN( CopyLine );␊ |
4187 | ␉␉␉␉␉}␊ |
4188 | ␉YY_BREAK␊ |
4189 | case 20:␊ |
4190 | /* rule 20 can match eol */␊ |
4191 | YY_RULE_SETUP␊ |
4192 | #line 1552 "pre.l"␊ |
4193 | {␊ |
4194 | ␉␉␉␉␉ g_expectGuard = FALSE;␊ |
4195 | ␉␉␉␉␉ Define *def=0;␊ |
4196 | ␉␉␉␉␉ //def=g_globalDefineDict->find(preYYtext);␊ |
4197 | ␉␉␉␉␉ //printf("Search for define %s found=%d g_includeStack.isEmpty()=%d "␊ |
4198 | ␉␉␉␉␉ // "g_curlyCount=%d g_macroExpansion=%d g_expandOnlyPredef=%d "␊ |
4199 | ␉␉␉␉␉ //␉ "isPreDefined=%d\n",preYYtext,def ? 1 : 0,␊ |
4200 | ␉␉␉␉␉ //␉ g_includeStack.isEmpty(),g_curlyCount,g_macroExpansion,g_expandOnlyPredef,␊ |
4201 | ␉␉␉␉␉ //␉ def ? def->isPredefined : -1␊ |
4202 | ␉␉␉␉␉ //␉);␊ |
4203 | ␉␉␉␉␉ if ((g_includeStack.isEmpty() || g_curlyCount>0) &&␊ |
4204 | ␉␉␉␉␉ g_macroExpansion &&␊ |
4205 | ␉␉␉␉␉ (def=g_globalDefineDict->find(preYYtext)) &&␊ |
4206 | ␉␉␉␉ (def->isPredefined || macroIsAccessible(def)) &&␊ |
4207 | ␉␉␉␉␉ (!g_expandOnlyPredef || def->isPredefined)␊ |
4208 | ␉␉␉␉␉ )␊ |
4209 | ␉␉␉␉␉ {␊ |
4210 | ␉␉␉␉␉ //printf("Found it! #args=%d\n",def->nargs);␊ |
4211 | ␉␉␉␉␉ g_roundCount=0;␊ |
4212 | ␉␉␉␉␉ g_defArgsStr=preYYtext;␊ |
4213 | ␉␉␉␉␉ if (def->nargs==-1) // no function macro␊ |
4214 | ␉␉␉␉␉ {␊ |
4215 | ␉␉␉␉␉ QCString result = def->isPredefined ? def->definition : expandMacro(g_defArgsStr);␊ |
4216 | ␉␉␉␉␉ outputArray(result,result.length());␊ |
4217 | ␉␉␉␉␉ }␊ |
4218 | ␉␉␉␉␉ else // zero or more arguments␊ |
4219 | ␉␉␉␉␉ {␊ |
4220 | ␉␉␉␉␉ g_findDefArgContext = CopyLine;␊ |
4221 | ␉␉␉␉␉ BEGIN(FindDefineArgs);␊ |
4222 | ␉␉␉␉␉ }␊ |
4223 | ␉␉␉␉␉ }␊ |
4224 | ␉␉␉␉␉ else␊ |
4225 | ␉␉␉␉␉ {␊ |
4226 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4227 | ␉␉␉␉␉ }␊ |
4228 | ␉␉␉␉␉}␊ |
4229 | ␉YY_BREAK␊ |
4230 | case 21:␊ |
4231 | YY_RULE_SETUP␊ |
4232 | #line 1588 "pre.l"␊ |
4233 | {␊ |
4234 | Define *def=0;␊ |
4235 | ␉␉␉␉␉ if ((g_includeStack.isEmpty() || g_curlyCount>0) && ␊ |
4236 | ␉␉␉␉␉ g_macroExpansion &&␊ |
4237 | ␉␉␉␉␉ (def=g_globalDefineDict->find(preYYtext)) &&␊ |
4238 | ␉␉␉␉␉ def->nargs==-1 &&␊ |
4239 | ␉␉␉␉ (def->isPredefined || macroIsAccessible(def)) &&␊ |
4240 | ␉␉␉␉␉ (!g_expandOnlyPredef || def->isPredefined)␊ |
4241 | ␉␉␉␉␉ )␊ |
4242 | ␉␉␉␉␉ {␊ |
4243 | ␉␉␉␉␉ QCString result=def->isPredefined ? def->definition : expandMacro(preYYtext); ␊ |
4244 | ␉␉␉␉␉ outputArray(result,result.length());␊ |
4245 | ␉␉␉␉␉ }␊ |
4246 | ␉␉␉␉␉ else␊ |
4247 | ␉␉␉␉␉ {␊ |
4248 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
4249 | ␉␉␉␉␉ }␊ |
4250 | ␉␉␉␉␉}␊ |
4251 | ␉YY_BREAK␊ |
4252 | case 22:␊ |
4253 | /* rule 22 can match eol */␊ |
4254 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4255 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4256 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4257 | YY_RULE_SETUP␊ |
4258 | #line 1606 "pre.l"␊ |
4259 | { // strip line continuation characters␊ |
4260 | ␉␉␉␉␉}␊ |
4261 | ␉YY_BREAK␊ |
4262 | case 23:␊ |
4263 | YY_RULE_SETUP␊ |
4264 | #line 1608 "pre.l"␊ |
4265 | {␊ |
4266 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
4267 | ␉␉␉␉␉}␊ |
4268 | ␉YY_BREAK␊ |
4269 | case 24:␊ |
4270 | /* rule 24 can match eol */␊ |
4271 | YY_RULE_SETUP␊ |
4272 | #line 1611 "pre.l"␊ |
4273 | {␊ |
4274 | ␉␉␉␉␉ outputChar('\n');␊ |
4275 | ␉␉␉␉␉ BEGIN(Start);␊ |
4276 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4277 | ␉␉␉␉␉}␊ |
4278 | ␉YY_BREAK␊ |
4279 | case 25:␊ |
4280 | YY_RULE_SETUP␊ |
4281 | #line 1616 "pre.l"␊ |
4282 | {␊ |
4283 | ␉␉␉␉␉ g_defArgsStr+='(';␊ |
4284 | ␉␉␉␉␉ g_roundCount++;␊ |
4285 | ␉␉␉␉␉}␊ |
4286 | ␉YY_BREAK␊ |
4287 | case 26:␊ |
4288 | YY_RULE_SETUP␊ |
4289 | #line 1620 "pre.l"␊ |
4290 | {␊ |
4291 | ␉␉␉␉␉ g_defArgsStr+=')';␊ |
4292 | ␉␉␉␉␉ g_roundCount--;␊ |
4293 | ␉␉␉␉␉ if (g_roundCount==0)␊ |
4294 | ␉␉␉␉␉ {␊ |
4295 | ␉␉␉␉␉ QCString result=expandMacro(g_defArgsStr);␊ |
4296 | ␉␉␉␉␉ //printf("g_defArgsStr=`%s'->`%s'\n",g_defArgsStr.data(),result.data());␊ |
4297 | ␉␉␉␉␉ if (g_findDefArgContext==CopyLine)␊ |
4298 | ␉␉␉␉␉ {␊ |
4299 | ␉␉␉␉␉ outputArray(result,result.length());␊ |
4300 | ␉␉␉␉␉ BEGIN(g_findDefArgContext);␊ |
4301 | ␉␉␉␉␉ }␊ |
4302 | ␉␉␉␉␉ else // g_findDefArgContext==IncludeID␊ |
4303 | ␉␉␉␉␉ {␊ |
4304 | ␉␉␉␉␉ readIncludeFile(result);␊ |
4305 | ␉␉␉␉␉ g_nospaces=FALSE;␊ |
4306 | ␉␉␉␉␉ BEGIN(Start);␊ |
4307 | ␉␉␉␉␉ }␊ |
4308 | ␉␉␉␉␉ }␊ |
4309 | ␉␉␉␉␉}␊ |
4310 | ␉YY_BREAK␊ |
4311 | /*␊ |
4312 | <FindDefineArgs>")"{B}*"("␉␉{␊ |
4313 | ␉␉␉␉␉ g_defArgsStr+=preYYtext;␊ |
4314 | ␉␉␉␉␉}␊ |
4315 | */␊ |
4316 | case 27:␊ |
4317 | YY_RULE_SETUP␊ |
4318 | #line 1645 "pre.l"␊ |
4319 | {␊ |
4320 | ␉␉␉␉␉ g_defArgsStr+=preYYtext;␊ |
4321 | ␉␉␉␉␉}␊ |
4322 | ␉YY_BREAK␊ |
4323 | case 28:␊ |
4324 | YY_RULE_SETUP␊ |
4325 | #line 1648 "pre.l"␊ |
4326 | {␊ |
4327 | ␉␉␉␉␉ g_defArgsStr+=*preYYtext;␊ |
4328 | ␉␉␉␉␉ BEGIN(ReadString);␊ |
4329 | ␉␉␉␉␉}␊ |
4330 | ␉YY_BREAK␊ |
4331 | case 29:␊ |
4332 | /* rule 29 can match eol */␊ |
4333 | YY_RULE_SETUP␊ |
4334 | #line 1652 "pre.l"␊ |
4335 | {␊ |
4336 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4337 | ␉␉␉␉␉ outputChar('\n');␊ |
4338 | ␉␉␉␉␉}␊ |
4339 | ␉YY_BREAK␊ |
4340 | case 30:␊ |
4341 | YY_RULE_SETUP␊ |
4342 | #line 1656 "pre.l"␊ |
4343 | {␊ |
4344 | ␉␉␉␉␉ g_defArgsStr+="@@";␊ |
4345 | ␉␉␉␉␉}␊ |
4346 | ␉YY_BREAK␊ |
4347 | case 31:␊ |
4348 | YY_RULE_SETUP␊ |
4349 | #line 1659 "pre.l"␊ |
4350 | {␊ |
4351 | ␉␉␉␉␉ g_defArgsStr+=*preYYtext;␊ |
4352 | ␉␉␉␉␉}␊ |
4353 | ␉YY_BREAK␊ |
4354 | case 32:␊ |
4355 | YY_RULE_SETUP␊ |
4356 | #line 1662 "pre.l"␊ |
4357 | {␊ |
4358 | ␉␉␉␉␉ g_defArgsStr+=*preYYtext;␊ |
4359 | ␉␉␉␉␉ BEGIN(FindDefineArgs);␊ |
4360 | ␉␉␉␉␉}␊ |
4361 | ␉YY_BREAK␊ |
4362 | case 33:␊ |
4363 | YY_RULE_SETUP␊ |
4364 | #line 1666 "pre.l"␊ |
4365 | {␊ |
4366 | ␉␉␉␉␉ g_defArgsStr+=preYYtext;␊ |
4367 | ␉␉␉␉␉}␊ |
4368 | ␉YY_BREAK␊ |
4369 | case 34:␊ |
4370 | YY_RULE_SETUP␊ |
4371 | #line 1669 "pre.l"␊ |
4372 | {␊ |
4373 | ␉␉␉␉␉ g_defArgsStr+=preYYtext;␊ |
4374 | ␉␉␉␉␉}␊ |
4375 | ␉YY_BREAK␊ |
4376 | case 35:␊ |
4377 | YY_RULE_SETUP␊ |
4378 | #line 1672 "pre.l"␊ |
4379 | {␊ |
4380 | ␉␉␉␉␉ g_defArgsStr+=*preYYtext;␊ |
4381 | ␉␉␉␉␉}␊ |
4382 | ␉YY_BREAK␊ |
4383 | case 36:␊ |
4384 | YY_RULE_SETUP␊ |
4385 | #line 1675 "pre.l"␊ |
4386 | {␊ |
4387 | ␉␉␉␉␉ g_isImported = preYYtext[1]=='m';␊ |
4388 | ␉␉␉␉␉ if (g_macroExpansion) ␊ |
4389 | ␉␉␉␉␉ BEGIN(IncludeID);␊ |
4390 | ␉␉␉␉␉}␊ |
4391 | ␉YY_BREAK␊ |
4392 | case 37:␊ |
4393 | YY_RULE_SETUP␊ |
4394 | #line 1680 "pre.l"␊ |
4395 | { ␊ |
4396 | ␉␉␉␉␉ g_isImported = preYYtext[1]=='m';␊ |
4397 | ␉␉␉␉␉ char c[2];␊ |
4398 | ␉␉␉␉␉ c[0]=preYYtext[preYYleng-1];c[1]='\0';␊ |
4399 | ␉␉␉␉␉ g_incName=c;␊ |
4400 | ␉␉␉␉␉ BEGIN(Include); ␊ |
4401 | ␉␉␉␉␉}␊ |
4402 | ␉YY_BREAK␊ |
4403 | case 38:␊ |
4404 | YY_RULE_SETUP␊ |
4405 | #line 1687 "pre.l"␊ |
4406 | { ␊ |
4407 | ␉␉␉ //printf("!!!DefName\n"); ␊ |
4408 | ␉␉␉␉␉ BEGIN(DefName); ␊ |
4409 | ␉␉␉␉␉}␊ |
4410 | ␉YY_BREAK␊ |
4411 | case 39:␊ |
4412 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4413 | (yy_c_buf_p) = yy_cp = yy_bp + 5;␊ |
4414 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4415 | YY_RULE_SETUP␊ |
4416 | #line 1691 "pre.l"␊ |
4417 | {␊ |
4418 | ␉␉␉␉␉ incrLevel();␊ |
4419 | ␉␉␉␉␉ g_guardExpr.resize(0);␊ |
4420 | ␉␉␉␉␉ BEGIN(DefinedExpr2);␊ |
4421 | ␉␉␉␉␉}␊ |
4422 | ␉YY_BREAK␊ |
4423 | case 40:␊ |
4424 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4425 | (yy_c_buf_p) = yy_cp = yy_bp + 5;␊ |
4426 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4427 | YY_RULE_SETUP␊ |
4428 | #line 1696 "pre.l"␊ |
4429 | {␊ |
4430 | ␉␉␉␉␉ //printf("Pre.l: ifdef\n");␊ |
4431 | ␉␉␉␉␉ incrLevel();␊ |
4432 | ␉␉␉␉␉ g_guardExpr.resize(0);␊ |
4433 | ␉␉␉␉␉ BEGIN(DefinedExpr1);␊ |
4434 | ␉␉␉␉␉}␊ |
4435 | ␉YY_BREAK␊ |
4436 | case 41:␊ |
4437 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4438 | (yy_c_buf_p) = yy_cp = yy_bp + 6;␊ |
4439 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4440 | YY_RULE_SETUP␊ |
4441 | #line 1702 "pre.l"␊ |
4442 | {␊ |
4443 | ␉␉␉␉␉ incrLevel();␊ |
4444 | ␉␉␉␉␉ g_guardExpr="! ";␊ |
4445 | ␉␉␉␉␉ BEGIN(DefinedExpr2);␊ |
4446 | ␉␉␉␉␉}␊ |
4447 | ␉YY_BREAK␊ |
4448 | case 42:␊ |
4449 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4450 | (yy_c_buf_p) = yy_cp = yy_bp + 6;␊ |
4451 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4452 | YY_RULE_SETUP␊ |
4453 | #line 1707 "pre.l"␊ |
4454 | {␊ |
4455 | ␉␉␉␉␉ incrLevel();␊ |
4456 | ␉␉␉␉␉ g_guardExpr="! ";␊ |
4457 | ␉␉␉␉␉ BEGIN(DefinedExpr1);␊ |
4458 | ␉␉␉␉␉}␊ |
4459 | ␉YY_BREAK␊ |
4460 | case 43:␊ |
4461 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4462 | (yy_c_buf_p) = yy_cp = yy_bp + 2;␊ |
4463 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4464 | YY_RULE_SETUP␊ |
4465 | #line 1712 "pre.l"␊ |
4466 | {␊ |
4467 | ␉␉␉␉␉ incrLevel();␊ |
4468 | ␉␉␉␉␉ g_guardExpr.resize(0);␊ |
4469 | ␉␉␉␉␉ BEGIN(Guard);␊ |
4470 | ␉␉␉␉␉}␊ |
4471 | ␉YY_BREAK␊ |
4472 | case 44:␊ |
4473 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4474 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4475 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4476 | YY_RULE_SETUP␊ |
4477 | #line 1717 "pre.l"␊ |
4478 | {␊ |
4479 | ␉␉␉␉␉ if (!otherCaseDone())␊ |
4480 | ␉␉␉␉␉ {␊ |
4481 | ␉␉␉␉␉ g_guardExpr.resize(0);␊ |
4482 | ␉␉␉␉␉ BEGIN(Guard); ␊ |
4483 | ␉␉␉␉␉ }␊ |
4484 | ␉␉␉␉␉ else␊ |
4485 | ␉␉␉␉␉ {␊ |
4486 | ␉␉␉␉␉ g_ifcount=0;␊ |
4487 | ␉␉␉␉␉ BEGIN(SkipCPPBlock);␊ |
4488 | ␉␉␉␉␉ }␊ |
4489 | ␉␉␉␉␉}␊ |
4490 | ␉YY_BREAK␊ |
4491 | case 45:␊ |
4492 | /* rule 45 can match eol */␊ |
4493 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4494 | (yy_c_buf_p) = yy_cp = yy_bp + 4;␊ |
4495 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4496 | YY_RULE_SETUP␊ |
4497 | #line 1729 "pre.l"␊ |
4498 | {␊ |
4499 | ␉␉␉␉␉ //printf("else g_levelGuard[%d]=%d\n",g_level-1,g_levelGuard[g_level-1]);␊ |
4500 | ␉␉␉␉␉ if (otherCaseDone())␊ |
4501 | ␉␉␉␉␉ {␊ |
4502 | ␉␉␉␉␉ g_ifcount=0;␊ |
4503 | ␉␉␉␉␉ BEGIN(SkipCPPBlock);␊ |
4504 | ␉␉␉␉␉ }␊ |
4505 | ␉␉␉␉␉ else␊ |
4506 | ␉␉␉␉␉ {␊ |
4507 | ␉␉␉␉␉ setCaseDone(TRUE);␊ |
4508 | ␉␉␉␉␉ //g_levelGuard[g_level-1]=TRUE;␊ |
4509 | ␉␉␉␉␉ } ␊ |
4510 | ␉␉␉␉␉}␊ |
4511 | ␉YY_BREAK␊ |
4512 | case 46:␊ |
4513 | YY_RULE_SETUP␊ |
4514 | #line 1742 "pre.l"␊ |
4515 | {␊ |
4516 | ␉␉␉␉␉ BEGIN(UndefName);␊ |
4517 | ␉␉␉␉␉}␊ |
4518 | ␉YY_BREAK␊ |
4519 | case 47:␊ |
4520 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4521 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4522 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4523 | YY_RULE_SETUP␊ |
4524 | #line 1745 "pre.l"␊ |
4525 | {␊ |
4526 | ␉␉␉␉␉ if (!otherCaseDone())␊ |
4527 | ␉␉␉␉␉ {␊ |
4528 | ␉␉␉␉␉ g_guardExpr.resize(0);␊ |
4529 | ␉␉␉␉␉ BEGIN(Guard);␊ |
4530 | ␉␉␉␉␉ }␊ |
4531 | ␉␉␉␉␉}␊ |
4532 | ␉YY_BREAK␊ |
4533 | case 48:␊ |
4534 | /* rule 48 can match eol */␊ |
4535 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4536 | (yy_c_buf_p) = yy_cp = yy_bp + 5;␊ |
4537 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4538 | YY_RULE_SETUP␊ |
4539 | #line 1752 "pre.l"␊ |
4540 | {␊ |
4541 | ␉␉␉␉␉ //printf("Pre.l: #endif\n");␊ |
4542 | ␉␉␉␉␉ decrLevel();␊ |
4543 | ␉␉␉␉␉}␊ |
4544 | ␉YY_BREAK␊ |
4545 | case 49:␊ |
4546 | /* rule 49 can match eol */␊ |
4547 | YY_RULE_SETUP␊ |
4548 | #line 1756 "pre.l"␊ |
4549 | {␊ |
4550 | ␉␉␉␉␉ outputChar('\n');␊ |
4551 | ␉␉␉␉␉ BEGIN(Start);␊ |
4552 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4553 | ␉␉␉␉␉}␊ |
4554 | ␉YY_BREAK␊ |
4555 | case 50:␊ |
4556 | YY_RULE_SETUP␊ |
4557 | #line 1761 "pre.l"␊ |
4558 | { // unknown directive␊ |
4559 | ␉␉␉␉␉ BEGIN(IgnoreLine);␊ |
4560 | ␉␉␉␉␉}␊ |
4561 | ␉YY_BREAK␊ |
4562 | case 51:␊ |
4563 | /* rule 51 can match eol */␊ |
4564 | YY_RULE_SETUP␊ |
4565 | #line 1764 "pre.l"␊ |
4566 | {␊ |
4567 | ␉␉␉␉␉ outputChar('\n');␊ |
4568 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4569 | ␉␉␉␉␉}␊ |
4570 | ␉YY_BREAK␊ |
4571 | case 52:␊ |
4572 | YY_RULE_SETUP␊ |
4573 | #line 1768 "pre.l"␊ |
4574 | ␊ |
4575 | ␉YY_BREAK␊ |
4576 | case 53:␊ |
4577 | YY_RULE_SETUP␊ |
4578 | #line 1769 "pre.l"␊ |
4579 | ␊ |
4580 | ␉YY_BREAK␊ |
4581 | case 54:␊ |
4582 | YY_RULE_SETUP␊ |
4583 | #line 1770 "pre.l"␊ |
4584 | {␊ |
4585 | ␉␉␉␉␉ Define *def;␊ |
4586 | ␉␉␉␉␉ if ((def=isDefined(preYYtext)) ␊ |
4587 | ␉␉␉␉␉ /*&& !def->isPredefined*/␊ |
4588 | ␉␉␉␉␉ && !def->nonRecursive␊ |
4589 | ␉␉␉␉␉ )␊ |
4590 | ␉␉␉␉␉ {␊ |
4591 | ␉␉␉␉␉ //printf("undefining %s\n",preYYtext);␊ |
4592 | ␉␉␉␉␉ def->undef=TRUE;␊ |
4593 | ␉␉␉␉␉ }␊ |
4594 | ␉␉␉␉␉ BEGIN(Start);␊ |
4595 | ␉␉␉␉␉}␊ |
4596 | ␉YY_BREAK␊ |
4597 | case 55:␊ |
4598 | /* rule 55 can match eol */␊ |
4599 | YY_RULE_SETUP␊ |
4600 | #line 1782 "pre.l"␊ |
4601 | {␊ |
4602 | ␉␉␉␉␉ outputChar('\n');␊ |
4603 | ␉␉␉␉␉ g_guardExpr+=' ';␊ |
4604 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4605 | ␉␉␉␉␉}␊ |
4606 | ␉YY_BREAK␊ |
4607 | case 56:␊ |
4608 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4609 | (yy_c_buf_p) = yy_cp = yy_bp + 7;␊ |
4610 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4611 | YY_RULE_SETUP␊ |
4612 | #line 1787 "pre.l"␊ |
4613 | {␊ |
4614 | ␉␉␉␉␉ BEGIN(DefinedExpr2);␊ |
4615 | ␉␉␉␉␉}␊ |
4616 | ␉YY_BREAK␊ |
4617 | case 57:␊ |
4618 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4619 | (yy_c_buf_p) = yy_cp = yy_bp + 7;␊ |
4620 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4621 | YY_RULE_SETUP␊ |
4622 | #line 1790 "pre.l"␊ |
4623 | {␊ |
4624 | ␉␉␉␉␉ BEGIN(DefinedExpr1);␊ |
4625 | ␉␉␉␉␉}␊ |
4626 | ␉YY_BREAK␊ |
4627 | case 58:␊ |
4628 | YY_RULE_SETUP␊ |
4629 | #line 1793 "pre.l"␊ |
4630 | { g_guardExpr+=preYYtext; }␊ |
4631 | ␉YY_BREAK␊ |
4632 | case 59:␊ |
4633 | YY_RULE_SETUP␊ |
4634 | #line 1794 "pre.l"␊ |
4635 | { g_guardExpr+=*preYYtext; }␊ |
4636 | ␉YY_BREAK␊ |
4637 | case 60:␊ |
4638 | /* rule 60 can match eol */␊ |
4639 | YY_RULE_SETUP␊ |
4640 | #line 1795 "pre.l"␊ |
4641 | {␊ |
4642 | ␉␉␉␉␉ unput(*preYYtext);␊ |
4643 | ␉␉␉␉␉ //printf("Guard: `%s'\n",␊ |
4644 | ␉␉␉␉␉ // g_guardExpr.data());␊ |
4645 | ␉␉␉␉␉ bool guard=computeExpression(g_guardExpr);␊ |
4646 | ␉␉␉␉␉ setCaseDone(guard);␊ |
4647 | ␉␉␉␉␉ //printf("if g_levelGuard[%d]=%d\n",g_level-1,g_levelGuard[g_level-1]);␊ |
4648 | ␉␉␉␉␉ if (guard)␊ |
4649 | ␉␉␉␉␉ {␊ |
4650 | ␉␉␉␉␉ BEGIN(Start);␊ |
4651 | ␉␉␉␉␉ } ␊ |
4652 | ␉␉␉␉␉ else␊ |
4653 | ␉␉␉␉␉ {␊ |
4654 | ␉␉␉␉␉ g_ifcount=0;␊ |
4655 | ␉␉␉␉␉ BEGIN(SkipCPPBlock);␊ |
4656 | ␉␉␉␉␉ }␊ |
4657 | ␉␉␉␉␉}␊ |
4658 | ␉YY_BREAK␊ |
4659 | case 61:␊ |
4660 | /* rule 61 can match eol */␊ |
4661 | YY_RULE_SETUP␊ |
4662 | #line 1812 "pre.l"␊ |
4663 | { g_yyLineNr++; outputChar('\n'); }␊ |
4664 | ␉YY_BREAK␊ |
4665 | case 62:␊ |
4666 | YY_RULE_SETUP␊ |
4667 | #line 1813 "pre.l"␊ |
4668 | {␊ |
4669 | ␉␉␉␉␉ if (isDefined(preYYtext))␊ |
4670 | ␉␉␉␉␉ g_guardExpr+=" 1L ";␊ |
4671 | ␉␉␉␉␉ else␊ |
4672 | ␉␉␉␉␉ g_guardExpr+=" 0L ";␊ |
4673 | ␉␉␉␉␉ g_lastGuardName=preYYtext;␊ |
4674 | ␉␉␉␉␉ BEGIN(Guard);␊ |
4675 | ␉␉␉␉␉}␊ |
4676 | ␉YY_BREAK␊ |
4677 | case 63:␊ |
4678 | YY_RULE_SETUP␊ |
4679 | #line 1821 "pre.l"␊ |
4680 | {␊ |
4681 | ␉␉␉␉␉ if (isDefined(preYYtext))␊ |
4682 | ␉␉␉␉␉ g_guardExpr+=" 1L ";␊ |
4683 | ␉␉␉␉␉ else␊ |
4684 | ␉␉␉␉␉ g_guardExpr+=" 0L ";␊ |
4685 | ␉␉␉␉␉ g_lastGuardName=preYYtext;␊ |
4686 | ␉␉␉␉␉}␊ |
4687 | ␉YY_BREAK␊ |
4688 | case 64:␊ |
4689 | /* rule 64 can match eol */␊ |
4690 | YY_RULE_SETUP␊ |
4691 | #line 1828 "pre.l"␊ |
4692 | { // should not happen, handle anyway␊ |
4693 | g_yyLineNr++;␊ |
4694 | ␉␉␉␉␉ g_ifcount=0;␊ |
4695 | ␉␉␉␉␉ BEGIN(SkipCPPBlock); ␊ |
4696 | ␉␉␉␉␉}␊ |
4697 | ␉YY_BREAK␊ |
4698 | case 65:␊ |
4699 | YY_RULE_SETUP␊ |
4700 | #line 1833 "pre.l"␊ |
4701 | {␊ |
4702 | ␉␉␉␉␉ BEGIN(Guard);␊ |
4703 | ␉␉␉␉␉}␊ |
4704 | ␉YY_BREAK␊ |
4705 | case 66:␊ |
4706 | YY_RULE_SETUP␊ |
4707 | #line 1836 "pre.l"␊ |
4708 | ␊ |
4709 | ␉YY_BREAK␊ |
4710 | case 67:␊ |
4711 | YY_RULE_SETUP␊ |
4712 | #line 1837 "pre.l"␊ |
4713 | { BEGIN(SkipCommand); }␊ |
4714 | ␉YY_BREAK␊ |
4715 | case 68:␊ |
4716 | /* rule 68 can match eol */␊ |
4717 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4718 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4719 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4720 | YY_RULE_SETUP␊ |
4721 | #line 1838 "pre.l"␊ |
4722 | { BEGIN(SkipLine); }␊ |
4723 | ␉YY_BREAK␊ |
4724 | case 69:␊ |
4725 | /* rule 69 can match eol */␊ |
4726 | YY_RULE_SETUP␊ |
4727 | #line 1839 "pre.l"␊ |
4728 | { g_yyLineNr++; outputChar('\n'); }␊ |
4729 | ␉YY_BREAK␊ |
4730 | case 70:␊ |
4731 | YY_RULE_SETUP␊ |
4732 | #line 1840 "pre.l"␊ |
4733 | ␊ |
4734 | ␉YY_BREAK␊ |
4735 | case 71:␊ |
4736 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4737 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4738 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4739 | YY_RULE_SETUP␊ |
4740 | #line 1841 "pre.l"␊ |
4741 | { ␊ |
4742 | ␉␉␉␉␉ incrLevel();␊ |
4743 | g_ifcount++; ␊ |
4744 | ␉␉␉␉␉ //printf("#if... depth=%d\n",g_ifcount);␊ |
4745 | ␉␉␉␉␉}␊ |
4746 | ␉YY_BREAK␊ |
4747 | case 72:␊ |
4748 | YY_RULE_SETUP␊ |
4749 | #line 1846 "pre.l"␊ |
4750 | {␊ |
4751 | ␉␉␉␉␉ //printf("Else! g_ifcount=%d otherCaseDone=%d\n",g_ifcount,otherCaseDone());␊ |
4752 | ␉␉␉␉␉ if (g_ifcount==0 && !otherCaseDone())␊ |
4753 | ␉␉␉␉␉ {␊ |
4754 | ␉␉␉␉␉ setCaseDone(TRUE);␊ |
4755 | ␉␉␉␉␉ //outputChar('\n');␊ |
4756 | ␉␉␉␉␉ BEGIN(Start);␊ |
4757 | ␉␉␉␉␉ }␊ |
4758 | ␉␉␉␉␉}␊ |
4759 | ␉YY_BREAK␊ |
4760 | case 73:␊ |
4761 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4762 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4763 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4764 | YY_RULE_SETUP␊ |
4765 | #line 1855 "pre.l"␊ |
4766 | {␊ |
4767 | ␉␉␉␉␉ if (g_ifcount==0) ␊ |
4768 | ␉␉␉␉␉ {␊ |
4769 | ␉␉␉␉␉ if (!otherCaseDone())␊ |
4770 | ␉␉␉␉␉ {␊ |
4771 | ␉␉␉␉␉ g_guardExpr.resize(0);␊ |
4772 | ␉␉␉␉␉ g_lastGuardName.resize(0);␊ |
4773 | ␉␉␉␉␉ BEGIN(Guard);␊ |
4774 | ␉␉␉␉␉ }␊ |
4775 | ␉␉␉␉␉ else␊ |
4776 | ␉␉␉␉␉ {␊ |
4777 | ␉␉␉␉␉ BEGIN(SkipCPPBlock);␊ |
4778 | ␉␉␉␉␉ }␊ |
4779 | ␉␉␉␉␉ }␊ |
4780 | ␉␉␉␉␉}␊ |
4781 | ␉YY_BREAK␊ |
4782 | case 74:␊ |
4783 | YY_RULE_SETUP␊ |
4784 | #line 1870 "pre.l"␊ |
4785 | { ␊ |
4786 | ␉␉␉␉␉ g_expectGuard = FALSE;␊ |
4787 | ␉␉␉␉␉ decrLevel();␊ |
4788 | ␉␉␉␉ if (--g_ifcount<0)␊ |
4789 | ␉␉␉␉␉ {␊ |
4790 | ␉␉␉␉␉ //outputChar('\n');␊ |
4791 | ␉␉␉␉␉ BEGIN(Start);␊ |
4792 | ␉␉␉␉␉ }␊ |
4793 | ␉␉␉␉␉}␊ |
4794 | ␉YY_BREAK␊ |
4795 | case 75:␊ |
4796 | /* rule 75 can match eol */␊ |
4797 | YY_RULE_SETUP␊ |
4798 | #line 1879 "pre.l"␊ |
4799 | { ␊ |
4800 | ␉␉␉␉␉ outputChar('\n');␊ |
4801 | ␉␉␉␉␉ g_yyLineNr++; ␊ |
4802 | ␉␉␉␉␉ BEGIN(SkipCPPBlock);␊ |
4803 | ␉␉␉␉␉}␊ |
4804 | ␉YY_BREAK␊ |
4805 | case 76:␊ |
4806 | YY_RULE_SETUP␊ |
4807 | #line 1884 "pre.l"␊ |
4808 | { // unknown directive ␊ |
4809 | ␉␉␉␉␉ BEGIN(SkipLine); ␊ |
4810 | ␉␉␉␉␉}␊ |
4811 | ␉YY_BREAK␊ |
4812 | case 77:␊ |
4813 | YY_RULE_SETUP␊ |
4814 | #line 1887 "pre.l"␊ |
4815 | ␊ |
4816 | ␉YY_BREAK␊ |
4817 | case 78:␊ |
4818 | YY_RULE_SETUP␊ |
4819 | #line 1888 "pre.l"␊ |
4820 | ␊ |
4821 | ␉YY_BREAK␊ |
4822 | case 79:␊ |
4823 | YY_RULE_SETUP␊ |
4824 | #line 1889 "pre.l"␊ |
4825 | { }␊ |
4826 | ␉YY_BREAK␊ |
4827 | case 80:␊ |
4828 | YY_RULE_SETUP␊ |
4829 | #line 1890 "pre.l"␊ |
4830 | {␊ |
4831 | ␉␉␉␉␉ BEGIN(SkipString);␊ |
4832 | ␉␉␉␉␉}␊ |
4833 | ␉YY_BREAK␊ |
4834 | case 81:␊ |
4835 | YY_RULE_SETUP␊ |
4836 | #line 1893 "pre.l"␊ |
4837 | ␊ |
4838 | ␉YY_BREAK␊ |
4839 | case 82:␊ |
4840 | YY_RULE_SETUP␊ |
4841 | #line 1894 "pre.l"␊ |
4842 | {␊ |
4843 | ␉␉␉␉␉ g_lastCPPContext=YY_START;␊ |
4844 | ␉␉␉␉␉ BEGIN(RemoveCPPComment);␊ |
4845 | ␉␉␉␉␉}␊ |
4846 | ␉YY_BREAK␊ |
4847 | case 83:␊ |
4848 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4849 | (yy_c_buf_p) = yy_cp = yy_bp + 2;␊ |
4850 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4851 | YY_RULE_SETUP␊ |
4852 | #line 1898 "pre.l"␊ |
4853 | {␊ |
4854 | ␉␉␉␉␉ g_lastCContext=YY_START;␊ |
4855 | ␉␉␉␉␉ BEGIN(RemoveCComment);␊ |
4856 | ␉␉␉␉␉}␊ |
4857 | ␉YY_BREAK␊ |
4858 | case 84:␊ |
4859 | /* rule 84 can match eol */␊ |
4860 | YY_RULE_SETUP␊ |
4861 | #line 1902 "pre.l"␊ |
4862 | {␊ |
4863 | ␉␉␉␉␉ outputChar('\n');␊ |
4864 | ␉␉␉␉␉ g_yyLineNr++; ␊ |
4865 | ␉␉␉␉␉ BEGIN(SkipCPPBlock);␊ |
4866 | ␉␉␉␉␉}␊ |
4867 | ␉YY_BREAK␊ |
4868 | case 85:␊ |
4869 | YY_RULE_SETUP␊ |
4870 | #line 1907 "pre.l"␊ |
4871 | { }␊ |
4872 | ␉YY_BREAK␊ |
4873 | case 86:␊ |
4874 | YY_RULE_SETUP␊ |
4875 | #line 1908 "pre.l"␊ |
4876 | { }␊ |
4877 | ␉YY_BREAK␊ |
4878 | case 87:␊ |
4879 | YY_RULE_SETUP␊ |
4880 | #line 1909 "pre.l"␊ |
4881 | {␊ |
4882 | ␉␉␉␉␉ BEGIN(SkipLine);␊ |
4883 | ␉␉␉␉␉}␊ |
4884 | ␉YY_BREAK␊ |
4885 | case 88:␊ |
4886 | YY_RULE_SETUP␊ |
4887 | #line 1912 "pre.l"␊ |
4888 | { }␊ |
4889 | ␉YY_BREAK␊ |
4890 | case 89:␊ |
4891 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4892 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4893 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4894 | YY_RULE_SETUP␊ |
4895 | #line 1913 "pre.l"␊ |
4896 | {␊ |
4897 | ␉␉␉␉␉ g_nospaces=TRUE;␊ |
4898 | ␉␉␉␉ g_roundCount=0;␊ |
4899 | ␉␉␉␉␉ g_defArgsStr=preYYtext;␊ |
4900 | ␉␉␉␉␉ g_findDefArgContext = IncludeID;␊ |
4901 | ␉␉␉␉␉ BEGIN(FindDefineArgs);␊ |
4902 | ␉␉␉␉␉}␊ |
4903 | ␉YY_BREAK␊ |
4904 | case 90:␊ |
4905 | YY_RULE_SETUP␊ |
4906 | #line 1920 "pre.l"␊ |
4907 | {␊ |
4908 | ␉␉␉␉␉ g_nospaces=TRUE;␊ |
4909 | readIncludeFile(expandMacro(preYYtext));␊ |
4910 | ␉␉␉␉␉ BEGIN(Start);␊ |
4911 | ␉␉␉␉␉}␊ |
4912 | ␉YY_BREAK␊ |
4913 | case 91:␊ |
4914 | YY_RULE_SETUP␊ |
4915 | #line 1925 "pre.l"␊ |
4916 | { ␊ |
4917 | ␉␉␉␉␉ g_incName+=preYYtext;␊ |
4918 | ␉␉␉␉␉ readIncludeFile(g_incName);␊ |
4919 | ␉␉␉␉␉ if (g_isImported)␊ |
4920 | ␉␉␉␉␉ {␊ |
4921 | ␉␉␉␉␉ BEGIN(EndImport);␊ |
4922 | ␉␉␉␉␉ }␊ |
4923 | ␉␉␉␉␉ else␊ |
4924 | ␉␉␉␉␉ {␊ |
4925 | ␉␉␉␉␉ BEGIN(Start);␊ |
4926 | ␉␉␉␉␉ }␊ |
4927 | ␉␉␉␉␉}␊ |
4928 | ␉YY_BREAK␊ |
4929 | case 92:␊ |
4930 | /* rule 92 can match eol */␊ |
4931 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
4932 | (yy_c_buf_p) = yy_cp -= 1;␊ |
4933 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
4934 | YY_RULE_SETUP␊ |
4935 | #line 1937 "pre.l"␊ |
4936 | {␊ |
4937 | ␉␉␉␉␉ BEGIN(Start);␊ |
4938 | ␉␉␉␉␉}␊ |
4939 | ␉YY_BREAK␊ |
4940 | case 93:␊ |
4941 | /* rule 93 can match eol */␊ |
4942 | YY_RULE_SETUP␊ |
4943 | #line 1940 "pre.l"␊ |
4944 | { ␊ |
4945 | ␉␉␉␉␉ outputChar('\n');␊ |
4946 | ␉␉␉␉␉ g_yyLineNr++;␊ |
4947 | ␉␉␉␉␉}␊ |
4948 | ␉YY_BREAK␊ |
4949 | case 94:␊ |
4950 | YY_RULE_SETUP␊ |
4951 | #line 1944 "pre.l"␊ |
4952 | {␊ |
4953 | ␉␉␉␉␉}␊ |
4954 | ␉YY_BREAK␊ |
4955 | case 95:␊ |
4956 | /* rule 95 can match eol */␊ |
4957 | YY_RULE_SETUP␊ |
4958 | #line 1946 "pre.l"␊ |
4959 | { // define with argument␊ |
4960 | ␉␉␉␉␉ //printf("Define() `%s'\n",preYYtext);␊ |
4961 | ␉␉␉␉␉ g_argDict = new QDict<int>(31);␊ |
4962 | ␉␉␉␉␉ g_argDict->setAutoDelete(TRUE);␊ |
4963 | ␉␉␉␉␉ g_defArgs = 0; ␊ |
4964 | g_defArgsStr.resize(0);␊ |
4965 | ␉␉␉␉␉ g_defText.resize(0);␊ |
4966 | ␉␉␉␉␉ g_defLitText.resize(0);␊ |
4967 | ␉␉␉␉␉ g_defName = preYYtext;␊ |
4968 | ␉␉␉␉␉ g_defVarArgs = FALSE;␊ |
4969 | ␉␉␉␉␉ g_defExtraSpacing.resize(0);␊ |
4970 | ␉␉␉␉␉ BEGIN(DefineArg);␊ |
4971 | ␉␉␉␉␉}␊ |
4972 | ␉YY_BREAK␊ |
4973 | case 96:␊ |
4974 | YY_RULE_SETUP␊ |
4975 | #line 1959 "pre.l"␊ |
4976 | { // special case: define with 1 -> can be "guard"␊ |
4977 | ␉␉␉␉␉ //printf("Define `%s'\n",preYYtext);␊ |
4978 | ␉␉␉␉␉ g_argDict = 0;␊ |
4979 | ␉␉␉␉␉ g_defArgs = -1;␊ |
4980 | g_defArgsStr.resize(0);␊ |
4981 | ␉␉␉␉␉ g_defName = preYYtext;␊ |
4982 | ␉␉␉␉␉ g_defName = g_defName.left(g_defName.length()-1).stripWhiteSpace();␊ |
4983 | ␉␉␉␉␉ g_defVarArgs = FALSE;␊ |
4984 | ␉␉␉␉␉ if ( g_defName!=g_lastGuardName || !g_expectGuard)␊ |
4985 | ␉␉␉␉␉ { // define may appear in the output␊ |
4986 | ␉␉␉␉␉ QCString tmp=(QCString)"#define "+g_defName;␊ |
4987 | ␉␉␉␉␉ outputArray(tmp.data(),tmp.length());␊ |
4988 | ␉␉␉␉␉ g_quoteArg=FALSE;␊ |
4989 | ␉␉␉␉␉ g_insideComment=FALSE;␊ |
4990 | ␉␉␉␉␉ g_lastGuardName.resize(0);␊ |
4991 | ␉␉␉␉ g_defText="1"; ␊ |
4992 | ␉␉␉␉␉ g_defLitText="1"; ␊ |
4993 | ␉␉␉␉␉ BEGIN(DefineText); ␊ |
4994 | ␉␉␉␉␉ }␊ |
4995 | ␉␉␉␉␉ else // define is a guard => hide␊ |
4996 | ␉␉␉␉␉ {␊ |
4997 | ␉␉␉␉␉ g_defText.resize(0);␊ |
4998 | ␉␉␉␉␉ g_defLitText.resize(0);␊ |
4999 | ␉␉␉␉␉ BEGIN(Start);␊ |
5000 | ␉␉␉␉␉ }␊ |
5001 | ␉␉␉␉␉}␊ |
5002 | ␉YY_BREAK␊ |
5003 | case 97:␊ |
5004 | YY_RULE_SETUP␊ |
5005 | #line 1985 "pre.l"␊ |
5006 | { // define with content␊ |
5007 | ␉␉␉␉␉ //printf("Define `%s'\n",preYYtext);␊ |
5008 | ␉␉␉␉␉ g_argDict = 0;␊ |
5009 | ␉␉␉␉␉ g_defArgs = -1;␊ |
5010 | g_defArgsStr.resize(0);␊ |
5011 | ␉␉␉␉␉ g_defText.resize(0);␊ |
5012 | ␉␉␉␉␉ g_defLitText.resize(0);␊ |
5013 | ␉␉␉␉␉ g_defName = preYYtext;␊ |
5014 | ␉␉␉␉␉ g_defVarArgs = FALSE;␊ |
5015 | ␉␉␉␉␉ QCString tmp=(QCString)"#define "+g_defName+g_defArgsStr;␊ |
5016 | ␉␉␉␉␉ outputArray(tmp.data(),tmp.length());␊ |
5017 | ␉␉␉␉␉ g_quoteArg=FALSE;␊ |
5018 | ␉␉␉␉␉ g_insideComment=FALSE;␊ |
5019 | ␉␉␉␉␉ BEGIN(DefineText); ␊ |
5020 | ␉␉␉␉␉}␊ |
5021 | ␉YY_BREAK␊ |
5022 | case 98:␊ |
5023 | /* rule 98 can match eol */␊ |
5024 | YY_RULE_SETUP␊ |
5025 | #line 2000 "pre.l"␊ |
5026 | { // empty define␊ |
5027 | ␉␉␉␉␉ g_argDict = 0;␊ |
5028 | ␉␉␉␉␉ g_defArgs = -1;␊ |
5029 | ␉␉␉␉␉ g_defName = preYYtext;␊ |
5030 | g_defArgsStr.resize(0);␊ |
5031 | ␉␉␉␉␉ g_defText.resize(0);␊ |
5032 | ␉␉␉␉␉ g_defLitText.resize(0);␊ |
5033 | ␉␉␉␉␉ g_defVarArgs = FALSE;␊ |
5034 | ␉␉␉␉␉ //printf("Guard check: %s!=%s || %d\n",␊ |
5035 | ␉␉␉␉␉ // g_defName.data(),g_lastGuardName.data(),g_expectGuard);␊ |
5036 | ␉␉␉␉␉ if ( g_defName!=g_lastGuardName || !g_expectGuard)␊ |
5037 | ␉␉␉␉␉ { // define may appear in the output␊ |
5038 | ␉␉␉␉␉ QCString tmp=(QCString)"#define "+g_defName;␊ |
5039 | ␉␉␉␉␉ outputArray(tmp.data(),tmp.length());␊ |
5040 | ␉␉␉␉␉ g_quoteArg=FALSE;␊ |
5041 | ␉␉␉␉␉ g_insideComment=FALSE;␊ |
5042 | ␉␉␉␉␉ if (g_insideCS) g_defText="1"; // for C#, use "1" as define text␊ |
5043 | ␉␉␉␉␉ BEGIN(DefineText);␊ |
5044 | ␉␉␉␉␉ }␊ |
5045 | ␉␉␉␉␉ else // define is a guard => hide␊ |
5046 | ␉␉␉␉␉ {␊ |
5047 | ␉␉␉␉␉ //printf("Found a guard %s\n",preYYtext);␊ |
5048 | ␉␉␉␉␉ g_lastGuardName.resize(0);␊ |
5049 | ␉␉␉␉␉ BEGIN(Start);␊ |
5050 | ␉␉␉␉␉ }␊ |
5051 | ␉␉␉␉␉ g_expectGuard=FALSE;␊ |
5052 | ␉␉␉␉␉}␊ |
5053 | ␉YY_BREAK␊ |
5054 | case 99:␊ |
5055 | /* rule 99 can match eol */␊ |
5056 | YY_RULE_SETUP␊ |
5057 | #line 2027 "pre.l"␊ |
5058 | {␊ |
5059 | ␉␉␉␉␉ g_defExtraSpacing+="\n";␊ |
5060 | ␉␉␉␉␉ g_yyLineNr++;␊ |
5061 | }␊ |
5062 | ␉YY_BREAK␊ |
5063 | case 100:␊ |
5064 | YY_RULE_SETUP␊ |
5065 | #line 2031 "pre.l"␊ |
5066 | { g_defArgsStr+=preYYtext; }␊ |
5067 | ␉YY_BREAK␊ |
5068 | case 101:␊ |
5069 | YY_RULE_SETUP␊ |
5070 | #line 2032 "pre.l"␊ |
5071 | { g_defArgsStr+=preYYtext; }␊ |
5072 | ␉YY_BREAK␊ |
5073 | case 102:␊ |
5074 | YY_RULE_SETUP␊ |
5075 | #line 2033 "pre.l"␊ |
5076 | {␊ |
5077 | g_defArgsStr+=preYYtext; ␊ |
5078 | ␉␉␉␉␉ QCString tmp=(QCString)"#define "+g_defName+g_defArgsStr+g_defExtraSpacing;␊ |
5079 | ␉␉␉␉␉ outputArray(tmp.data(),tmp.length());␊ |
5080 | ␉␉␉␉␉ g_quoteArg=FALSE;␊ |
5081 | ␉␉␉␉␉ g_insideComment=FALSE;␊ |
5082 | ␉␉␉␉␉ BEGIN(DefineText);␊ |
5083 | ␉␉␉␉␉}␊ |
5084 | ␉YY_BREAK␊ |
5085 | case 103:␊ |
5086 | YY_RULE_SETUP␊ |
5087 | #line 2041 "pre.l"␊ |
5088 | { // Variadic macro␊ |
5089 | ␉␉␉␉␉ g_defVarArgs = TRUE;␊ |
5090 | ␉␉␉␉␉ g_defArgsStr+=preYYtext;␊ |
5091 | ␉␉␉␉␉ g_argDict->insert("__VA_ARGS__",new int(g_defArgs));␊ |
5092 | ␉␉␉␉␉ g_defArgs++;␊ |
5093 | ␉␉␉␉␉}␊ |
5094 | ␉YY_BREAK␊ |
5095 | case 104:␊ |
5096 | YY_RULE_SETUP␊ |
5097 | #line 2047 "pre.l"␊ |
5098 | {␊ |
5099 | ␉␉␉␉␉ //printf("Define addArg(%s)\n",preYYtext);␊ |
5100 | ␉␉␉␉␉ QCString argName=preYYtext;␊ |
5101 | ␉␉␉␉␉ g_defVarArgs = preYYtext[preYYleng-1]=='.';␊ |
5102 | ␉␉␉␉␉ if (g_defVarArgs) // strip ellipsis␊ |
5103 | ␉␉␉␉␉ {␊ |
5104 | ␉␉␉␉␉ argName=argName.left(argName.length()-3);␊ |
5105 | ␉␉␉␉␉ }␊ |
5106 | ␉␉␉␉␉ argName = argName.stripWhiteSpace();␊ |
5107 | g_defArgsStr+=preYYtext;␊ |
5108 | ␉␉␉␉␉ g_argDict->insert(argName,new int(g_defArgs)); ␊ |
5109 | ␉␉␉␉␉ g_defArgs++;␊ |
5110 | ␉␉␉␉␉}␊ |
5111 | ␉YY_BREAK␊ |
5112 | /*␊ |
5113 | <DefineText>"/ **"|"/ *!"␉␉␉{␊ |
5114 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5115 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5116 | ␉␉␉␉␉ g_insideComment=TRUE;␊ |
5117 | ␉␉␉␉␉}␊ |
5118 | <DefineText>"* /"␉␉␉{␊ |
5119 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5120 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5121 | ␉␉␉␉␉ g_insideComment=FALSE;␊ |
5122 | ␉␉␉␉␉}␊ |
5123 | */␊ |
5124 | case 105:␊ |
5125 | YY_RULE_SETUP␊ |
5126 | #line 2072 "pre.l"␊ |
5127 | {␊ |
5128 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5129 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5130 | ␉␉␉␉␉ g_lastCContext=YY_START;␊ |
5131 | ␉␉␉␉␉ g_commentCount=1;␊ |
5132 | ␉␉␉␉␉ BEGIN(CopyCComment);␊ |
5133 | ␉␉␉␉␉}␊ |
5134 | ␉YY_BREAK␊ |
5135 | case 106:␊ |
5136 | YY_RULE_SETUP␊ |
5137 | #line 2079 "pre.l"␊ |
5138 | {␊ |
5139 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5140 | ␉␉␉␉␉ g_lastCPPContext=YY_START;␊ |
5141 | ␉␉␉␉␉ g_defLitText+=' ';␊ |
5142 | ␉␉␉␉␉ BEGIN(SkipCPPComment);␊ |
5143 | ␉␉␉␉␉}␊ |
5144 | ␉YY_BREAK␊ |
5145 | case 107:␊ |
5146 | YY_RULE_SETUP␊ |
5147 | #line 2085 "pre.l"␊ |
5148 | {␊ |
5149 | ␉␉␉␉␉ if (preYYtext[0]=='/') outputChar('/');␊ |
5150 | ␉␉␉␉␉ outputChar('*');outputChar('/');␊ |
5151 | ␉␉␉␉␉ if (--g_commentCount<=0)␊ |
5152 | ␉␉␉␉␉ {␊ |
5153 | ␉␉␉␉␉ if (g_lastCContext==Start) ␊ |
5154 | ␉␉␉␉␉ // small hack to make sure that ^... rule will␊ |
5155 | ␉␉␉␉␉ // match when going to Start... Example: "/*...*/ some stuff..."␊ |
5156 | ␉␉␉␉␉ {␊ |
5157 | ␉␉␉␉␉ YY_CURRENT_BUFFER->yy_at_bol=1;␊ |
5158 | ␉␉␉␉␉ }␊ |
5159 | ␉␉␉␉␉ BEGIN(g_lastCContext); ␊ |
5160 | ␉␉␉␉␉ }␊ |
5161 | ␉␉␉␉␉}␊ |
5162 | ␉YY_BREAK␊ |
5163 | case 108:␊ |
5164 | YY_RULE_SETUP␊ |
5165 | #line 2099 "pre.l"␊ |
5166 | {␊ |
5167 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5168 | ␉␉␉␉␉}␊ |
5169 | ␉YY_BREAK␊ |
5170 | case 109:␊ |
5171 | YY_RULE_SETUP␊ |
5172 | #line 2102 "pre.l"␊ |
5173 | {␊ |
5174 | ␉␉␉␉␉ outputChar('/');outputChar('*');␊ |
5175 | ␉␉␉␉␉ //g_commentCount++;␊ |
5176 | ␉␉␉␉␉}␊ |
5177 | ␉YY_BREAK␊ |
5178 | case 110:␊ |
5179 | YY_RULE_SETUP␊ |
5180 | #line 2106 "pre.l"␊ |
5181 | {␊ |
5182 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5183 | ␉␉␉␉␉}␊ |
5184 | ␉YY_BREAK␊ |
5185 | case 111:␊ |
5186 | /* rule 111 can match eol */␊ |
5187 | YY_RULE_SETUP␊ |
5188 | #line 2109 "pre.l"␊ |
5189 | {␊ |
5190 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5191 | ␉␉␉␉␉ g_yyLineNr+=QCString(preYYtext).contains('\n');␊ |
5192 | ␉␉␉␉␉}␊ |
5193 | ␉YY_BREAK␊ |
5194 | case 112:␊ |
5195 | /* rule 112 can match eol */␊ |
5196 | YY_RULE_SETUP␊ |
5197 | #line 2113 "pre.l"␊ |
5198 | {␊ |
5199 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5200 | ␉␉␉␉␉ g_yyLineNr+=QCString(preYYtext).contains('\n');␊ |
5201 | ␉␉␉␉␉ if (preYYtext[1]=='f')␊ |
5202 | ␉␉␉␉␉ {␊ |
5203 | ␉␉␉␉␉ g_blockName="f";␊ |
5204 | ␉␉␉␉␉ }␊ |
5205 | ␉␉␉␉␉ else␊ |
5206 | ␉␉␉␉␉ {␊ |
5207 | ␉␉␉␉␉ g_blockName=QCString(&preYYtext[1]).stripWhiteSpace();␊ |
5208 | ␉␉␉␉␉ }␊ |
5209 | ␉␉␉␉␉ BEGIN(SkipVerbatim);␊ |
5210 | ␉␉␉␉␉}␊ |
5211 | ␉YY_BREAK␊ |
5212 | case 113:␊ |
5213 | YY_RULE_SETUP␊ |
5214 | #line 2126 "pre.l"␊ |
5215 | { // conditional section␊ |
5216 | ␉␉␉␉␉ g_condCtx = YY_START;␊ |
5217 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5218 | ␉␉␉␉␉ BEGIN(CondLine);␊ |
5219 | ␉␉␉␉␉}␊ |
5220 | ␉YY_BREAK␊ |
5221 | case 114:␊ |
5222 | YY_RULE_SETUP␊ |
5223 | #line 2131 "pre.l"␊ |
5224 | {␊ |
5225 | ␉␉␉␉ startCondSection(preYYtext);␊ |
5226 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5227 | ␉␉␉␉␉ BEGIN(g_condCtx);␊ |
5228 | ␉␉␉␉␉}␊ |
5229 | ␉YY_BREAK␊ |
5230 | case 115:␊ |
5231 | /* rule 115 can match eol */␊ |
5232 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
5233 | (yy_c_buf_p) = yy_cp -= 1;␊ |
5234 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
5235 | YY_RULE_SETUP␊ |
5236 | #line 2136 "pre.l"␊ |
5237 | {␊ |
5238 | ␉␉␉␉␉ g_condCtx = YY_START;␊ |
5239 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5240 | ␉␉␉␉␉ BEGIN(CondLine);␊ |
5241 | ␉␉␉␉␉}␊ |
5242 | ␉YY_BREAK␊ |
5243 | case 116:␊ |
5244 | YY_RULE_SETUP␊ |
5245 | #line 2141 "pre.l"␊ |
5246 | {␊ |
5247 | ␉␉␉␉␉ unput(*preYYtext);␊ |
5248 | ␉␉␉␉␉ startCondSection(" ");␊ |
5249 | ␉␉␉␉␉ BEGIN(g_condCtx);␊ |
5250 | ␉␉␉␉␉}␊ |
5251 | ␉YY_BREAK␊ |
5252 | case 117:␊ |
5253 | /* rule 117 can match eol */␊ |
5254 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
5255 | (yy_c_buf_p) = yy_cp = yy_bp + 8;␊ |
5256 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
5257 | YY_RULE_SETUP␊ |
5258 | #line 2146 "pre.l"␊ |
5259 | {␊ |
5260 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5261 | ␉␉␉␉␉ endCondSection();␊ |
5262 | ␉␉␉␉␉}␊ |
5263 | ␉YY_BREAK␊ |
5264 | case 118:␊ |
5265 | YY_RULE_SETUP␊ |
5266 | #line 2150 "pre.l"␊ |
5267 | { /* end of verbatim block */␊ |
5268 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5269 | ␉␉␉␉␉ if (preYYtext[1]=='f' && g_blockName=="f")␊ |
5270 | ␉␉␉␉␉ {␊ |
5271 | ␉␉␉␉␉ BEGIN(SkipCComment);␊ |
5272 | ␉␉␉␉␉ }␊ |
5273 | ␉␉␉␉␉ else if (&preYYtext[4]==g_blockName)␊ |
5274 | ␉␉␉␉␉ {␊ |
5275 | ␉␉␉␉␉ BEGIN(SkipCComment);␊ |
5276 | ␉␉␉␉␉ }␊ |
5277 | ␉␉␉␉␉}␊ |
5278 | ␉YY_BREAK␊ |
5279 | case 119:␊ |
5280 | YY_RULE_SETUP␊ |
5281 | #line 2161 "pre.l"␊ |
5282 | {␊ |
5283 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5284 | ␉␉␉␉␉}␊ |
5285 | ␉YY_BREAK␊ |
5286 | case 120:␊ |
5287 | YY_RULE_SETUP␊ |
5288 | #line 2164 "pre.l"␊ |
5289 | {␊ |
5290 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5291 | ␉␉␉␉␉}␊ |
5292 | ␉YY_BREAK␊ |
5293 | case 121:␊ |
5294 | /* rule 121 can match eol */␊ |
5295 | YY_RULE_SETUP␊ |
5296 | #line 2167 "pre.l"␊ |
5297 | { ␊ |
5298 | ␉␉␉␉␉ g_yyLineNr++;␊ |
5299 | ␉␉␉␉␉ outputChar('\n');␊ |
5300 | ␉␉␉␉␉}␊ |
5301 | ␉YY_BREAK␊ |
5302 | case 122:␊ |
5303 | YY_RULE_SETUP␊ |
5304 | #line 2171 "pre.l"␊ |
5305 | {␊ |
5306 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
5307 | ␉␉␉␉␉}␊ |
5308 | ␉YY_BREAK␊ |
5309 | case 123:␊ |
5310 | YY_RULE_SETUP␊ |
5311 | #line 2174 "pre.l"␊ |
5312 | {␊ |
5313 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5314 | ␉␉␉␉␉ g_defText+=escapeAt(preYYtext);␊ |
5315 | ␉␉␉␉␉}␊ |
5316 | ␉YY_BREAK␊ |
5317 | case 124:␊ |
5318 | YY_RULE_SETUP␊ |
5319 | #line 2178 "pre.l"␊ |
5320 | {␊ |
5321 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5322 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5323 | ␉␉␉␉␉ BEGIN(g_lastCContext);␊ |
5324 | ␉␉␉␉␉}␊ |
5325 | ␉YY_BREAK␊ |
5326 | case 125:␊ |
5327 | /* rule 125 can match eol */␊ |
5328 | YY_RULE_SETUP␊ |
5329 | #line 2183 "pre.l"␊ |
5330 | { ␊ |
5331 | ␉␉␉␉␉ g_yyLineNr++;␊ |
5332 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5333 | ␉␉␉␉␉ g_defText+=' ';␊ |
5334 | ␉␉␉␉␉}␊ |
5335 | ␉YY_BREAK␊ |
5336 | case 126:␊ |
5337 | YY_RULE_SETUP␊ |
5338 | #line 2188 "pre.l"␊ |
5339 | { // see bug 594021 for a usecase for this rule␊ |
5340 | if (g_lastCContext==SkipCPPBlock)␊ |
5341 | ␉␉␉␉␉ {␊ |
5342 | ␉␉␉␉␉ BEGIN(SkipCommand);␊ |
5343 | ␉␉␉␉␉ }␊ |
5344 | ␉␉␉␉␉ else␊ |
5345 | ␉␉␉␉␉ {␊ |
5346 | ␉␉␉␉␉ REJECT;␊ |
5347 | ␉␉␉␉␉ }␊ |
5348 | ␉␉␉␉␉}␊ |
5349 | ␉YY_BREAK␊ |
5350 | case 127:␊ |
5351 | YY_RULE_SETUP␊ |
5352 | #line 2198 "pre.l"␊ |
5353 | { BEGIN(g_lastCContext); }␊ |
5354 | ␉YY_BREAK␊ |
5355 | case 128:␊ |
5356 | YY_RULE_SETUP␊ |
5357 | #line 2199 "pre.l"␊ |
5358 | ␊ |
5359 | ␉YY_BREAK␊ |
5360 | case 129:␊ |
5361 | YY_RULE_SETUP␊ |
5362 | #line 2200 "pre.l"␊ |
5363 | ␊ |
5364 | ␉YY_BREAK␊ |
5365 | case 130:␊ |
5366 | YY_RULE_SETUP␊ |
5367 | #line 2201 "pre.l"␊ |
5368 | ␊ |
5369 | ␉YY_BREAK␊ |
5370 | case 131:␊ |
5371 | /* rule 131 can match eol */␊ |
5372 | YY_RULE_SETUP␊ |
5373 | #line 2202 "pre.l"␊ |
5374 | { g_yyLineNr++; outputChar('\n'); }␊ |
5375 | ␉YY_BREAK␊ |
5376 | case 132:␊ |
5377 | YY_RULE_SETUP␊ |
5378 | #line 2203 "pre.l"␊ |
5379 | ␊ |
5380 | ␉YY_BREAK␊ |
5381 | case 133:␊ |
5382 | YY_RULE_SETUP␊ |
5383 | #line 2204 "pre.l"␊ |
5384 | {␊ |
5385 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5386 | ␉␉␉␉␉}␊ |
5387 | ␉YY_BREAK␊ |
5388 | case 134:␊ |
5389 | /* rule 134 can match eol */␊ |
5390 | YY_RULE_SETUP␊ |
5391 | #line 2207 "pre.l"␊ |
5392 | {␊ |
5393 | ␉␉␉␉␉ unput(*preYYtext);␊ |
5394 | ␉␉␉␉␉ BEGIN(g_lastCPPContext);␊ |
5395 | ␉␉␉␉␉}␊ |
5396 | ␉YY_BREAK␊ |
5397 | case 135:␊ |
5398 | YY_RULE_SETUP␊ |
5399 | #line 2211 "pre.l"␊ |
5400 | {␊ |
5401 | ␉␉␉␉␉ outputChar('/');outputChar('*');␊ |
5402 | ␉␉␉␉␉}␊ |
5403 | ␉YY_BREAK␊ |
5404 | case 136:␊ |
5405 | YY_RULE_SETUP␊ |
5406 | #line 2214 "pre.l"␊ |
5407 | {␊ |
5408 | ␉␉␉␉␉ outputChar('/');outputChar('/');␊ |
5409 | ␉␉␉␉␉}␊ |
5410 | ␉YY_BREAK␊ |
5411 | case 137:␊ |
5412 | YY_RULE_SETUP␊ |
5413 | #line 2217 "pre.l"␊ |
5414 | {␊ |
5415 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5416 | ␉␉␉␉␉}␊ |
5417 | ␉YY_BREAK␊ |
5418 | case 138:␊ |
5419 | YY_RULE_SETUP␊ |
5420 | #line 2220 "pre.l"␊ |
5421 | {␊ |
5422 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
5423 | ␉␉␉␉␉}␊ |
5424 | ␉YY_BREAK␊ |
5425 | case 139:␊ |
5426 | YY_RULE_SETUP␊ |
5427 | #line 2223 "pre.l"␊ |
5428 | ␊ |
5429 | ␉YY_BREAK␊ |
5430 | case 140:␊ |
5431 | YY_RULE_SETUP␊ |
5432 | #line 2224 "pre.l"␊ |
5433 | ␊ |
5434 | ␉YY_BREAK␊ |
5435 | case 141:␊ |
5436 | YY_RULE_SETUP␊ |
5437 | #line 2225 "pre.l"␊ |
5438 | ␊ |
5439 | ␉YY_BREAK␊ |
5440 | case 142:␊ |
5441 | YY_RULE_SETUP␊ |
5442 | #line 2226 "pre.l"␊ |
5443 | ␊ |
5444 | ␉YY_BREAK␊ |
5445 | case 143:␊ |
5446 | YY_RULE_SETUP␊ |
5447 | #line 2227 "pre.l"␊ |
5448 | {␊ |
5449 | ␉␉␉␉␉ g_quoteArg=TRUE;␊ |
5450 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5451 | ␉␉␉␉␉}␊ |
5452 | ␉YY_BREAK␊ |
5453 | case 144:␊ |
5454 | YY_RULE_SETUP␊ |
5455 | #line 2231 "pre.l"␊ |
5456 | {␊ |
5457 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5458 | ␉␉␉␉␉ if (g_quoteArg)␊ |
5459 | ␉␉␉␉␉ {␊ |
5460 | ␉␉␉␉␉ g_defText+="\"";␊ |
5461 | ␉␉␉␉␉ }␊ |
5462 | ␉␉␉␉␉ if (g_defArgs>0)␊ |
5463 | ␉␉␉␉␉ {␊ |
5464 | ␉␉␉␉␉ int *n;␊ |
5465 | ␉␉␉␉␉ if ((n=(*g_argDict)[preYYtext]))␊ |
5466 | ␉␉␉␉␉ {␊ |
5467 | ␉␉␉␉␉ //if (!g_quoteArg) g_defText+=' ';␊ |
5468 | ␉␉␉␉␉ g_defText+='@';␊ |
5469 | ␉␉␉␉␉ QCString numStr;␊ |
5470 | ␉␉␉␉␉ numStr.sprintf("%d",*n);␊ |
5471 | ␉␉␉␉␉ g_defText+=numStr;␊ |
5472 | ␉␉␉␉␉ //if (!g_quoteArg) g_defText+=' ';␊ |
5473 | ␉␉␉␉␉ }␊ |
5474 | ␉␉␉␉␉ else␊ |
5475 | ␉␉␉␉␉ {␊ |
5476 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5477 | ␉␉␉␉␉ }␊ |
5478 | ␉␉␉␉␉ }␊ |
5479 | ␉␉␉␉␉ else␊ |
5480 | ␉␉␉␉␉ {␊ |
5481 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5482 | ␉␉␉␉␉ }␊ |
5483 | ␉␉␉␉␉ if (g_quoteArg)␊ |
5484 | ␉␉␉␉␉ {␊ |
5485 | ␉␉␉␉␉ g_defText+="\"";␊ |
5486 | ␉␉␉␉␉ }␊ |
5487 | ␉␉␉␉␉ g_quoteArg=FALSE;␊ |
5488 | ␉␉␉␉␉}␊ |
5489 | ␉YY_BREAK␊ |
5490 | case 145:␊ |
5491 | YY_RULE_SETUP␊ |
5492 | #line 2264 "pre.l"␊ |
5493 | {␊ |
5494 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5495 | ␉␉␉␉␉ g_defText+=preYYtext;␊ |
5496 | ␉␉␉␉␉}␊ |
5497 | ␉YY_BREAK␊ |
5498 | case 146:␊ |
5499 | /* rule 146 can match eol */␊ |
5500 | YY_RULE_SETUP␊ |
5501 | #line 2268 "pre.l"␊ |
5502 | { ␊ |
5503 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5504 | ␉␉␉␉␉ outputChar('\n');␊ |
5505 | ␉␉␉␉␉ g_defText += ' '; g_yyLineNr++; ␊ |
5506 | ␉␉␉␉␉}␊ |
5507 | ␉YY_BREAK␊ |
5508 | case 147:␊ |
5509 | /* rule 147 can match eol */␊ |
5510 | YY_RULE_SETUP␊ |
5511 | #line 2273 "pre.l"␊ |
5512 | {␊ |
5513 | ␉␉␉␉␉ QCString comment=extractTrailingComment(g_defLitText);␊ |
5514 | ␉␉␉␉␉ g_defLitText+=preYYtext;␊ |
5515 | ␉␉␉␉␉ if (!comment.isEmpty())␊ |
5516 | ␉␉␉␉␉ {␊ |
5517 | ␉␉␉␉␉ outputArray(comment,comment.length());␊ |
5518 | ␉␉␉␉␉ g_defLitText=g_defLitText.left(g_defLitText.length()-comment.length()-1);␊ |
5519 | ␉␉␉␉␉ }␊ |
5520 | ␉␉␉␉␉ outputChar('\n');␊ |
5521 | ␉␉␉␉␉ Define *def=0;␊ |
5522 | ␉␉␉␉␉ //printf("Define name=`%s' text=`%s' litTexti=`%s'\n",g_defName.data(),g_defText.data(),g_defLitText.data());␊ |
5523 | ␉␉␉␉␉ if (g_includeStack.isEmpty() || g_curlyCount>0) ␊ |
5524 | ␉␉␉␉␉ {␊ |
5525 | ␉␉␉␉␉ addDefine();␊ |
5526 | ␉␉␉␉␉ }␊ |
5527 | ␉␉␉␉␉ def=g_globalDefineDict->find(g_defName);␊ |
5528 | ␉␉␉␉␉ if (def==0) // new define␊ |
5529 | ␉␉␉␉␉ {␊ |
5530 | ␉␉␉␉␉ //printf("new define!\n");␊ |
5531 | ␉␉␉␉␉ Define *nd = newDefine();␊ |
5532 | ␉␉␉␉␉ g_globalDefineDict->insert(g_defName,nd);␊ |
5533 | ␉␉␉␉␉ // also add it to the local file list if it is a source file␊ |
5534 | ␉␉␉␉␉ if (g_isSource && g_includeStack.isEmpty())␊ |
5535 | ␉␉␉␉␉ {␊ |
5536 | ␉␉␉␉␉ g_fileDefineDict->insert(g_defName,nd);␊ |
5537 | ␉␉␉␉␉ }␊ |
5538 | ␉␉␉␉␉ }␊ |
5539 | ␉␉␉␉␉ else if (def && macroIsAccessible(def))␊ |
5540 | ␉␉␉␉␉ // name already exists␊ |
5541 | ␉␉␉␉␉ {␊ |
5542 | ␉␉␉␉␉ //printf("existing define!\n");␊ |
5543 | ␉␉␉␉␉ //printf("define found\n");␊ |
5544 | ␉␉␉␉␉ if (def->undef) // undefined name␊ |
5545 | ␉␉␉␉␉ {␊ |
5546 | ␉␉␉␉␉ def->undef = FALSE;␊ |
5547 | ␉␉␉␉␉ def->name = g_defName;␊ |
5548 | ␉␉␉␉␉ def->definition = g_defText.stripWhiteSpace();␊ |
5549 | ␉␉␉␉␉ def->nargs = g_defArgs;␊ |
5550 | ␉␉␉␉␉ def->fileName = g_yyFileName.copy(); ␊ |
5551 | ␉␉␉␉␉ def->lineNr = g_yyLineNr;␊ |
5552 | ␉␉␉␉␉ }␊ |
5553 | ␉␉␉␉␉ else␊ |
5554 | ␉␉␉␉␉ {␊ |
5555 | ␉␉␉␉␉ //printf("error: define %s is defined more than once!\n",g_defName.data());␊ |
5556 | ␉␉␉␉␉ }␊ |
5557 | ␉␉␉␉␉ }␊ |
5558 | ␉␉␉␉␉ delete g_argDict; g_argDict=0;␊ |
5559 | ␉␉␉␉␉ g_yyLineNr++;␊ |
5560 | ␉␉␉␉␉ g_lastGuardName.resize(0);␊ |
5561 | ␉␉␉␉␉ BEGIN(Start);␊ |
5562 | ␉␉␉␉␉}␊ |
5563 | ␉YY_BREAK␊ |
5564 | case 148:␊ |
5565 | YY_RULE_SETUP␊ |
5566 | #line 2324 "pre.l"␊ |
5567 | { g_defText += ' '; g_defLitText+=preYYtext; }␊ |
5568 | ␉YY_BREAK␊ |
5569 | case 149:␊ |
5570 | YY_RULE_SETUP␊ |
5571 | #line 2325 "pre.l"␊ |
5572 | { g_defText += "##"; g_defLitText+=preYYtext; }␊ |
5573 | ␉YY_BREAK␊ |
5574 | case 150:␊ |
5575 | YY_RULE_SETUP␊ |
5576 | #line 2326 "pre.l"␊ |
5577 | { g_defText += "@@"; g_defLitText+=preYYtext; }␊ |
5578 | ␉YY_BREAK␊ |
5579 | case 151:␊ |
5580 | YY_RULE_SETUP␊ |
5581 | #line 2327 "pre.l"␊ |
5582 | { ␊ |
5583 | g_defText += *preYYtext; ␊ |
5584 | ␉␉␉␉␉ g_defLitText+=preYYtext; ␊ |
5585 | ␉␉␉␉␉ if (!g_insideComment)␊ |
5586 | ␉␉␉␉␉ {␊ |
5587 | ␉␉␉␉␉ BEGIN(SkipDoubleQuote);␊ |
5588 | ␉␉␉␉␉ }␊ |
5589 | ␉␉␉␉␉}␊ |
5590 | ␉YY_BREAK␊ |
5591 | case 152:␊ |
5592 | YY_RULE_SETUP␊ |
5593 | #line 2335 "pre.l"␊ |
5594 | { g_defText += *preYYtext;␊ |
5595 | ␉␉␉␉␉ g_defLitText+=preYYtext; ␊ |
5596 | ␉␉␉␉␉ if (!g_insideComment)␊ |
5597 | ␉␉␉␉␉ {␊ |
5598 | ␉␉␉␉␉ BEGIN(SkipSingleQuote);␊ |
5599 | ␉␉␉␉␉ }␊ |
5600 | ␉␉␉␉␉}␊ |
5601 | ␉YY_BREAK␊ |
5602 | case 153:␊ |
5603 | YY_RULE_SETUP␊ |
5604 | #line 2342 "pre.l"␊ |
5605 | { g_defText += preYYtext; g_defLitText+=preYYtext; }␊ |
5606 | ␉YY_BREAK␊ |
5607 | case 154:␊ |
5608 | YY_RULE_SETUP␊ |
5609 | #line 2343 "pre.l"␊ |
5610 | { g_defText += preYYtext; g_defLitText+=preYYtext; }␊ |
5611 | ␉YY_BREAK␊ |
5612 | case 155:␊ |
5613 | YY_RULE_SETUP␊ |
5614 | #line 2344 "pre.l"␊ |
5615 | {␊ |
5616 | ␉␉␉␉␉ g_defText += *preYYtext; g_defLitText+=preYYtext; ␊ |
5617 | ␉␉␉␉␉ BEGIN(DefineText);␊ |
5618 | ␉␉␉␉␉}␊ |
5619 | ␉YY_BREAK␊ |
5620 | case 156:␊ |
5621 | YY_RULE_SETUP␊ |
5622 | #line 2348 "pre.l"␊ |
5623 | {␊ |
5624 | ␉␉␉␉␉ g_defText += preYYtext; g_defLitText+=preYYtext;␊ |
5625 | ␉␉␉␉␉}␊ |
5626 | ␉YY_BREAK␊ |
5627 | case 157:␊ |
5628 | YY_RULE_SETUP␊ |
5629 | #line 2351 "pre.l"␊ |
5630 | {␊ |
5631 | ␉␉␉␉␉ g_defText += *preYYtext; g_defLitText+=preYYtext;␊ |
5632 | ␉␉␉␉␉ BEGIN(DefineText);␊ |
5633 | ␉␉␉␉␉}␊ |
5634 | ␉YY_BREAK␊ |
5635 | case 158:␊ |
5636 | YY_RULE_SETUP␊ |
5637 | #line 2355 "pre.l"␊ |
5638 | { g_defText += *preYYtext; g_defLitText+=preYYtext; }␊ |
5639 | ␉YY_BREAK␊ |
5640 | case 159:␊ |
5641 | YY_RULE_SETUP␊ |
5642 | #line 2356 "pre.l"␊ |
5643 | { g_defText += *preYYtext; g_defLitText+=preYYtext; }␊ |
5644 | ␉YY_BREAK␊ |
5645 | case 160:␊ |
5646 | YY_RULE_SETUP␊ |
5647 | #line 2357 "pre.l"␊ |
5648 | { g_defText += *preYYtext; g_defLitText+=preYYtext; }␊ |
5649 | ␉YY_BREAK␊ |
5650 | case YY_STATE_EOF(INITIAL):␊ |
5651 | case YY_STATE_EOF(Start):␊ |
5652 | case YY_STATE_EOF(Command):␊ |
5653 | case YY_STATE_EOF(SkipCommand):␊ |
5654 | case YY_STATE_EOF(SkipLine):␊ |
5655 | case YY_STATE_EOF(SkipString):␊ |
5656 | case YY_STATE_EOF(CopyLine):␊ |
5657 | case YY_STATE_EOF(CopyString):␊ |
5658 | case YY_STATE_EOF(Include):␊ |
5659 | case YY_STATE_EOF(IncludeID):␊ |
5660 | case YY_STATE_EOF(EndImport):␊ |
5661 | case YY_STATE_EOF(DefName):␊ |
5662 | case YY_STATE_EOF(DefineArg):␊ |
5663 | case YY_STATE_EOF(DefineText):␊ |
5664 | case YY_STATE_EOF(SkipCPPBlock):␊ |
5665 | case YY_STATE_EOF(Ifdef):␊ |
5666 | case YY_STATE_EOF(Ifndef):␊ |
5667 | case YY_STATE_EOF(SkipCComment):␊ |
5668 | case YY_STATE_EOF(CopyCComment):␊ |
5669 | case YY_STATE_EOF(SkipVerbatim):␊ |
5670 | case YY_STATE_EOF(SkipCPPComment):␊ |
5671 | case YY_STATE_EOF(RemoveCComment):␊ |
5672 | case YY_STATE_EOF(RemoveCPPComment):␊ |
5673 | case YY_STATE_EOF(Guard):␊ |
5674 | case YY_STATE_EOF(DefinedExpr1):␊ |
5675 | case YY_STATE_EOF(DefinedExpr2):␊ |
5676 | case YY_STATE_EOF(SkipDoubleQuote):␊ |
5677 | case YY_STATE_EOF(SkipSingleQuote):␊ |
5678 | case YY_STATE_EOF(UndefName):␊ |
5679 | case YY_STATE_EOF(IgnoreLine):␊ |
5680 | case YY_STATE_EOF(FindDefineArgs):␊ |
5681 | case YY_STATE_EOF(ReadString):␊ |
5682 | case YY_STATE_EOF(CondLine):␊ |
5683 | #line 2358 "pre.l"␊ |
5684 | {␊ |
5685 | //fprintf(stderr,"End of include file\n");␊ |
5686 | ␉␉␉␉␉ //printf("Include stack depth=%d\n",g_includeStack.count());␊ |
5687 | ␉␉␉␉␉ if (g_includeStack.isEmpty())␊ |
5688 | ␉␉␉␉␉ {␊ |
5689 | ␉␉␉␉␉ //fprintf(stderr,"Terminating scanner!\n");␊ |
5690 | ␉␉␉␉␉ yyterminate();␊ |
5691 | ␉␉␉␉␉ }␊ |
5692 | ␉␉␉␉␉ else␊ |
5693 | ␉␉␉␉␉ {␊ |
5694 | ␉␉␉␉␉ FileState *fs=g_includeStack.pop();␊ |
5695 | ␉␉␉␉␉ //fileDefineCache->merge(g_yyFileName,fs->fileName);␊ |
5696 | ␉␉␉␉␉ YY_BUFFER_STATE oldBuf = YY_CURRENT_BUFFER;␊ |
5697 | ␉␉␉␉␉ preYY_switch_to_buffer(fs->bufState );␊ |
5698 | ␉␉␉␉␉ preYY_delete_buffer(oldBuf );␊ |
5699 | ␉␉␉␉␉ g_yyLineNr = fs->lineNr;␊ |
5700 | //preYYin = fs->oldYYin;␊ |
5701 | g_inputBuf = fs->oldFileBuf;␊ |
5702 | ␉␉␉␉␉ g_inputBufPos = fs->oldFileBufPos;␊ |
5703 | ␉␉␉␉␉ setFileName(fs->fileName);␊ |
5704 | ␉␉␉␉␉ //fprintf(stderr,"######## FileName %s\n",g_yyFileName.data());␊ |
5705 | ␉␉␉␉␉ ␊ |
5706 | // Deal with file changes due to ␊ |
5707 | // #include's within { .. } blocks␊ |
5708 | QCString lineStr(15+g_yyFileName.length());␊ |
5709 | lineStr.sprintf("# %d \"%s\" 2",g_yyLineNr,g_yyFileName.data());␊ |
5710 | outputArray(lineStr.data(),lineStr.length());␊ |
5711 | ␉␉␉␉␉ ␊ |
5712 | ␉␉␉␉␉ delete fs; fs=0;␊ |
5713 | ␉␉␉␉␉ }␊ |
5714 | ␉␉␉␉␉}␊ |
5715 | ␉YY_BREAK␊ |
5716 | case 161:␊ |
5717 | *yy_cp = (yy_hold_char); /* undo effects of setting up preYYtext */␊ |
5718 | (yy_c_buf_p) = yy_cp = yy_bp + 2;␊ |
5719 | YY_DO_BEFORE_ACTION; /* set up preYYtext again */␊ |
5720 | #line 2390 "pre.l"␊ |
5721 | case 162:␊ |
5722 | YY_RULE_SETUP␊ |
5723 | #line 2390 "pre.l"␊ |
5724 | {␊ |
5725 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5726 | ␉␉␉␉␉ g_lastCContext=YY_START;␊ |
5727 | ␉␉␉␉␉ g_commentCount=1;␊ |
5728 | ␉␉␉␉␉ if (preYYleng==3) g_lastGuardName.resize(0); // reset guard in case the #define is documented!␊ |
5729 | ␉␉␉␉␉ BEGIN(SkipCComment);␊ |
5730 | ␉␉␉␉␉}␊ |
5731 | ␉YY_BREAK␊ |
5732 | case 163:␊ |
5733 | YY_RULE_SETUP␊ |
5734 | #line 2397 "pre.l"␊ |
5735 | {␊ |
5736 | ␉␉␉␉␉ outputArray(preYYtext,preYYleng);␊ |
5737 | ␉␉␉␉␉ g_lastCPPContext=YY_START;␊ |
5738 | ␉␉␉␉␉ if (preYYleng==3) g_lastGuardName.resize(0); // reset guard in case the #define is documented!␊ |
5739 | ␉␉␉␉␉ BEGIN(SkipCPPComment);␊ |
5740 | ␉␉␉␉␉}␊ |
5741 | ␉YY_BREAK␊ |
5742 | case 164:␊ |
5743 | /* rule 164 can match eol */␊ |
5744 | YY_RULE_SETUP␊ |
5745 | #line 2403 "pre.l"␊ |
5746 | { ␊ |
5747 | ␉␉␉␉␉ outputChar('\n');␊ |
5748 | ␉␉␉␉␉ g_yyLineNr++; ␊ |
5749 | ␉␉␉␉␉}␊ |
5750 | ␉YY_BREAK␊ |
5751 | case 165:␊ |
5752 | YY_RULE_SETUP␊ |
5753 | #line 2407 "pre.l"␊ |
5754 | {␊ |
5755 | ␉␉␉␉␉ g_expectGuard = FALSE;␊ |
5756 | ␉␉␉␉␉ outputChar(*preYYtext);␊ |
5757 | ␉␉␉␉␉}␊ |
5758 | ␉YY_BREAK␊ |
5759 | case 166:␊ |
5760 | YY_RULE_SETUP␊ |
5761 | #line 2412 "pre.l"␊ |
5762 | ECHO;␊ |
5763 | ␉YY_BREAK␊ |
5764 | #line 5765 "<stdout>"␊ |
5765 | ␊ |
5766 | ␉case YY_END_OF_BUFFER:␊ |
5767 | ␉␉{␊ |
5768 | ␉␉/* Amount of text matched not including the EOB char. */␊ |
5769 | ␉␉int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;␊ |
5770 | ␊ |
5771 | ␉␉/* Undo the effects of YY_DO_BEFORE_ACTION. */␊ |
5772 | ␉␉*yy_cp = (yy_hold_char);␊ |
5773 | ␉␉YY_RESTORE_YY_MORE_OFFSET␊ |
5774 | ␊ |
5775 | ␉␉if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )␊ |
5776 | ␉␉␉{␊ |
5777 | ␉␉␉/* We're scanning a new file or input source. It's␊ |
5778 | ␉␉␉ * possible that this happened because the user␊ |
5779 | ␉␉␉ * just pointed preYYin at a new source and called␊ |
5780 | ␉␉␉ * preYYlex(). If so, then we have to assure␊ |
5781 | ␉␉␉ * consistency between YY_CURRENT_BUFFER and our␊ |
5782 | ␉␉␉ * globals. Here is the right place to do so, because␊ |
5783 | ␉␉␉ * this is the first action (other than possibly a␊ |
5784 | ␉␉␉ * back-up) that will match for the new input source.␊ |
5785 | ␉␉␉ */␊ |
5786 | ␉␉␉(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;␊ |
5787 | ␉␉␉YY_CURRENT_BUFFER_LVALUE->yy_input_file = preYYin;␊ |
5788 | ␉␉␉YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;␊ |
5789 | ␉␉␉}␊ |
5790 | ␊ |
5791 | ␉␉/* Note that here we test for yy_c_buf_p "<=" to the position␊ |
5792 | ␉␉ * of the first EOB in the buffer, since yy_c_buf_p will␊ |
5793 | ␉␉ * already have been incremented past the NUL character␊ |
5794 | ␉␉ * (since all states make transitions on EOB to the␊ |
5795 | ␉␉ * end-of-buffer state). Contrast this with the test␊ |
5796 | ␉␉ * in input().␊ |
5797 | ␉␉ */␊ |
5798 | ␉␉if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )␊ |
5799 | ␉␉␉{ /* This was really a NUL. */␊ |
5800 | ␉␉␉yy_state_type yy_next_state;␊ |
5801 | ␊ |
5802 | ␉␉␉(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;␊ |
5803 | ␊ |
5804 | ␉␉␉yy_current_state = yy_get_previous_state( );␊ |
5805 | ␊ |
5806 | ␉␉␉/* Okay, we're now positioned to make the NUL␊ |
5807 | ␉␉␉ * transition. We couldn't have␊ |
5808 | ␉␉␉ * yy_get_previous_state() go ahead and do it␊ |
5809 | ␉␉␉ * for us because it doesn't know how to deal␊ |
5810 | ␉␉␉ * with the possibility of jamming (and we don't␊ |
5811 | ␉␉␉ * want to build jamming into it because then it␊ |
5812 | ␉␉␉ * will run more slowly).␊ |
5813 | ␉␉␉ */␊ |
5814 | ␊ |
5815 | ␉␉␉yy_next_state = yy_try_NUL_trans( yy_current_state );␊ |
5816 | ␊ |
5817 | ␉␉␉yy_bp = (yytext_ptr) + YY_MORE_ADJ;␊ |
5818 | ␊ |
5819 | ␉␉␉if ( yy_next_state )␊ |
5820 | ␉␉␉␉{␊ |
5821 | ␉␉␉␉/* Consume the NUL. */␊ |
5822 | ␉␉␉␉yy_cp = ++(yy_c_buf_p);␊ |
5823 | ␉␉␉␉yy_current_state = yy_next_state;␊ |
5824 | ␉␉␉␉goto yy_match;␊ |
5825 | ␉␉␉␉}␊ |
5826 | ␊ |
5827 | ␉␉␉else␊ |
5828 | ␉␉␉␉{␊ |
5829 | ␉␉␉␉yy_cp = (yy_c_buf_p);␊ |
5830 | ␉␉␉␉goto yy_find_action;␊ |
5831 | ␉␉␉␉}␊ |
5832 | ␉␉␉}␊ |
5833 | ␊ |
5834 | ␉␉else switch ( yy_get_next_buffer( ) )␊ |
5835 | ␉␉␉{␊ |
5836 | ␉␉␉case EOB_ACT_END_OF_FILE:␊ |
5837 | ␉␉␉␉{␊ |
5838 | ␉␉␉␉(yy_did_buffer_switch_on_eof) = 0;␊ |
5839 | ␊ |
5840 | ␉␉␉␉if ( preYYwrap( ) )␊ |
5841 | ␉␉␉␉␉{␊ |
5842 | ␉␉␉␉␉/* Note: because we've taken care in␊ |
5843 | ␉␉␉␉␉ * yy_get_next_buffer() to have set up␊ |
5844 | ␉␉␉␉␉ * preYYtext, we can now set up␊ |
5845 | ␉␉␉␉␉ * yy_c_buf_p so that if some total␊ |
5846 | ␉␉␉␉␉ * hoser (like flex itself) wants to␊ |
5847 | ␉␉␉␉␉ * call the scanner after we return the␊ |
5848 | ␉␉␉␉␉ * YY_NULL, it'll still work - another␊ |
5849 | ␉␉␉␉␉ * YY_NULL will get returned.␊ |
5850 | ␉␉␉␉␉ */␊ |
5851 | ␉␉␉␉␉(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;␊ |
5852 | ␊ |
5853 | ␉␉␉␉␉yy_act = YY_STATE_EOF(YY_START);␊ |
5854 | ␉␉␉␉␉goto do_action;␊ |
5855 | ␉␉␉␉␉}␊ |
5856 | ␊ |
5857 | ␉␉␉␉else␊ |
5858 | ␉␉␉␉␉{␊ |
5859 | ␉␉␉␉␉if ( ! (yy_did_buffer_switch_on_eof) )␊ |
5860 | ␉␉␉␉␉␉YY_NEW_FILE;␊ |
5861 | ␉␉␉␉␉}␊ |
5862 | ␉␉␉␉break;␊ |
5863 | ␉␉␉␉}␊ |
5864 | ␊ |
5865 | ␉␉␉case EOB_ACT_CONTINUE_SCAN:␊ |
5866 | ␉␉␉␉(yy_c_buf_p) =␊ |
5867 | ␉␉␉␉␉(yytext_ptr) + yy_amount_of_matched_text;␊ |
5868 | ␊ |
5869 | ␉␉␉␉yy_current_state = yy_get_previous_state( );␊ |
5870 | ␊ |
5871 | ␉␉␉␉yy_cp = (yy_c_buf_p);␊ |
5872 | ␉␉␉␉yy_bp = (yytext_ptr) + YY_MORE_ADJ;␊ |
5873 | ␉␉␉␉goto yy_match;␊ |
5874 | ␊ |
5875 | ␉␉␉case EOB_ACT_LAST_MATCH:␊ |
5876 | ␉␉␉␉(yy_c_buf_p) =␊ |
5877 | ␉␉␉␉&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];␊ |
5878 | ␊ |
5879 | ␉␉␉␉yy_current_state = yy_get_previous_state( );␊ |
5880 | ␊ |
5881 | ␉␉␉␉yy_cp = (yy_c_buf_p);␊ |
5882 | ␉␉␉␉yy_bp = (yytext_ptr) + YY_MORE_ADJ;␊ |
5883 | ␉␉␉␉goto yy_find_action;␊ |
5884 | ␉␉␉}␊ |
5885 | ␉␉break;␊ |
5886 | ␉␉}␊ |
5887 | ␊ |
5888 | ␉default:␊ |
5889 | ␉␉YY_FATAL_ERROR(␊ |
5890 | ␉␉␉"fatal flex scanner internal error--no action found" );␊ |
5891 | ␉} /* end of action switch */␊ |
5892 | ␉␉} /* end of scanning one token */␊ |
5893 | } /* end of preYYlex */␊ |
5894 | ␊ |
5895 | /* yy_get_next_buffer - try to read in a new buffer␊ |
5896 | *␊ |
5897 | * Returns a code representing an action:␊ |
5898 | *␉EOB_ACT_LAST_MATCH -␊ |
5899 | *␉EOB_ACT_CONTINUE_SCAN - continue scanning from current position␊ |
5900 | *␉EOB_ACT_END_OF_FILE - end of file␊ |
5901 | */␊ |
5902 | static int yy_get_next_buffer (void)␊ |
5903 | {␊ |
5904 | ␉register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;␊ |
5905 | ␉register char *source = (yytext_ptr);␊ |
5906 | ␉register int number_to_move, i;␊ |
5907 | ␉int ret_val;␊ |
5908 | ␊ |
5909 | ␉if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )␊ |
5910 | ␉␉YY_FATAL_ERROR(␊ |
5911 | ␉␉"fatal flex scanner internal error--end of buffer missed" );␊ |
5912 | ␊ |
5913 | ␉if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )␊ |
5914 | ␉␉{ /* Don't try to fill the buffer, so this is an EOF. */␊ |
5915 | ␉␉if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )␊ |
5916 | ␉␉␉{␊ |
5917 | ␉␉␉/* We matched a single character, the EOB, so␊ |
5918 | ␉␉␉ * treat this as a final EOF.␊ |
5919 | ␉␉␉ */␊ |
5920 | ␉␉␉return EOB_ACT_END_OF_FILE;␊ |
5921 | ␉␉␉}␊ |
5922 | ␊ |
5923 | ␉␉else␊ |
5924 | ␉␉␉{␊ |
5925 | ␉␉␉/* We matched some text prior to the EOB, first␊ |
5926 | ␉␉␉ * process it.␊ |
5927 | ␉␉␉ */␊ |
5928 | ␉␉␉return EOB_ACT_LAST_MATCH;␊ |
5929 | ␉␉␉}␊ |
5930 | ␉␉}␊ |
5931 | ␊ |
5932 | ␉/* Try to read more data. */␊ |
5933 | ␊ |
5934 | ␉/* First move last chars to start of buffer. */␊ |
5935 | ␉number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;␊ |
5936 | ␊ |
5937 | ␉for ( i = 0; i < number_to_move; ++i )␊ |
5938 | ␉␉*(dest++) = *(source++);␊ |
5939 | ␊ |
5940 | ␉if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )␊ |
5941 | ␉␉/* don't do the read, it's not guaranteed to return an EOF,␊ |
5942 | ␉␉ * just force an EOF␊ |
5943 | ␉␉ */␊ |
5944 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;␊ |
5945 | ␊ |
5946 | ␉else␊ |
5947 | ␉␉{␊ |
5948 | ␉␉␉yy_size_t num_to_read =␊ |
5949 | ␉␉␉YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;␊ |
5950 | ␊ |
5951 | ␉␉while ( num_to_read <= 0 )␊ |
5952 | ␉␉␉{ /* Not enough room in the buffer - grow it. */␊ |
5953 | ␊ |
5954 | ␉␉␉YY_FATAL_ERROR(␊ |
5955 | "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );␊ |
5956 | ␊ |
5957 | ␉␉␉}␊ |
5958 | ␊ |
5959 | ␉␉if ( num_to_read > YY_READ_BUF_SIZE )␊ |
5960 | ␉␉␉num_to_read = YY_READ_BUF_SIZE;␊ |
5961 | ␊ |
5962 | ␉␉/* Read in more data. */␊ |
5963 | ␉␉YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),␊ |
5964 | ␉␉␉(yy_n_chars), num_to_read );␊ |
5965 | ␊ |
5966 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);␊ |
5967 | ␉␉}␊ |
5968 | ␊ |
5969 | ␉if ( (yy_n_chars) == 0 )␊ |
5970 | ␉␉{␊ |
5971 | ␉␉if ( number_to_move == YY_MORE_ADJ )␊ |
5972 | ␉␉␉{␊ |
5973 | ␉␉␉ret_val = EOB_ACT_END_OF_FILE;␊ |
5974 | ␉␉␉preYYrestart(preYYin );␊ |
5975 | ␉␉␉}␊ |
5976 | ␊ |
5977 | ␉␉else␊ |
5978 | ␉␉␉{␊ |
5979 | ␉␉␉ret_val = EOB_ACT_LAST_MATCH;␊ |
5980 | ␉␉␉YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =␊ |
5981 | ␉␉␉␉YY_BUFFER_EOF_PENDING;␊ |
5982 | ␉␉␉}␊ |
5983 | ␉␉}␊ |
5984 | ␊ |
5985 | ␉else␊ |
5986 | ␉␉ret_val = EOB_ACT_CONTINUE_SCAN;␊ |
5987 | ␊ |
5988 | ␉if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {␊ |
5989 | ␉␉/* Extend the array by 50%, plus the number we really need. */␊ |
5990 | ␉␉yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);␊ |
5991 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) preYYrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );␊ |
5992 | ␉␉if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )␊ |
5993 | ␉␉␉YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );␊ |
5994 | ␉}␊ |
5995 | ␊ |
5996 | ␉(yy_n_chars) += number_to_move;␊ |
5997 | ␉YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;␊ |
5998 | ␉YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;␊ |
5999 | ␊ |
6000 | ␉(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];␊ |
6001 | ␊ |
6002 | ␉return ret_val;␊ |
6003 | }␊ |
6004 | ␊ |
6005 | /* yy_get_previous_state - get the state just before the EOB char was reached */␊ |
6006 | ␊ |
6007 | static yy_state_type yy_get_previous_state (void)␊ |
6008 | {␊ |
6009 | ␉register yy_state_type yy_current_state;␊ |
6010 | ␉register char *yy_cp;␊ |
6011 | ␊ |
6012 | ␉yy_current_state = (yy_start);␊ |
6013 | ␉yy_current_state += YY_AT_BOL();␊ |
6014 | ␊ |
6015 | ␉(yy_state_ptr) = (yy_state_buf);␊ |
6016 | ␉*(yy_state_ptr)++ = yy_current_state;␊ |
6017 | ␊ |
6018 | ␉for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )␊ |
6019 | ␉␉{␊ |
6020 | ␉␉register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 56);␊ |
6021 | ␉␉while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )␊ |
6022 | ␉␉␉{␊ |
6023 | ␉␉␉yy_current_state = (int) yy_def[yy_current_state];␊ |
6024 | ␉␉␉if ( yy_current_state >= 1157 )␊ |
6025 | ␉␉␉␉yy_c = yy_meta[(unsigned int) yy_c];␊ |
6026 | ␉␉␉}␊ |
6027 | ␉␉yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];␊ |
6028 | ␉␉*(yy_state_ptr)++ = yy_current_state;␊ |
6029 | ␉␉}␊ |
6030 | ␊ |
6031 | ␉return yy_current_state;␊ |
6032 | }␊ |
6033 | ␊ |
6034 | /* yy_try_NUL_trans - try to make a transition on the NUL character␊ |
6035 | *␊ |
6036 | * synopsis␊ |
6037 | *␉next_state = yy_try_NUL_trans( current_state );␊ |
6038 | */␊ |
6039 | static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )␊ |
6040 | {␊ |
6041 | ␉register int yy_is_jam;␊ |
6042 | ␊ |
6043 | ␉register YY_CHAR yy_c = 56;␊ |
6044 | ␉while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )␊ |
6045 | ␉␉{␊ |
6046 | ␉␉yy_current_state = (int) yy_def[yy_current_state];␊ |
6047 | ␉␉if ( yy_current_state >= 1157 )␊ |
6048 | ␉␉␉yy_c = yy_meta[(unsigned int) yy_c];␊ |
6049 | ␉␉}␊ |
6050 | ␉yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];␊ |
6051 | ␉yy_is_jam = (yy_current_state == 1156);␊ |
6052 | ␉if ( ! yy_is_jam )␊ |
6053 | ␉␉*(yy_state_ptr)++ = yy_current_state;␊ |
6054 | ␊ |
6055 | ␉return yy_is_jam ? 0 : yy_current_state;␊ |
6056 | }␊ |
6057 | ␊ |
6058 | static void yyunput (int c, register char * yy_bp )␊ |
6059 | {␊ |
6060 | ␉register char *yy_cp;␊ |
6061 | ␊ |
6062 | yy_cp = (yy_c_buf_p);␊ |
6063 | ␊ |
6064 | ␉/* undo effects of setting up preYYtext */␊ |
6065 | ␉*yy_cp = (yy_hold_char);␊ |
6066 | ␊ |
6067 | ␉if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )␊ |
6068 | ␉␉{ /* need to shift things up to make room */␊ |
6069 | ␉␉/* +2 for EOB chars. */␊ |
6070 | ␉␉register yy_size_t number_to_move = (yy_n_chars) + 2;␊ |
6071 | ␉␉register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[␊ |
6072 | ␉␉␉␉␉YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];␊ |
6073 | ␉␉register char *source =␊ |
6074 | ␉␉␉␉&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];␊ |
6075 | ␊ |
6076 | ␉␉while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )␊ |
6077 | ␉␉␉*--dest = *--source;␊ |
6078 | ␊ |
6079 | ␉␉yy_cp += (int) (dest - source);␊ |
6080 | ␉␉yy_bp += (int) (dest - source);␊ |
6081 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_n_chars =␊ |
6082 | ␉␉␉(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;␊ |
6083 | ␊ |
6084 | ␉␉if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )␊ |
6085 | ␉␉␉YY_FATAL_ERROR( "flex scanner push-back overflow" );␊ |
6086 | ␉␉}␊ |
6087 | ␊ |
6088 | ␉*--yy_cp = (char) c;␊ |
6089 | ␊ |
6090 | ␉(yytext_ptr) = yy_bp;␊ |
6091 | ␉(yy_hold_char) = *yy_cp;␊ |
6092 | ␉(yy_c_buf_p) = yy_cp;␊ |
6093 | }␊ |
6094 | ␊ |
6095 | #ifndef YY_NO_INPUT␊ |
6096 | #ifdef __cplusplus␊ |
6097 | static int yyinput (void)␊ |
6098 | #else␊ |
6099 | static int input (void)␊ |
6100 | #endif␊ |
6101 | ␊ |
6102 | {␊ |
6103 | ␉int c;␊ |
6104 | ␊ |
6105 | ␉*(yy_c_buf_p) = (yy_hold_char);␊ |
6106 | ␊ |
6107 | ␉if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )␊ |
6108 | ␉␉{␊ |
6109 | ␉␉/* yy_c_buf_p now points to the character we want to return.␊ |
6110 | ␉␉ * If this occurs *before* the EOB characters, then it's a␊ |
6111 | ␉␉ * valid NUL; if not, then we've hit the end of the buffer.␊ |
6112 | ␉␉ */␊ |
6113 | ␉␉if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )␊ |
6114 | ␉␉␉/* This was really a NUL. */␊ |
6115 | ␉␉␉*(yy_c_buf_p) = '\0';␊ |
6116 | ␊ |
6117 | ␉␉else␊ |
6118 | ␉␉␉{ /* need more input */␊ |
6119 | ␉␉␉yy_size_t offset = (yy_c_buf_p) - (yytext_ptr);␊ |
6120 | ␉␉␉++(yy_c_buf_p);␊ |
6121 | ␊ |
6122 | ␉␉␉switch ( yy_get_next_buffer( ) )␊ |
6123 | ␉␉␉␉{␊ |
6124 | ␉␉␉␉case EOB_ACT_LAST_MATCH:␊ |
6125 | ␉␉␉␉␉/* This happens because yy_g_n_b()␊ |
6126 | ␉␉␉␉␉ * sees that we've accumulated a␊ |
6127 | ␉␉␉␉␉ * token and flags that we need to␊ |
6128 | ␉␉␉␉␉ * try matching the token before␊ |
6129 | ␉␉␉␉␉ * proceeding. But for input(),␊ |
6130 | ␉␉␉␉␉ * there's no matching to consider.␊ |
6131 | ␉␉␉␉␉ * So convert the EOB_ACT_LAST_MATCH␊ |
6132 | ␉␉␉␉␉ * to EOB_ACT_END_OF_FILE.␊ |
6133 | ␉␉␉␉␉ */␊ |
6134 | ␊ |
6135 | ␉␉␉␉␉/* Reset buffer status. */␊ |
6136 | ␉␉␉␉␉preYYrestart(preYYin );␊ |
6137 | ␊ |
6138 | ␉␉␉␉␉/*FALLTHROUGH*/␊ |
6139 | ␊ |
6140 | ␉␉␉␉case EOB_ACT_END_OF_FILE:␊ |
6141 | ␉␉␉␉␉{␊ |
6142 | ␉␉␉␉␉if ( preYYwrap( ) )␊ |
6143 | ␉␉␉␉␉␉return 0;␊ |
6144 | ␊ |
6145 | ␉␉␉␉␉if ( ! (yy_did_buffer_switch_on_eof) )␊ |
6146 | ␉␉␉␉␉␉YY_NEW_FILE;␊ |
6147 | #ifdef __cplusplus␊ |
6148 | ␉␉␉␉␉return yyinput();␊ |
6149 | #else␊ |
6150 | ␉␉␉␉␉return input();␊ |
6151 | #endif␊ |
6152 | ␉␉␉␉␉}␊ |
6153 | ␊ |
6154 | ␉␉␉␉case EOB_ACT_CONTINUE_SCAN:␊ |
6155 | ␉␉␉␉␉(yy_c_buf_p) = (yytext_ptr) + offset;␊ |
6156 | ␉␉␉␉␉break;␊ |
6157 | ␉␉␉␉}␊ |
6158 | ␉␉␉}␊ |
6159 | ␉␉}␊ |
6160 | ␊ |
6161 | ␉c = *(unsigned char *) (yy_c_buf_p);␉/* cast for 8-bit char's */␊ |
6162 | ␉*(yy_c_buf_p) = '\0';␉/* preserve preYYtext */␊ |
6163 | ␉(yy_hold_char) = *++(yy_c_buf_p);␊ |
6164 | ␊ |
6165 | ␉YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');␊ |
6166 | ␊ |
6167 | ␉return c;␊ |
6168 | }␊ |
6169 | #endif␉/* ifndef YY_NO_INPUT */␊ |
6170 | ␊ |
6171 | /** Immediately switch to a different input stream.␊ |
6172 | * @param input_file A readable stream.␊ |
6173 | * ␊ |
6174 | * @note This function does not reset the start condition to @c INITIAL .␊ |
6175 | */␊ |
6176 | void preYYrestart (FILE * input_file )␊ |
6177 | {␊ |
6178 | ␊ |
6179 | ␉if ( ! YY_CURRENT_BUFFER ){␊ |
6180 | preYYensure_buffer_stack ();␊ |
6181 | ␉␉YY_CURRENT_BUFFER_LVALUE =␊ |
6182 | preYY_create_buffer(preYYin,YY_BUF_SIZE );␊ |
6183 | ␉}␊ |
6184 | ␊ |
6185 | ␉preYY_init_buffer(YY_CURRENT_BUFFER,input_file );␊ |
6186 | ␉preYY_load_buffer_state( );␊ |
6187 | }␊ |
6188 | ␊ |
6189 | /** Switch to a different input buffer.␊ |
6190 | * @param new_buffer The new input buffer.␊ |
6191 | * ␊ |
6192 | */␊ |
6193 | void preYY_switch_to_buffer (YY_BUFFER_STATE new_buffer )␊ |
6194 | {␊ |
6195 | ␊ |
6196 | ␉/* TODO. We should be able to replace this entire function body␊ |
6197 | ␉ * with␊ |
6198 | ␉ *␉␉preYYpop_buffer_state();␊ |
6199 | ␉ *␉␉preYYpush_buffer_state(new_buffer);␊ |
6200 | */␊ |
6201 | ␉preYYensure_buffer_stack ();␊ |
6202 | ␉if ( YY_CURRENT_BUFFER == new_buffer )␊ |
6203 | ␉␉return;␊ |
6204 | ␊ |
6205 | ␉if ( YY_CURRENT_BUFFER )␊ |
6206 | ␉␉{␊ |
6207 | ␉␉/* Flush out information for old buffer. */␊ |
6208 | ␉␉*(yy_c_buf_p) = (yy_hold_char);␊ |
6209 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);␊ |
6210 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);␊ |
6211 | ␉␉}␊ |
6212 | ␊ |
6213 | ␉YY_CURRENT_BUFFER_LVALUE = new_buffer;␊ |
6214 | ␉preYY_load_buffer_state( );␊ |
6215 | ␊ |
6216 | ␉/* We don't actually know whether we did this switch during␊ |
6217 | ␉ * EOF (preYYwrap()) processing, but the only time this flag␊ |
6218 | ␉ * is looked at is after preYYwrap() is called, so it's safe␊ |
6219 | ␉ * to go ahead and always set it.␊ |
6220 | ␉ */␊ |
6221 | ␉(yy_did_buffer_switch_on_eof) = 1;␊ |
6222 | }␊ |
6223 | ␊ |
6224 | static void preYY_load_buffer_state (void)␊ |
6225 | {␊ |
6226 | ␉(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;␊ |
6227 | ␉(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;␊ |
6228 | ␉preYYin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;␊ |
6229 | ␉(yy_hold_char) = *(yy_c_buf_p);␊ |
6230 | }␊ |
6231 | ␊ |
6232 | /** Allocate and initialize an input buffer state.␊ |
6233 | * @param file A readable stream.␊ |
6234 | * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.␊ |
6235 | * ␊ |
6236 | * @return the allocated buffer state.␊ |
6237 | */␊ |
6238 | YY_BUFFER_STATE preYY_create_buffer (FILE * file, int size )␊ |
6239 | {␊ |
6240 | ␉YY_BUFFER_STATE b;␊ |
6241 | ␊ |
6242 | ␉b = (YY_BUFFER_STATE) preYYalloc(sizeof( struct yy_buffer_state ) );␊ |
6243 | ␉if ( ! b )␊ |
6244 | ␉␉YY_FATAL_ERROR( "out of dynamic memory in preYY_create_buffer()" );␊ |
6245 | ␊ |
6246 | ␉b->yy_buf_size = size;␊ |
6247 | ␊ |
6248 | ␉/* yy_ch_buf has to be 2 characters longer than the size given because␊ |
6249 | ␉ * we need to put in 2 end-of-buffer characters.␊ |
6250 | ␉ */␊ |
6251 | ␉b->yy_ch_buf = (char *) preYYalloc(b->yy_buf_size + 2 );␊ |
6252 | ␉if ( ! b->yy_ch_buf )␊ |
6253 | ␉␉YY_FATAL_ERROR( "out of dynamic memory in preYY_create_buffer()" );␊ |
6254 | ␊ |
6255 | ␉b->yy_is_our_buffer = 1;␊ |
6256 | ␊ |
6257 | ␉preYY_init_buffer(b,file );␊ |
6258 | ␊ |
6259 | ␉return b;␊ |
6260 | }␊ |
6261 | ␊ |
6262 | /** Destroy the buffer.␊ |
6263 | * @param b a buffer created with preYY_create_buffer()␊ |
6264 | * ␊ |
6265 | */␊ |
6266 | void preYY_delete_buffer (YY_BUFFER_STATE b )␊ |
6267 | {␊ |
6268 | ␊ |
6269 | ␉if ( ! b )␊ |
6270 | ␉␉return;␊ |
6271 | ␊ |
6272 | ␉if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */␊ |
6273 | ␉␉YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;␊ |
6274 | ␊ |
6275 | ␉if ( b->yy_is_our_buffer )␊ |
6276 | ␉␉preYYfree((void *) b->yy_ch_buf );␊ |
6277 | ␊ |
6278 | ␉preYYfree((void *) b );␊ |
6279 | }␊ |
6280 | ␊ |
6281 | #ifndef __cplusplus␊ |
6282 | extern int isatty (int );␊ |
6283 | #endif /* __cplusplus */␊ |
6284 | ␊ |
6285 | /* Initializes or reinitializes a buffer.␊ |
6286 | * This function is sometimes called more than once on the same buffer,␊ |
6287 | * such as during a preYYrestart() or at EOF.␊ |
6288 | */␊ |
6289 | static void preYY_init_buffer (YY_BUFFER_STATE b, FILE * file )␊ |
6290 | ␊ |
6291 | {␊ |
6292 | ␉int oerrno = errno;␊ |
6293 | ␊ |
6294 | ␉preYY_flush_buffer(b );␊ |
6295 | ␊ |
6296 | ␉b->yy_input_file = file;␊ |
6297 | ␉b->yy_fill_buffer = 1;␊ |
6298 | ␊ |
6299 | /* If b is the current buffer, then preYY_init_buffer was _probably_␊ |
6300 | * called from preYYrestart() or through yy_get_next_buffer.␊ |
6301 | * In that case, we don't want to reset the lineno or column.␊ |
6302 | */␊ |
6303 | if (b != YY_CURRENT_BUFFER){␊ |
6304 | b->yy_bs_lineno = 1;␊ |
6305 | b->yy_bs_column = 0;␊ |
6306 | }␊ |
6307 | ␊ |
6308 | b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;␊ |
6309 | ␊ |
6310 | ␉errno = oerrno;␊ |
6311 | }␊ |
6312 | ␊ |
6313 | /** Discard all buffered characters. On the next scan, YY_INPUT will be called.␊ |
6314 | * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.␊ |
6315 | * ␊ |
6316 | */␊ |
6317 | void preYY_flush_buffer (YY_BUFFER_STATE b )␊ |
6318 | {␊ |
6319 | ␉if ( ! b )␊ |
6320 | ␉␉return;␊ |
6321 | ␊ |
6322 | ␉b->yy_n_chars = 0;␊ |
6323 | ␊ |
6324 | ␉/* We always need two end-of-buffer characters. The first causes␊ |
6325 | ␉ * a transition to the end-of-buffer state. The second causes␊ |
6326 | ␉ * a jam in that state.␊ |
6327 | ␉ */␊ |
6328 | ␉b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;␊ |
6329 | ␉b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;␊ |
6330 | ␊ |
6331 | ␉b->yy_buf_pos = &b->yy_ch_buf[0];␊ |
6332 | ␊ |
6333 | ␉b->yy_at_bol = 1;␊ |
6334 | ␉b->yy_buffer_status = YY_BUFFER_NEW;␊ |
6335 | ␊ |
6336 | ␉if ( b == YY_CURRENT_BUFFER )␊ |
6337 | ␉␉preYY_load_buffer_state( );␊ |
6338 | }␊ |
6339 | ␊ |
6340 | /** Pushes the new state onto the stack. The new state becomes␊ |
6341 | * the current state. This function will allocate the stack␊ |
6342 | * if necessary.␊ |
6343 | * @param new_buffer The new state.␊ |
6344 | * ␊ |
6345 | */␊ |
6346 | void preYYpush_buffer_state (YY_BUFFER_STATE new_buffer )␊ |
6347 | {␊ |
6348 | ␉if (new_buffer == NULL)␊ |
6349 | ␉␉return;␊ |
6350 | ␊ |
6351 | ␉preYYensure_buffer_stack();␊ |
6352 | ␊ |
6353 | ␉/* This block is copied from preYY_switch_to_buffer. */␊ |
6354 | ␉if ( YY_CURRENT_BUFFER )␊ |
6355 | ␉␉{␊ |
6356 | ␉␉/* Flush out information for old buffer. */␊ |
6357 | ␉␉*(yy_c_buf_p) = (yy_hold_char);␊ |
6358 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);␊ |
6359 | ␉␉YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);␊ |
6360 | ␉␉}␊ |
6361 | ␊ |
6362 | ␉/* Only push if top exists. Otherwise, replace top. */␊ |
6363 | ␉if (YY_CURRENT_BUFFER)␊ |
6364 | ␉␉(yy_buffer_stack_top)++;␊ |
6365 | ␉YY_CURRENT_BUFFER_LVALUE = new_buffer;␊ |
6366 | ␊ |
6367 | ␉/* copied from preYY_switch_to_buffer. */␊ |
6368 | ␉preYY_load_buffer_state( );␊ |
6369 | ␉(yy_did_buffer_switch_on_eof) = 1;␊ |
6370 | }␊ |
6371 | ␊ |
6372 | /** Removes and deletes the top of the stack, if present.␊ |
6373 | * The next element becomes the new top.␊ |
6374 | * ␊ |
6375 | */␊ |
6376 | void preYYpop_buffer_state (void)␊ |
6377 | {␊ |
6378 | ␉if (!YY_CURRENT_BUFFER)␊ |
6379 | ␉␉return;␊ |
6380 | ␊ |
6381 | ␉preYY_delete_buffer(YY_CURRENT_BUFFER );␊ |
6382 | ␉YY_CURRENT_BUFFER_LVALUE = NULL;␊ |
6383 | ␉if ((yy_buffer_stack_top) > 0)␊ |
6384 | ␉␉--(yy_buffer_stack_top);␊ |
6385 | ␊ |
6386 | ␉if (YY_CURRENT_BUFFER) {␊ |
6387 | ␉␉preYY_load_buffer_state( );␊ |
6388 | ␉␉(yy_did_buffer_switch_on_eof) = 1;␊ |
6389 | ␉}␊ |
6390 | }␊ |
6391 | ␊ |
6392 | /* Allocates the stack if it does not exist.␊ |
6393 | * Guarantees space for at least one push.␊ |
6394 | */␊ |
6395 | static void preYYensure_buffer_stack (void)␊ |
6396 | {␊ |
6397 | ␉yy_size_t num_to_alloc;␊ |
6398 | ␊ |
6399 | ␉if (!(yy_buffer_stack)) {␊ |
6400 | ␊ |
6401 | ␉␉/* First allocation is just for 2 elements, since we don't know if this␊ |
6402 | ␉␉ * scanner will even need a stack. We use 2 instead of 1 to avoid an␊ |
6403 | ␉␉ * immediate realloc on the next call.␊ |
6404 | */␊ |
6405 | ␉␉num_to_alloc = 1;␊ |
6406 | ␉␉(yy_buffer_stack) = (struct yy_buffer_state**)preYYalloc␊ |
6407 | ␉␉␉␉␉␉␉␉(num_to_alloc * sizeof(struct yy_buffer_state*)␊ |
6408 | ␉␉␉␉␉␉␉␉);␊ |
6409 | ␉␉if ( ! (yy_buffer_stack) )␊ |
6410 | ␉␉␉YY_FATAL_ERROR( "out of dynamic memory in preYYensure_buffer_stack()" );␊ |
6411 | ␉␉␉␉␉␉␉␉ ␊ |
6412 | ␉␉memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));␊ |
6413 | ␉␉␉␉␊ |
6414 | ␉␉(yy_buffer_stack_max) = num_to_alloc;␊ |
6415 | ␉␉(yy_buffer_stack_top) = 0;␊ |
6416 | ␉␉return;␊ |
6417 | ␉}␊ |
6418 | ␊ |
6419 | ␉if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){␊ |
6420 | ␊ |
6421 | ␉␉/* Increase the buffer to prepare for a possible push. */␊ |
6422 | ␉␉int grow_size = 8 /* arbitrary grow size */;␊ |
6423 | ␊ |
6424 | ␉␉num_to_alloc = (yy_buffer_stack_max) + grow_size;␊ |
6425 | ␉␉(yy_buffer_stack) = (struct yy_buffer_state**)preYYrealloc␊ |
6426 | ␉␉␉␉␉␉␉␉((yy_buffer_stack),␊ |
6427 | ␉␉␉␉␉␉␉␉num_to_alloc * sizeof(struct yy_buffer_state*)␊ |
6428 | ␉␉␉␉␉␉␉␉);␊ |
6429 | ␉␉if ( ! (yy_buffer_stack) )␊ |
6430 | ␉␉␉YY_FATAL_ERROR( "out of dynamic memory in preYYensure_buffer_stack()" );␊ |
6431 | ␊ |
6432 | ␉␉/* zero only the new slots.*/␊ |
6433 | ␉␉memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));␊ |
6434 | ␉␉(yy_buffer_stack_max) = num_to_alloc;␊ |
6435 | ␉}␊ |
6436 | }␊ |
6437 | ␊ |
6438 | /** Setup the input buffer state to scan directly from a user-specified character buffer.␊ |
6439 | * @param base the character buffer␊ |
6440 | * @param size the size in bytes of the character buffer␊ |
6441 | * ␊ |
6442 | * @return the newly allocated buffer state object. ␊ |
6443 | */␊ |
6444 | YY_BUFFER_STATE preYY_scan_buffer (char * base, yy_size_t size )␊ |
6445 | {␊ |
6446 | ␉YY_BUFFER_STATE b;␊ |
6447 | ␊ |
6448 | ␉if ( size < 2 ||␊ |
6449 | ␉ base[size-2] != YY_END_OF_BUFFER_CHAR ||␊ |
6450 | ␉ base[size-1] != YY_END_OF_BUFFER_CHAR )␊ |
6451 | ␉␉/* They forgot to leave room for the EOB's. */␊ |
6452 | ␉␉return 0;␊ |
6453 | ␊ |
6454 | ␉b = (YY_BUFFER_STATE) preYYalloc(sizeof( struct yy_buffer_state ) );␊ |
6455 | ␉if ( ! b )␊ |
6456 | ␉␉YY_FATAL_ERROR( "out of dynamic memory in preYY_scan_buffer()" );␊ |
6457 | ␊ |
6458 | ␉b->yy_buf_size = size - 2;␉/* "- 2" to take care of EOB's */␊ |
6459 | ␉b->yy_buf_pos = b->yy_ch_buf = base;␊ |
6460 | ␉b->yy_is_our_buffer = 0;␊ |
6461 | ␉b->yy_input_file = 0;␊ |
6462 | ␉b->yy_n_chars = b->yy_buf_size;␊ |
6463 | ␉b->yy_is_interactive = 0;␊ |
6464 | ␉b->yy_at_bol = 1;␊ |
6465 | ␉b->yy_fill_buffer = 0;␊ |
6466 | ␉b->yy_buffer_status = YY_BUFFER_NEW;␊ |
6467 | ␊ |
6468 | ␉preYY_switch_to_buffer(b );␊ |
6469 | ␊ |
6470 | ␉return b;␊ |
6471 | }␊ |
6472 | ␊ |
6473 | /** Setup the input buffer state to scan a string. The next call to preYYlex() will␊ |
6474 | * scan from a @e copy of @a str.␊ |
6475 | * @param yystr a NUL-terminated string to scan␊ |
6476 | * ␊ |
6477 | * @return the newly allocated buffer state object.␊ |
6478 | * @note If you want to scan bytes that may contain NUL values, then use␊ |
6479 | * preYY_scan_bytes() instead.␊ |
6480 | */␊ |
6481 | YY_BUFFER_STATE preYY_scan_string (yyconst char * yystr )␊ |
6482 | {␊ |
6483 | ␊ |
6484 | ␉return preYY_scan_bytes(yystr,strlen(yystr) );␊ |
6485 | }␊ |
6486 | ␊ |
6487 | /** Setup the input buffer state to scan the given bytes. The next call to preYYlex() will␊ |
6488 | * scan from a @e copy of @a bytes.␊ |
6489 | * @param bytes the byte buffer to scan␊ |
6490 | * @param len the number of bytes in the buffer pointed to by @a bytes.␊ |
6491 | * ␊ |
6492 | * @return the newly allocated buffer state object.␊ |
6493 | */␊ |
6494 | YY_BUFFER_STATE preYY_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len )␊ |
6495 | {␊ |
6496 | ␉YY_BUFFER_STATE b;␊ |
6497 | ␉char *buf;␊ |
6498 | ␉yy_size_t n, i;␊ |
6499 | ␊ |
6500 | ␉/* Get memory for full buffer, including space for trailing EOB's. */␊ |
6501 | ␉n = _yybytes_len + 2;␊ |
6502 | ␉buf = (char *) preYYalloc(n );␊ |
6503 | ␉if ( ! buf )␊ |
6504 | ␉␉YY_FATAL_ERROR( "out of dynamic memory in preYY_scan_bytes()" );␊ |
6505 | ␊ |
6506 | ␉for ( i = 0; i < _yybytes_len; ++i )␊ |
6507 | ␉␉buf[i] = yybytes[i];␊ |
6508 | ␊ |
6509 | ␉buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;␊ |
6510 | ␊ |
6511 | ␉b = preYY_scan_buffer(buf,n );␊ |
6512 | ␉if ( ! b )␊ |
6513 | ␉␉YY_FATAL_ERROR( "bad buffer in preYY_scan_bytes()" );␊ |
6514 | ␊ |
6515 | ␉/* It's okay to grow etc. this buffer, and we should throw it␊ |
6516 | ␉ * away when we're done.␊ |
6517 | ␉ */␊ |
6518 | ␉b->yy_is_our_buffer = 1;␊ |
6519 | ␊ |
6520 | ␉return b;␊ |
6521 | }␊ |
6522 | ␊ |
6523 | #ifndef YY_EXIT_FAILURE␊ |
6524 | #define YY_EXIT_FAILURE 2␊ |
6525 | #endif␊ |
6526 | ␊ |
6527 | static void yy_fatal_error (yyconst char* msg )␊ |
6528 | {␊ |
6529 | ␉(void) fprintf( stderr, "%s\n", msg );␊ |
6530 | ␉exit( YY_EXIT_FAILURE );␊ |
6531 | }␊ |
6532 | ␊ |
6533 | /* Redefine yyless() so it works in section 3 code. */␊ |
6534 | ␊ |
6535 | #undef yyless␊ |
6536 | #define yyless(n) \␊ |
6537 | ␉do \␊ |
6538 | ␉␉{ \␊ |
6539 | ␉␉/* Undo effects of setting up preYYtext. */ \␊ |
6540 | int yyless_macro_arg = (n); \␊ |
6541 | YY_LESS_LINENO(yyless_macro_arg);\␊ |
6542 | ␉␉preYYtext[preYYleng] = (yy_hold_char); \␊ |
6543 | ␉␉(yy_c_buf_p) = preYYtext + yyless_macro_arg; \␊ |
6544 | ␉␉(yy_hold_char) = *(yy_c_buf_p); \␊ |
6545 | ␉␉*(yy_c_buf_p) = '\0'; \␊ |
6546 | ␉␉preYYleng = yyless_macro_arg; \␊ |
6547 | ␉␉} \␊ |
6548 | ␉while ( 0 )␊ |
6549 | ␊ |
6550 | /* Accessor methods (get/set functions) to struct members. */␊ |
6551 | ␊ |
6552 | /** Get the current line number.␊ |
6553 | * ␊ |
6554 | */␊ |
6555 | int preYYget_lineno (void)␊ |
6556 | {␊ |
6557 | ␊ |
6558 | return preYYlineno;␊ |
6559 | }␊ |
6560 | ␊ |
6561 | /** Get the input stream.␊ |
6562 | * ␊ |
6563 | */␊ |
6564 | FILE *preYYget_in (void)␊ |
6565 | {␊ |
6566 | return preYYin;␊ |
6567 | }␊ |
6568 | ␊ |
6569 | /** Get the output stream.␊ |
6570 | * ␊ |
6571 | */␊ |
6572 | FILE *preYYget_out (void)␊ |
6573 | {␊ |
6574 | return preYYout;␊ |
6575 | }␊ |
6576 | ␊ |
6577 | /** Get the length of the current token.␊ |
6578 | * ␊ |
6579 | */␊ |
6580 | yy_size_t preYYget_leng (void)␊ |
6581 | {␊ |
6582 | return preYYleng;␊ |
6583 | }␊ |
6584 | ␊ |
6585 | /** Get the current token.␊ |
6586 | * ␊ |
6587 | */␊ |
6588 | ␊ |
6589 | char *preYYget_text (void)␊ |
6590 | {␊ |
6591 | return preYYtext;␊ |
6592 | }␊ |
6593 | ␊ |
6594 | /** Set the current line number.␊ |
6595 | * @param line_number␊ |
6596 | * ␊ |
6597 | */␊ |
6598 | void preYYset_lineno (int line_number )␊ |
6599 | {␊ |
6600 | ␊ |
6601 | preYYlineno = line_number;␊ |
6602 | }␊ |
6603 | ␊ |
6604 | /** Set the input stream. This does not discard the current␊ |
6605 | * input buffer.␊ |
6606 | * @param in_str A readable stream.␊ |
6607 | * ␊ |
6608 | * @see preYY_switch_to_buffer␊ |
6609 | */␊ |
6610 | void preYYset_in (FILE * in_str )␊ |
6611 | {␊ |
6612 | preYYin = in_str ;␊ |
6613 | }␊ |
6614 | ␊ |
6615 | void preYYset_out (FILE * out_str )␊ |
6616 | {␊ |
6617 | preYYout = out_str ;␊ |
6618 | }␊ |
6619 | ␊ |
6620 | int preYYget_debug (void)␊ |
6621 | {␊ |
6622 | return preYY_flex_debug;␊ |
6623 | }␊ |
6624 | ␊ |
6625 | void preYYset_debug (int bdebug )␊ |
6626 | {␊ |
6627 | preYY_flex_debug = bdebug ;␊ |
6628 | }␊ |
6629 | ␊ |
6630 | static int yy_init_globals (void)␊ |
6631 | {␊ |
6632 | /* Initialization is the same as for the non-reentrant scanner.␊ |
6633 | * This function is called from preYYlex_destroy(), so don't allocate here.␊ |
6634 | */␊ |
6635 | ␊ |
6636 | (yy_buffer_stack) = 0;␊ |
6637 | (yy_buffer_stack_top) = 0;␊ |
6638 | (yy_buffer_stack_max) = 0;␊ |
6639 | (yy_c_buf_p) = (char *) 0;␊ |
6640 | (yy_init) = 0;␊ |
6641 | (yy_start) = 0;␊ |
6642 | ␊ |
6643 | (yy_state_buf) = 0;␊ |
6644 | (yy_state_ptr) = 0;␊ |
6645 | (yy_full_match) = 0;␊ |
6646 | (yy_lp) = 0;␊ |
6647 | ␊ |
6648 | /* Defined in main.c */␊ |
6649 | #ifdef YY_STDINIT␊ |
6650 | preYYin = stdin;␊ |
6651 | preYYout = stdout;␊ |
6652 | #else␊ |
6653 | preYYin = (FILE *) 0;␊ |
6654 | preYYout = (FILE *) 0;␊ |
6655 | #endif␊ |
6656 | ␊ |
6657 | /* For future reference: Set errno on error, since we are called by␊ |
6658 | * preYYlex_init()␊ |
6659 | */␊ |
6660 | return 0;␊ |
6661 | }␊ |
6662 | ␊ |
6663 | /* preYYlex_destroy is for both reentrant and non-reentrant scanners. */␊ |
6664 | int preYYlex_destroy (void)␊ |
6665 | {␊ |
6666 | ␊ |
6667 | /* Pop the buffer stack, destroying each element. */␊ |
6668 | ␉while(YY_CURRENT_BUFFER){␊ |
6669 | ␉␉preYY_delete_buffer(YY_CURRENT_BUFFER );␊ |
6670 | ␉␉YY_CURRENT_BUFFER_LVALUE = NULL;␊ |
6671 | ␉␉preYYpop_buffer_state();␊ |
6672 | ␉}␊ |
6673 | ␊ |
6674 | ␉/* Destroy the stack itself. */␊ |
6675 | ␉preYYfree((yy_buffer_stack) );␊ |
6676 | ␉(yy_buffer_stack) = NULL;␊ |
6677 | ␊ |
6678 | preYYfree ( (yy_state_buf) );␊ |
6679 | (yy_state_buf) = NULL;␊ |
6680 | ␊ |
6681 | /* Reset the globals. This is important in a non-reentrant scanner so the next time␊ |
6682 | * preYYlex() is called, initialization will occur. */␊ |
6683 | yy_init_globals( );␊ |
6684 | ␊ |
6685 | return 0;␊ |
6686 | }␊ |
6687 | ␊ |
6688 | /*␊ |
6689 | * Internal utility routines.␊ |
6690 | */␊ |
6691 | ␊ |
6692 | #ifndef yytext_ptr␊ |
6693 | static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )␊ |
6694 | {␊ |
6695 | ␉register int i;␊ |
6696 | ␉for ( i = 0; i < n; ++i )␊ |
6697 | ␉␉s1[i] = s2[i];␊ |
6698 | }␊ |
6699 | #endif␊ |
6700 | ␊ |
6701 | #ifdef YY_NEED_STRLEN␊ |
6702 | static int yy_flex_strlen (yyconst char * s )␊ |
6703 | {␊ |
6704 | ␉register int n;␊ |
6705 | ␉for ( n = 0; s[n]; ++n )␊ |
6706 | ␉␉;␊ |
6707 | ␊ |
6708 | ␉return n;␊ |
6709 | }␊ |
6710 | #endif␊ |
6711 | ␊ |
6712 | void *preYYalloc (yy_size_t size )␊ |
6713 | {␊ |
6714 | ␉return (void *) malloc( size );␊ |
6715 | }␊ |
6716 | ␊ |
6717 | void *preYYrealloc (void * ptr, yy_size_t size )␊ |
6718 | {␊ |
6719 | ␉/* The cast to (char *) in the following accommodates both␊ |
6720 | ␉ * implementations that use char* generic pointers, and those␊ |
6721 | ␉ * that use void* generic pointers. It works with the latter␊ |
6722 | ␉ * because both ANSI C and C++ allow castless assignment from␊ |
6723 | ␉ * any pointer type to void*, and deal with argument conversions␊ |
6724 | ␉ * as though doing an assignment.␊ |
6725 | ␉ */␊ |
6726 | ␉return (void *) realloc( (char *) ptr, size );␊ |
6727 | }␊ |
6728 | ␊ |
6729 | void preYYfree (void * ptr )␊ |
6730 | {␊ |
6731 | ␉free( (char *) ptr );␉/* see preYYrealloc() for (char *) cast */␊ |
6732 | }␊ |
6733 | ␊ |
6734 | #define YYTABLES_NAME "yytables"␊ |
6735 | ␊ |
6736 | #line 2412 "pre.l"␊ |
6737 | ␊ |
6738 | ␊ |
6739 | ␊ |
6740 | /*@ ----------------------------------------------------------------------------␊ |
6741 | */␊ |
6742 | ␊ |
6743 | static int getNextChar(const QCString &expr,QCString *rest,uint &pos)␊ |
6744 | {␊ |
6745 | //printf("getNextChar(%s,%s,%d)\n",expr.data(),rest ? rest->data() : 0,pos);␊ |
6746 | if (pos<expr.length())␊ |
6747 | {␊ |
6748 | //printf("%c=expr()\n",expr.at(pos));␊ |
6749 | return expr.at(pos++);␊ |
6750 | }␊ |
6751 | else if (rest && !rest->isEmpty())␊ |
6752 | {␊ |
6753 | int cc=rest->at(0);␊ |
6754 | *rest=rest->right(rest->length()-1);␊ |
6755 | //printf("%c=rest\n",cc);␊ |
6756 | return cc;␊ |
6757 | }␊ |
6758 | else␊ |
6759 | {␊ |
6760 | int cc=yyinput();␊ |
6761 | //printf("%c=yyinput()\n",cc);␊ |
6762 | return cc;␊ |
6763 | }␊ |
6764 | }␊ |
6765 | ␊ |
6766 | static int getCurrentChar(const QCString &expr,QCString *rest,uint pos)␊ |
6767 | {␊ |
6768 | //printf("getCurrentChar(%s,%s,%d)\n",expr.data(),rest ? rest->data() : 0,pos);␊ |
6769 | if (pos<expr.length())␊ |
6770 | {␊ |
6771 | //printf("%c=expr()\n",expr.at(pos));␊ |
6772 | return expr.at(pos);␊ |
6773 | }␊ |
6774 | else if (rest && !rest->isEmpty())␊ |
6775 | {␊ |
6776 | int cc=rest->at(0);␊ |
6777 | //printf("%c=rest\n",cc);␊ |
6778 | return cc;␊ |
6779 | }␊ |
6780 | else␊ |
6781 | {␊ |
6782 | int cc=yyinput();␊ |
6783 | returnCharToStream(cc);␊ |
6784 | //unput((char)cc);␊ |
6785 | //printf("%c=yyinput()\n",cc);␊ |
6786 | return cc;␊ |
6787 | }␊ |
6788 | }␊ |
6789 | ␊ |
6790 | static void unputChar(const QCString &expr,QCString *rest,uint &pos,char c)␊ |
6791 | {␊ |
6792 | //printf("unputChar(%s,%s,%d,%c)\n",expr.data(),rest ? rest->data() : 0,pos,c);␊ |
6793 | if (pos<expr.length())␊ |
6794 | {␊ |
6795 | pos++;␊ |
6796 | }␊ |
6797 | else if (rest)␊ |
6798 | {␊ |
6799 | //printf("Prepending to rest!\n");␊ |
6800 | char cs[2];cs[0]=c;cs[1]='\0';␊ |
6801 | rest->prepend(cs);␊ |
6802 | }␊ |
6803 | else␊ |
6804 | {␊ |
6805 | //unput(c);␊ |
6806 | returnCharToStream(c);␊ |
6807 | }␊ |
6808 | //printf("result: unputChar(%s,%s,%d,%c)\n",expr.data(),rest ? rest->data() : 0,pos,c);␊ |
6809 | }␊ |
6810 | ␊ |
6811 | void addSearchDir(const char *dir)␊ |
6812 | {␊ |
6813 | QFileInfo fi(dir);␊ |
6814 | if (fi.isDir()) g_pathList->append(fi.absFilePath());␊ |
6815 | } ␊ |
6816 | ␊ |
6817 | void initPreprocessor()␊ |
6818 | {␊ |
6819 | g_pathList = new QStrList;␊ |
6820 | addSearchDir(".");␊ |
6821 | g_expandedDict = new DefineDict(17);␊ |
6822 | }␊ |
6823 | ␊ |
6824 | void cleanUpPreprocessor()␊ |
6825 | {␊ |
6826 | delete g_expandedDict; g_expandedDict=0;␊ |
6827 | delete g_pathList; g_pathList=0;␊ |
6828 | }␊ |
6829 | ␊ |
6830 | ␊ |
6831 | void preprocessFile(const char *fileName,BufStr &input,BufStr &output)␊ |
6832 | {␊ |
6833 | uint orgOffset=output.curPos();␊ |
6834 | //printf("##########################\n%s\n####################\n",␊ |
6835 | // input.data());␊ |
6836 | ␊ |
6837 | g_macroExpansion = Config_getBool("MACRO_EXPANSION");␊ |
6838 | g_expandOnlyPredef = Config_getBool("EXPAND_ONLY_PREDEF");␊ |
6839 | g_curlyCount=0;␊ |
6840 | g_nospaces=FALSE;␊ |
6841 | g_inputBuf=&input;␊ |
6842 | g_inputBufPos=0;␊ |
6843 | g_outputBuf=&output;␊ |
6844 | g_includeStack.setAutoDelete(TRUE);␊ |
6845 | g_includeStack.clear();␊ |
6846 | g_expandedDict->setAutoDelete(FALSE);␊ |
6847 | g_expandedDict->clear();␊ |
6848 | g_condStack.clear();␊ |
6849 | g_condStack.setAutoDelete(TRUE);␊ |
6850 | g_fileDefineDict->clear();␊ |
6851 | ␊ |
6852 | static bool firstTime=TRUE;␊ |
6853 | if (firstTime)␊ |
6854 | {␊ |
6855 | // add predefined macros␊ |
6856 | char *defStr;␊ |
6857 | QStrList &predefList = Config_getList("PREDEFINED");␊ |
6858 | QStrListIterator sli(predefList);␊ |
6859 | for (sli.toFirst();(defStr=sli.current());++sli)␊ |
6860 | {␊ |
6861 | QCString ds = defStr;␊ |
6862 | int i_equals=ds.find('=');␊ |
6863 | int i_obrace=ds.find('(');␊ |
6864 | int i_cbrace=ds.find(')');␊ |
6865 | bool nonRecursive = i_equals>0 && ds.at(i_equals-1)==':';␊ |
6866 | ␊ |
6867 | if (i_obrace==0) continue; // no define name␊ |
6868 | ␊ |
6869 | if (i_obrace<i_equals && i_cbrace<i_equals && ␊ |
6870 | ␉ i_obrace!=-1 && i_cbrace!=-1 && ␊ |
6871 | ␉ i_obrace<i_cbrace␊ |
6872 | ␉ ) // predefined function macro definition␊ |
6873 | {␊ |
6874 | ␉//printf("predefined function macro '%s'\n",defStr);␊ |
6875 | ␉QRegExp reId("[a-z_A-Z][a-z_A-Z0-9]*"); // regexp matching an id␊ |
6876 | ␉QDict<int> argDict(17);␊ |
6877 | ␉argDict.setAutoDelete(TRUE);␊ |
6878 | ␉int i=i_obrace+1,p,l,count=0;␊ |
6879 | ␉// gather the formal arguments in a dictionary ␊ |
6880 | ␉while (i<i_cbrace && (p=reId.match(ds,i,&l)))␊ |
6881 | ␉{␊ |
6882 | ␉ argDict.insert(ds.mid(p,l),new int(count++));␊ |
6883 | ␉ i=p+l;␊ |
6884 | ␉}␊ |
6885 | ␉// strip definition part␊ |
6886 | ␉QCString tmp=ds.right(ds.length()-i_equals-1);␊ |
6887 | ␉QCString definition;␊ |
6888 | ␉i=0;␊ |
6889 | ␉// substitute all occurrences of formal arguments by their ␊ |
6890 | ␉// corresponding markers␊ |
6891 | ␉while ((p=reId.match(tmp,i,&l))!=-1)␊ |
6892 | ␉{␊ |
6893 | ␉ if (p>i) definition+=tmp.mid(i,p-i);␊ |
6894 | ␉ int *argIndex;␊ |
6895 | ␉ if ((argIndex=argDict[tmp.mid(p,l)])!=0)␊ |
6896 | ␉ {␊ |
6897 | ␉ QCString marker;␊ |
6898 | ␉ marker.sprintf(" @%d ",*argIndex);␊ |
6899 | ␉ definition+=marker;␊ |
6900 | ␉ }␊ |
6901 | ␉ else␊ |
6902 | ␉ {␊ |
6903 | ␉ definition+=tmp.mid(p,l);␊ |
6904 | ␉ }␊ |
6905 | ␉ i=p+l;␊ |
6906 | ␉}␊ |
6907 | ␉if (i<(int)tmp.length()) definition+=tmp.mid(i,tmp.length()-i);␊ |
6908 | ␊ |
6909 | ␉// add define definition to the dictionary of defines for this file␊ |
6910 | ␉QCString dname = ds.left(i_obrace);␊ |
6911 | ␉if (!dname.isEmpty())␊ |
6912 | ␉{␊ |
6913 | ␉ Define *def = new Define;␊ |
6914 | ␉ def->name = dname;␊ |
6915 | ␉ def->definition = definition; ␊ |
6916 | ␉ def->nargs = count;␊ |
6917 | ␉ def->isPredefined = TRUE;␊ |
6918 | ␉ def->nonRecursive = nonRecursive;␊ |
6919 | ␉ def->fileDef = g_yyFileDef;␊ |
6920 | ␉ def->fileName = fileName;␊ |
6921 | ␉ g_globalDefineDict->insert(def->name,def);␊ |
6922 | ␉}␊ |
6923 | ␊ |
6924 | ␉//printf("#define `%s' `%s' #nargs=%d\n",␊ |
6925 | ␉// def->name.data(),def->definition.data(),def->nargs);␊ |
6926 | }␊ |
6927 | else if ((i_obrace==-1 || i_obrace>i_equals) &&␊ |
6928 | ␉ (i_cbrace==-1 || i_cbrace>i_equals) &&␊ |
6929 | ␉ !ds.isEmpty() && (int)ds.length()>i_equals␊ |
6930 | ␉ ) // predefined non-function macro definition␊ |
6931 | {␊ |
6932 | ␉//printf("predefined normal macro '%s'\n",defStr);␊ |
6933 | ␉Define *def = new Define;␊ |
6934 | ␉if (i_equals==-1) // simple define without argument␊ |
6935 | ␉{␊ |
6936 | ␉ def->name = ds;␊ |
6937 | ␉ def->definition = "1"; // substitute occurrences by 1 (true)␊ |
6938 | ␉}␊ |
6939 | ␉else // simple define with argument␊ |
6940 | ␉{␊ |
6941 | ␉ int ine=i_equals - (nonRecursive ? 1 : 0);␊ |
6942 | ␉ def->name = ds.left(ine);␊ |
6943 | ␉ def->definition = ds.right(ds.length()-i_equals-1);␊ |
6944 | ␉}␊ |
6945 | ␉if (!def->name.isEmpty())␊ |
6946 | ␉{␊ |
6947 | ␉ def->nargs = -1;␊ |
6948 | ␉ def->isPredefined = TRUE;␊ |
6949 | ␉ def->nonRecursive = nonRecursive;␊ |
6950 | ␉ def->fileDef = g_yyFileDef;␊ |
6951 | ␉ def->fileName = fileName;␊ |
6952 | ␉ g_globalDefineDict->insert(def->name,def);␊ |
6953 | ␉}␊ |
6954 | ␉else␊ |
6955 | ␉{␊ |
6956 | ␉ delete def;␊ |
6957 | ␉}␊ |
6958 | ␊ |
6959 | ␉//printf("#define `%s' `%s' #nargs=%d\n",␊ |
6960 | ␉// def->name.data(),def->definition.data(),def->nargs);␊ |
6961 | }␊ |
6962 | }␊ |
6963 | //firstTime=FALSE;␊ |
6964 | }␊ |
6965 | ␊ |
6966 | g_yyLineNr = 1;␊ |
6967 | g_level = 0;␊ |
6968 | g_ifcount = 0;␊ |
6969 | setFileName(fileName);␊ |
6970 | g_inputFileDef = g_yyFileDef;␊ |
6971 | ␊ |
6972 | BEGIN( Start );␊ |
6973 | ␊ |
6974 | g_expectGuard = guessSection(fileName)==Entry::HEADER_SEC;␊ |
6975 | g_lastGuardName.resize(0);␊ |
6976 | g_guardExpr.resize(0);␊ |
6977 | ␊ |
6978 | preYYlex();␊ |
6979 | g_lexInit=TRUE;␊ |
6980 | ␊ |
6981 | // make sure we don't extend a \cond with missing \endcond over multiple files (see bug 624829)␊ |
6982 | forceEndCondSection();␊ |
6983 | ␊ |
6984 | // remove locally defined macros so they can be redefined in another source file␊ |
6985 | if (g_fileDefineDict->count()>0)␊ |
6986 | {␊ |
6987 | QDictIterator<Define> di(*g_fileDefineDict);␊ |
6988 | Define *d;␊ |
6989 | for (di.toFirst();(d=di.current());++di)␊ |
6990 | {␊ |
6991 | g_globalDefineDict->remove(di.currentKey());␊ |
6992 | }␊ |
6993 | g_fileDefineDict->clear();␊ |
6994 | }␊ |
6995 | ␊ |
6996 | if (Debug::isFlagSet(Debug::Preprocessor))␊ |
6997 | {␊ |
6998 | char *orgPos=output.data()+orgOffset;␊ |
6999 | char *newPos=output.data()+output.curPos();␊ |
7000 | msg("Preprocessor output (size: %d bytes):\n",newPos-orgPos);␊ |
7001 | int line=1;␊ |
7002 | msg("---------\n00001 ");␊ |
7003 | while (orgPos<newPos) ␊ |
7004 | {␊ |
7005 | putchar(*orgPos);␊ |
7006 | if (*orgPos=='\n') printf("%05d ",++line);␊ |
7007 | orgPos++;␊ |
7008 | }␊ |
7009 | msg("\n---------\n");␊ |
7010 | }␊ |
7011 | }␊ |
7012 | ␊ |
7013 | void preFreeScanner()␊ |
7014 | {␊ |
7015 | #if defined(YY_FLEX_SUBMINOR_VERSION) ␊ |
7016 | if (g_lexInit)␊ |
7017 | {␊ |
7018 | preYYlex_destroy();␊ |
7019 | }␊ |
7020 | #endif␊ |
7021 | }␊ |
7022 | ␊ |
7023 | #if !defined(YY_FLEX_SUBMINOR_VERSION) ␊ |
7024 | extern "C" { // some bogus code to keep the compiler happy␊ |
7025 | // int preYYwrap() { return 1 ; }␊ |
7026 | void preYYdummy() { yy_flex_realloc(0,0); } ␊ |
7027 | }␊ |
7028 | #endif␊ |
7029 | ␊ |
7030 | ␊ |
7031 |