~ubuntu-branches/ubuntu/intrepid/tcm/intrepid

« back to all changes in this revision

Viewing changes to src/sd/bv/adsedgelabel.c

  • Committer: Bazaar Package Importer
  • Author(s): Otavio Salvador
  • Date: 2003-07-03 20:08:21 UTC
  • Revision ID: james.westby@ubuntu.com-20030703200821-se4xtqx25e5miczi
Tags: upstream-2.20
ImportĀ upstreamĀ versionĀ 2.20

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#define yy_create_buffer adsedgelabel_create_buffer
 
2
#define yy_delete_buffer adsedgelabel_delete_buffer
 
3
#define yy_scan_buffer adsedgelabel_scan_buffer
 
4
#define yy_scan_string adsedgelabel_scan_string
 
5
#define yy_scan_bytes adsedgelabel_scan_bytes
 
6
#define yy_flex_debug adsedgelabel_flex_debug
 
7
#define yy_init_buffer adsedgelabel_init_buffer
 
8
#define yy_flush_buffer adsedgelabel_flush_buffer
 
9
#define yy_load_buffer_state adsedgelabel_load_buffer_state
 
10
#define yy_switch_to_buffer adsedgelabel_switch_to_buffer
 
11
#define yyin adsedgelabelin
 
12
#define yyleng adsedgelabelleng
 
13
#define yylex adsedgelabellex
 
14
#define yyout adsedgelabelout
 
15
#define yyrestart adsedgelabelrestart
 
16
#define yytext adsedgelabeltext
 
17
 
 
18
#line 19 "adsedgelabel.c"
 
19
/* A lexical scanner generated by flex */
 
20
 
 
21
/* Scanner skeleton version:
 
22
 * $Header: /home/daffy/u0/vern/flex/RCS/flex.skl,v 2.91 96/09/10 16:58:48 vern Exp $
 
23
 */
 
24
 
 
25
#define FLEX_SCANNER
 
26
#define YY_FLEX_MAJOR_VERSION 2
 
27
#define YY_FLEX_MINOR_VERSION 5
 
28
 
 
29
#include <stdio.h>
 
30
#include <unistd.h>
 
31
 
 
32
 
 
33
/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
 
34
#ifdef c_plusplus
 
35
#ifndef __cplusplus
 
36
#define __cplusplus
 
37
#endif
 
38
#endif
 
39
 
 
40
 
 
41
#ifdef __cplusplus
 
42
 
 
43
#include <stdlib.h>
 
44
 
 
45
/* Use prototypes in function declarations. */
 
46
#define YY_USE_PROTOS
 
47
 
 
48
/* The "const" storage-class-modifier is valid. */
 
49
#define YY_USE_CONST
 
50
 
 
51
#else   /* ! __cplusplus */
 
52
 
 
53
#if __STDC__
 
54
 
 
55
#define YY_USE_PROTOS
 
56
#define YY_USE_CONST
 
57
 
 
58
#endif  /* __STDC__ */
 
59
#endif  /* ! __cplusplus */
 
60
 
 
61
#ifdef __TURBOC__
 
62
 #pragma warn -rch
 
63
 #pragma warn -use
 
64
#include <io.h>
 
65
#include <stdlib.h>
 
66
#define YY_USE_CONST
 
67
#define YY_USE_PROTOS
 
68
#endif
 
69
 
 
70
#ifdef YY_USE_CONST
 
71
#define yyconst const
 
72
#else
 
73
#define yyconst
 
74
#endif
 
75
 
 
76
 
 
77
#ifdef YY_USE_PROTOS
 
78
#define YY_PROTO(proto) proto
 
79
#else
 
80
#define YY_PROTO(proto) ()
 
81
#endif
 
82
 
 
83
/* Returned upon end-of-file. */
 
84
#define YY_NULL 0
 
85
 
 
86
/* Promotes a possibly negative, possibly signed char to an unsigned
 
87
 * integer for use as an array index.  If the signed char is negative,
 
88
 * we want to instead treat it as an 8-bit unsigned char, hence the
 
89
 * double cast.
 
90
 */
 
91
#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
 
92
 
 
93
/* Enter a start condition.  This macro really ought to take a parameter,
 
94
 * but we do it the disgusting crufty way forced on us by the ()-less
 
95
 * definition of BEGIN.
 
96
 */
 
97
#define BEGIN yy_start = 1 + 2 *
 
98
 
 
99
/* Translate the current start state into a value that can be later handed
 
100
 * to BEGIN to return to the state.  The YYSTATE alias is for lex
 
101
 * compatibility.
 
102
 */
 
103
#define YY_START ((yy_start - 1) / 2)
 
104
#define YYSTATE YY_START
 
105
 
 
106
/* Action number for EOF rule of a given start state. */
 
107
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
 
108
 
 
109
/* Special action meaning "start processing a new file". */
 
110
#define YY_NEW_FILE yyrestart( yyin )
 
111
 
 
112
#define YY_END_OF_BUFFER_CHAR 0
 
113
 
 
114
/* Size of default input buffer. */
 
115
#define YY_BUF_SIZE 16384
 
116
 
 
117
typedef struct yy_buffer_state *YY_BUFFER_STATE;
 
118
 
 
119
extern int yyleng;
 
120
extern FILE *yyin, *yyout;
 
121
 
 
122
#define EOB_ACT_CONTINUE_SCAN 0
 
123
#define EOB_ACT_END_OF_FILE 1
 
124
#define EOB_ACT_LAST_MATCH 2
 
125
 
 
126
/* The funky do-while in the following #define is used to turn the definition
 
127
 * int a single C statement (which needs a semi-colon terminator).  This
 
128
 * avoids problems with code like:
 
129
 *
 
130
 *      if ( condition_holds )
 
131
 *              yyless( 5 );
 
132
 *      else
 
133
 *              do_something_else();
 
134
 *
 
135
 * Prior to using the do-while the compiler would get upset at the
 
136
 * "else" because it interpreted the "if" statement as being all
 
137
 * done when it reached the ';' after the yyless() call.
 
138
 */
 
139
 
 
140
/* Return all but the first 'n' matched characters back to the input stream. */
 
141
 
 
142
#define yyless(n) \
 
143
        do \
 
144
                { \
 
145
                /* Undo effects of setting up yytext. */ \
 
146
                *yy_cp = yy_hold_char; \
 
147
                YY_RESTORE_YY_MORE_OFFSET \
 
148
                yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
 
149
                YY_DO_BEFORE_ACTION; /* set up yytext again */ \
 
150
                } \
 
151
        while ( 0 )
 
152
 
 
153
#define unput(c) yyunput( c, yytext_ptr )
 
154
 
 
155
/* The following is because we cannot portably get our hands on size_t
 
156
 * (without autoconf's help, which isn't available because we want
 
157
 * flex-generated scanners to compile on their own).
 
158
 */
 
159
typedef unsigned int yy_size_t;
 
160
 
 
161
 
 
162
struct yy_buffer_state
 
163
        {
 
164
        FILE *yy_input_file;
 
165
 
 
166
        char *yy_ch_buf;                /* input buffer */
 
167
        char *yy_buf_pos;               /* current position in input buffer */
 
168
 
 
169
        /* Size of input buffer in bytes, not including room for EOB
 
170
         * characters.
 
171
         */
 
172
        yy_size_t yy_buf_size;
 
173
 
 
174
        /* Number of characters read into yy_ch_buf, not including EOB
 
175
         * characters.
 
176
         */
 
177
        int yy_n_chars;
 
178
 
 
179
        /* Whether we "own" the buffer - i.e., we know we created it,
 
180
         * and can realloc() it to grow it, and should free() it to
 
181
         * delete it.
 
182
         */
 
183
        int yy_is_our_buffer;
 
184
 
 
185
        /* Whether this is an "interactive" input source; if so, and
 
186
         * if we're using stdio for input, then we want to use getc()
 
187
         * instead of fread(), to make sure we stop fetching input after
 
188
         * each newline.
 
189
         */
 
190
        int yy_is_interactive;
 
191
 
 
192
        /* Whether we're considered to be at the beginning of a line.
 
193
         * If so, '^' rules will be active on the next match, otherwise
 
194
         * not.
 
195
         */
 
196
        int yy_at_bol;
 
197
 
 
198
        /* Whether to try to fill the input buffer when we reach the
 
199
         * end of it.
 
200
         */
 
201
        int yy_fill_buffer;
 
202
 
 
203
        int yy_buffer_status;
 
204
#define YY_BUFFER_NEW 0
 
205
#define YY_BUFFER_NORMAL 1
 
206
        /* When an EOF's been seen but there's still some text to process
 
207
         * then we mark the buffer as YY_EOF_PENDING, to indicate that we
 
208
         * shouldn't try reading from the input source any more.  We might
 
209
         * still have a bunch of tokens to match, though, because of
 
210
         * possible backing-up.
 
211
         *
 
212
         * When we actually see the EOF, we change the status to "new"
 
213
         * (via yyrestart()), so that the user can continue scanning by
 
214
         * just pointing yyin at a new input file.
 
215
         */
 
216
#define YY_BUFFER_EOF_PENDING 2
 
217
        };
 
218
 
 
219
static YY_BUFFER_STATE yy_current_buffer = 0;
 
220
 
 
221
/* We provide macros for accessing buffer states in case in the
 
222
 * future we want to put the buffer states in a more general
 
223
 * "scanner state".
 
224
 */
 
225
#define YY_CURRENT_BUFFER yy_current_buffer
 
226
 
 
227
 
 
228
/* yy_hold_char holds the character lost when yytext is formed. */
 
229
static char yy_hold_char;
 
230
 
 
231
static int yy_n_chars;          /* number of characters read into yy_ch_buf */
 
232
 
 
233
 
 
234
int yyleng;
 
235
 
 
236
/* Points to current character in buffer. */
 
237
static char *yy_c_buf_p = (char *) 0;
 
238
static int yy_init = 1;         /* whether we need to initialize */
 
239
static int yy_start = 0;        /* start state number */
 
240
 
 
241
/* Flag which is used to allow yywrap()'s to do buffer switches
 
242
 * instead of setting up a fresh yyin.  A bit of a hack ...
 
243
 */
 
244
static int yy_did_buffer_switch_on_eof;
 
245
 
 
246
void yyrestart YY_PROTO(( FILE *input_file ));
 
247
 
 
248
void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
 
249
void yy_load_buffer_state YY_PROTO(( void ));
 
250
YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
 
251
void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
 
252
void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
 
253
void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
 
254
#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
 
255
 
 
256
YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
 
257
YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
 
258
YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
 
259
 
 
260
static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
 
261
static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
 
262
static void yy_flex_free YY_PROTO(( void * ));
 
263
 
 
264
#define yy_new_buffer yy_create_buffer
 
265
 
 
266
#define yy_set_interactive(is_interactive) \
 
267
        { \
 
268
        if ( ! yy_current_buffer ) \
 
269
                yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
 
270
        yy_current_buffer->yy_is_interactive = is_interactive; \
 
271
        }
 
272
 
 
273
#define yy_set_bol(at_bol) \
 
274
        { \
 
275
        if ( ! yy_current_buffer ) \
 
276
                yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
 
277
        yy_current_buffer->yy_at_bol = at_bol; \
 
278
        }
 
279
 
 
280
#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
 
281
 
 
282
 
 
283
#define yywrap() 1
 
284
#define YY_SKIP_YYWRAP
 
285
typedef unsigned char YY_CHAR;
 
286
FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
 
287
typedef int yy_state_type;
 
288
extern char *yytext;
 
289
#define yytext_ptr yytext
 
290
 
 
291
static yy_state_type yy_get_previous_state YY_PROTO(( void ));
 
292
static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
 
293
static int yy_get_next_buffer YY_PROTO(( void ));
 
294
static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
 
295
 
 
296
/* Done after the current pattern has been matched and before the
 
297
 * corresponding action - sets up yytext.
 
298
 */
 
299
#define YY_DO_BEFORE_ACTION \
 
300
        yytext_ptr = yy_bp; \
 
301
        yyleng = (int) (yy_cp - yy_bp); \
 
302
        yy_hold_char = *yy_cp; \
 
303
        *yy_cp = '\0'; \
 
304
        yy_c_buf_p = yy_cp;
 
305
 
 
306
#define YY_NUM_RULES 40
 
307
#define YY_END_OF_BUFFER 41
 
308
static yyconst short int yy_accept[82] =
 
309
    {   0,
 
310
        0,    0,   41,   40,   39,   21,   19,   40,   16,    3,
 
311
        4,   14,   12,   13,   15,   36,   20,   10,    7,   11,
 
312
       37,   37,    1,    2,   37,   28,   37,   22,   24,   26,
 
313
       37,   37,   17,   18,   39,    8,    0,   36,    5,    9,
 
314
        6,    0,   37,   30,   37,   37,   37,   37,   37,   37,
 
315
       37,   37,   37,   38,   37,   37,   37,   37,   37,   37,
 
316
       37,   37,   37,   37,   29,   32,   37,   37,   37,   35,
 
317
       31,   34,   33,   23,   37,   37,   37,   37,   25,   27,
 
318
        0
 
319
    } ;
 
320
 
 
321
static yyconst int yy_ec[256] =
 
322
    {   0,
 
323
        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
 
324
        1,    1,    2,    1,    1,    1,    1,    1,    1,    1,
 
325
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
326
        1,    4,    5,    6,    1,    1,    1,    7,    1,    8,
 
327
        9,   10,   11,    1,   12,    1,   13,   14,   14,   14,
 
328
       14,   14,   14,   14,   14,   14,   14,   15,    1,   16,
 
329
       17,   18,    1,    1,   19,   19,   19,   19,   19,   19,
 
330
       19,   19,   20,   19,   19,   19,   19,   21,   19,   19,
 
331
       19,   19,   19,   19,   19,   19,   19,   19,   19,   19,
 
332
       22,    1,   23,    1,   24,    1,   25,   19,   26,   27,
 
333
 
 
334
       28,   29,   19,   30,   31,   19,   19,   32,   33,   34,
 
335
       35,   19,   19,   36,   37,   38,   39,   19,   40,   19,
 
336
       41,   19,    1,   42,    1,   43,    1,    1,    1,    1,
 
337
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
338
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
339
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
340
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
341
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
342
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
343
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
344
 
 
345
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
346
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
347
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
348
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
349
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
350
        1,    1,    1,    1,    1
 
351
    } ;
 
352
 
 
353
static yyconst int yy_meta[44] =
 
354
    {   0,
 
355
        1,    1,    2,    3,    1,    1,    1,    2,    2,    1,
 
356
        1,    1,    1,    3,    1,    1,    1,    1,    3,    3,
 
357
        3,    1,    1,    3,    3,    3,    3,    3,    3,    3,
 
358
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
 
359
        3,    2,    1
 
360
    } ;
 
361
 
 
362
static yyconst short int yy_base[84] =
 
363
    {   0,
 
364
        0,    0,  106,  219,   42,  219,   87,    0,  219,  219,
 
365
      219,  219,  219,   43,  219,   88,  219,   31,  219,   83,
 
366
       46,   47,  219,  219,   48,   49,   52,   54,   55,   57,
 
367
       56,   58,  219,  219,   63,  219,   63,   52,  219,  219,
 
368
      219,   59,   86,   87,   89,   90,   91,   93,   92,   94,
 
369
       97,   95,  101,   58,  118,   99,  120,  129,  131,  133,
 
370
      134,  135,  137,  136,  143,  145,  150,  152,  160,  162,
 
371
      169,  171,  173,  174,  175,  177,  176,  178,  181,  184,
 
372
      219,  215,   54
 
373
    } ;
 
374
 
 
375
static yyconst short int yy_def[84] =
 
376
    {   0,
 
377
       81,    1,   81,   81,   81,   81,   81,   82,   81,   81,
 
378
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
379
       83,   83,   81,   81,   83,   83,   83,   83,   83,   83,
 
380
       83,   83,   81,   81,   81,   81,   82,   81,   81,   81,
 
381
       81,   83,   83,   83,   83,   83,   83,   83,   83,   83,
 
382
       83,   83,   83,   82,   83,   83,   83,   83,   83,   83,
 
383
       83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
 
384
       83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
 
385
        0,   81,   81
 
386
    } ;
 
387
 
 
388
static yyconst short int yy_nxt[263] =
 
389
    {   0,
 
390
        4,    5,    6,    5,    7,    8,    9,   10,   11,   12,
 
391
       13,   14,   15,   16,   17,   18,   19,   20,   21,   22,
 
392
       21,   23,   24,    4,   25,   21,   26,   27,   21,   28,
 
393
       21,   21,   29,   21,   21,   21,   30,   31,   21,   32,
 
394
       21,   33,   34,   35,   35,   35,   35,   39,   40,   42,
 
395
       42,   42,   42,   35,   35,   42,   43,   42,   42,   42,
 
396
       42,   42,   81,   54,   35,   38,   35,   44,   54,   42,
 
397
       42,   42,   42,   46,   35,   42,   45,   42,   42,   42,
 
398
       42,   42,   81,   47,   50,   49,   51,   53,   48,   42,
 
399
       42,   52,   42,   42,   42,   42,   42,   42,   42,   41,
 
400
 
 
401
       42,   38,   42,   36,   42,   81,   81,   81,   81,   42,
 
402
       42,   81,   42,   42,   42,   42,   42,   42,   42,   60,
 
403
       42,   42,   42,   42,   42,   59,   55,   57,   63,   61,
 
404
       56,   58,   42,   62,   42,   65,   42,   42,   42,   42,
 
405
       42,   42,   81,   42,   81,   64,   42,   66,   42,   81,
 
406
       81,   81,   42,   42,   42,   42,   42,   42,   42,   42,
 
407
       42,   70,   71,   42,   67,   42,   42,   69,   42,   68,
 
408
       72,   73,   42,   42,   42,   42,   42,   42,   42,   42,
 
409
       42,   42,   81,   42,   42,   42,   74,   42,   81,   75,
 
410
       81,   81,   42,   76,   42,   81,   42,   42,   42,   42,
 
411
 
 
412
       42,   42,   77,   78,   42,   81,   81,   42,   81,   81,
 
413
       81,   81,   79,   81,   80,   37,   81,   37,    3,   81,
 
414
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
415
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
416
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
417
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
418
       81,   81
 
419
    } ;
 
420
 
 
421
static yyconst short int yy_chk[263] =
 
422
    {   0,
 
423
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
424
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
425
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
426
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
 
427
        1,    1,    1,    5,   14,    5,   14,   18,   18,   21,
 
428
       22,   25,   26,    5,   14,   27,   83,   28,   29,   31,
 
429
       30,   32,   42,   54,   35,   38,   35,   22,   37,   21,
 
430
       22,   25,   26,   26,   35,   27,   25,   28,   29,   31,
 
431
       30,   32,   42,   27,   30,   29,   31,   32,   28,   43,
 
432
       44,   31,   45,   46,   47,   49,   48,   50,   52,   20,
 
433
 
 
434
       51,   16,   56,    7,   53,    3,    0,    0,    0,   43,
 
435
       44,    0,   45,   46,   47,   49,   48,   50,   52,   50,
 
436
       51,   55,   56,   57,   53,   49,   45,   47,   53,   51,
 
437
       46,   48,   58,   52,   59,   56,   60,   61,   62,   64,
 
438
       63,   55,    0,   57,    0,   55,   65,   57,   66,    0,
 
439
        0,    0,   58,   67,   59,   68,   60,   61,   62,   64,
 
440
       63,   61,   62,   69,   58,   70,   65,   60,   66,   59,
 
441
       63,   64,   71,   67,   72,   68,   73,   74,   75,   77,
 
442
       76,   78,    0,   69,   79,   70,   67,   80,    0,   68,
 
443
        0,    0,   71,   69,   72,    0,   73,   74,   75,   77,
 
444
 
 
445
       76,   78,   75,   76,   79,    0,    0,   80,    0,    0,
 
446
        0,    0,   77,    0,   78,   82,    0,   82,   81,   81,
 
447
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
448
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
449
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
450
       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
 
451
       81,   81
 
452
    } ;
 
453
 
 
454
static yy_state_type yy_last_accepting_state;
 
455
static char *yy_last_accepting_cpos;
 
456
 
 
457
/* The intent behind this definition is that it'll catch
 
458
 * any uses of REJECT which flex missed.
 
459
 */
 
460
#define REJECT reject_used_but_not_detected
 
461
#define yymore() yymore_used_but_not_detected
 
462
#define YY_MORE_ADJ 0
 
463
#define YY_RESTORE_YY_MORE_OFFSET
 
464
char *yytext;
 
465
#line 1 "adsedgelabel.l"
 
466
#define INITIAL 0
 
467
#line 2 "adsedgelabel.l"
 
468
#include <stdio.h>
 
469
#include <string.h>
 
470
#include "adsedgelabel.tab.h"
 
471
#include "adsedgelabelparse.h"
 
472
 
 
473
char adsedgelabel_errormsg[1024] = "";
 
474
char adsedgelabel_constraint[1024] = "";
 
475
#line 476 "adsedgelabel.c"
 
476
 
 
477
/* Macros after this point can all be overridden by user definitions in
 
478
 * section 1.
 
479
 */
 
480
 
 
481
#ifndef YY_SKIP_YYWRAP
 
482
#ifdef __cplusplus
 
483
extern "C" int yywrap YY_PROTO(( void ));
 
484
#else
 
485
extern int yywrap YY_PROTO(( void ));
 
486
#endif
 
487
#endif
 
488
 
 
489
#ifndef YY_NO_UNPUT
 
490
static void yyunput YY_PROTO(( int c, char *buf_ptr ));
 
491
#endif
 
492
 
 
493
#ifndef yytext_ptr
 
494
static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
 
495
#endif
 
496
 
 
497
#ifdef YY_NEED_STRLEN
 
498
static int yy_flex_strlen YY_PROTO(( yyconst char * ));
 
499
#endif
 
500
 
 
501
#ifndef YY_NO_INPUT
 
502
#ifdef __cplusplus
 
503
static int yyinput YY_PROTO(( void ));
 
504
#else
 
505
static int input YY_PROTO(( void ));
 
506
#endif
 
507
#endif
 
508
 
 
509
#if YY_STACK_USED
 
510
static int yy_start_stack_ptr = 0;
 
511
static int yy_start_stack_depth = 0;
 
512
static int *yy_start_stack = 0;
 
513
#ifndef YY_NO_PUSH_STATE
 
514
static void yy_push_state YY_PROTO(( int new_state ));
 
515
#endif
 
516
#ifndef YY_NO_POP_STATE
 
517
static void yy_pop_state YY_PROTO(( void ));
 
518
#endif
 
519
#ifndef YY_NO_TOP_STATE
 
520
static int yy_top_state YY_PROTO(( void ));
 
521
#endif
 
522
 
 
523
#else
 
524
#define YY_NO_PUSH_STATE 1
 
525
#define YY_NO_POP_STATE 1
 
526
#define YY_NO_TOP_STATE 1
 
527
#endif
 
528
 
 
529
#ifdef YY_MALLOC_DECL
 
530
YY_MALLOC_DECL
 
531
#else
 
532
#if __STDC__
 
533
#ifndef __cplusplus
 
534
#include <stdlib.h>
 
535
#endif
 
536
#else
 
537
/* Just try to get by without declaring the routines.  This will fail
 
538
 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
 
539
 * or sizeof(void*) != sizeof(int).
 
540
 */
 
541
#endif
 
542
#endif
 
543
 
 
544
/* Amount of stuff to slurp up with each read. */
 
545
#ifndef YY_READ_BUF_SIZE
 
546
#define YY_READ_BUF_SIZE 8192
 
547
#endif
 
548
 
 
549
/* Copy whatever the last rule matched to the standard output. */
 
550
 
 
551
#ifndef ECHO
 
552
/* This used to be an fputs(), but since the string might contain NUL's,
 
553
 * we now use fwrite().
 
554
 */
 
555
#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
 
556
#endif
 
557
 
 
558
/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
 
559
 * is returned in "result".
 
560
 */
 
561
#ifndef YY_INPUT
 
562
#define YY_INPUT(buf,result,max_size) \
 
563
        if ( yy_current_buffer->yy_is_interactive ) \
 
564
                { \
 
565
                int c = '*', n; \
 
566
                for ( n = 0; n < max_size && \
 
567
                             (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
 
568
                        buf[n] = (char) c; \
 
569
                if ( c == '\n' ) \
 
570
                        buf[n++] = (char) c; \
 
571
                if ( c == EOF && ferror( yyin ) ) \
 
572
                        YY_FATAL_ERROR( "input in flex scanner failed" ); \
 
573
                result = n; \
 
574
                } \
 
575
        else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
 
576
                  && ferror( yyin ) ) \
 
577
                YY_FATAL_ERROR( "input in flex scanner failed" );
 
578
#endif
 
579
 
 
580
/* No semi-colon after return; correct usage is to write "yyterminate();" -
 
581
 * we don't want an extra ';' after the "return" because that will cause
 
582
 * some compilers to complain about unreachable statements.
 
583
 */
 
584
#ifndef yyterminate
 
585
#define yyterminate() return YY_NULL
 
586
#endif
 
587
 
 
588
/* Number of entries by which start-condition stack grows. */
 
589
#ifndef YY_START_STACK_INCR
 
590
#define YY_START_STACK_INCR 25
 
591
#endif
 
592
 
 
593
/* Report a fatal error. */
 
594
#ifndef YY_FATAL_ERROR
 
595
#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
 
596
#endif
 
597
 
 
598
/* Default declaration of generated scanner - a define so the user can
 
599
 * easily add parameters.
 
600
 */
 
601
#ifndef YY_DECL
 
602
#define YY_DECL int yylex YY_PROTO(( void ))
 
603
#endif
 
604
 
 
605
/* Code executed at the beginning of each rule, after yytext and yyleng
 
606
 * have been set up.
 
607
 */
 
608
#ifndef YY_USER_ACTION
 
609
#define YY_USER_ACTION
 
610
#endif
 
611
 
 
612
/* Code executed at the end of each rule. */
 
613
#ifndef YY_BREAK
 
614
#define YY_BREAK break;
 
615
#endif
 
616
 
 
617
#define YY_RULE_SETUP \
 
618
        YY_USER_ACTION
 
619
 
 
620
YY_DECL
 
621
        {
 
622
        register yy_state_type yy_current_state;
 
623
        register char *yy_cp = NULL, *yy_bp = NULL;
 
624
        register int yy_act;
 
625
 
 
626
#line 16 "adsedgelabel.l"
 
627
 
 
628
#line 629 "adsedgelabel.c"
 
629
 
 
630
        if ( yy_init )
 
631
                {
 
632
                yy_init = 0;
 
633
 
 
634
#ifdef YY_USER_INIT
 
635
                YY_USER_INIT;
 
636
#endif
 
637
 
 
638
                if ( ! yy_start )
 
639
                        yy_start = 1;   /* first start state */
 
640
 
 
641
                if ( ! yyin )
 
642
                        yyin = stdin;
 
643
 
 
644
                if ( ! yyout )
 
645
                        yyout = stdout;
 
646
 
 
647
                if ( ! yy_current_buffer )
 
648
                        yy_current_buffer =
 
649
                                yy_create_buffer( yyin, YY_BUF_SIZE );
 
650
 
 
651
                yy_load_buffer_state();
 
652
                }
 
653
 
 
654
        while ( 1 )             /* loops until end-of-file is reached */
 
655
                {
 
656
                yy_cp = yy_c_buf_p;
 
657
 
 
658
                /* Support of yytext. */
 
659
                *yy_cp = yy_hold_char;
 
660
 
 
661
                /* yy_bp points to the position in yy_ch_buf of the start of
 
662
                 * the current run.
 
663
                 */
 
664
                yy_bp = yy_cp;
 
665
 
 
666
                yy_current_state = yy_start;
 
667
yy_match:
 
668
                do
 
669
                        {
 
670
                        register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
 
671
                        if ( yy_accept[yy_current_state] )
 
672
                                {
 
673
                                yy_last_accepting_state = yy_current_state;
 
674
                                yy_last_accepting_cpos = yy_cp;
 
675
                                }
 
676
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 
677
                                {
 
678
                                yy_current_state = (int) yy_def[yy_current_state];
 
679
                                if ( yy_current_state >= 82 )
 
680
                                        yy_c = yy_meta[(unsigned int) yy_c];
 
681
                                }
 
682
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 
683
                        ++yy_cp;
 
684
                        }
 
685
                while ( yy_base[yy_current_state] != 219 );
 
686
 
 
687
yy_find_action:
 
688
                yy_act = yy_accept[yy_current_state];
 
689
                if ( yy_act == 0 )
 
690
                        { /* have to back up */
 
691
                        yy_cp = yy_last_accepting_cpos;
 
692
                        yy_current_state = yy_last_accepting_state;
 
693
                        yy_act = yy_accept[yy_current_state];
 
694
                        }
 
695
 
 
696
                YY_DO_BEFORE_ACTION;
 
697
 
 
698
 
 
699
do_action:      /* This label is used only to access EOF actions. */
 
700
 
 
701
 
 
702
                switch ( yy_act )
 
703
        { /* beginning of action switch */
 
704
                        case 0: /* must back up */
 
705
                        /* undo the effects of YY_DO_BEFORE_ACTION */
 
706
                        *yy_cp = yy_hold_char;
 
707
                        yy_cp = yy_last_accepting_cpos;
 
708
                        yy_current_state = yy_last_accepting_state;
 
709
                        goto yy_find_action;
 
710
 
 
711
case 1:
 
712
YY_RULE_SETUP
 
713
#line 17 "adsedgelabel.l"
 
714
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "[");return(OPENB);}
 
715
        YY_BREAK
 
716
case 2:
 
717
YY_RULE_SETUP
 
718
#line 18 "adsedgelabel.l"
 
719
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "]");return(CLOSEB);}
 
720
        YY_BREAK
 
721
case 3:
 
722
YY_RULE_SETUP
 
723
#line 19 "adsedgelabel.l"
 
724
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "(");return(OPEN);}
 
725
        YY_BREAK
 
726
case 4:
 
727
YY_RULE_SETUP
 
728
#line 20 "adsedgelabel.l"
 
729
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, ")");return(CLOSE);}
 
730
        YY_BREAK
 
731
case 5:
 
732
YY_RULE_SETUP
 
733
#line 21 "adsedgelabel.l"
 
734
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "<=");return(LEQ);}
 
735
        YY_BREAK
 
736
case 6:
 
737
YY_RULE_SETUP
 
738
#line 22 "adsedgelabel.l"
 
739
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, ">=");return(GEQ);}
 
740
        YY_BREAK
 
741
case 7:
 
742
YY_RULE_SETUP
 
743
#line 23 "adsedgelabel.l"
 
744
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "=");return(EQ);}
 
745
        YY_BREAK
 
746
case 8:
 
747
YY_RULE_SETUP
 
748
#line 24 "adsedgelabel.l"
 
749
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "!=");return(NEQ);}
 
750
        YY_BREAK
 
751
case 9:
 
752
YY_RULE_SETUP
 
753
#line 25 "adsedgelabel.l"
 
754
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "<>");return(NEQ);}
 
755
        YY_BREAK
 
756
case 10:
 
757
YY_RULE_SETUP
 
758
#line 26 "adsedgelabel.l"
 
759
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "<");return(LT);}
 
760
        YY_BREAK
 
761
case 11:
 
762
YY_RULE_SETUP
 
763
#line 27 "adsedgelabel.l"
 
764
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, ">");return(GT);}
 
765
        YY_BREAK
 
766
case 12:
 
767
YY_RULE_SETUP
 
768
#line 28 "adsedgelabel.l"
 
769
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "+");return(PLUS);}
 
770
        YY_BREAK
 
771
case 13:
 
772
YY_RULE_SETUP
 
773
#line 29 "adsedgelabel.l"
 
774
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "-");return(MINUS);}
 
775
        YY_BREAK
 
776
case 14:
 
777
YY_RULE_SETUP
 
778
#line 30 "adsedgelabel.l"
 
779
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "*");return(TIMES);}
 
780
        YY_BREAK
 
781
case 15:
 
782
YY_RULE_SETUP
 
783
#line 31 "adsedgelabel.l"
 
784
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "/");return(DIV);}
 
785
        YY_BREAK
 
786
case 16:
 
787
YY_RULE_SETUP
 
788
#line 32 "adsedgelabel.l"
 
789
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "&");return(AND);}
 
790
        YY_BREAK
 
791
case 17:
 
792
YY_RULE_SETUP
 
793
#line 33 "adsedgelabel.l"
 
794
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "|");return(OR);}
 
795
        YY_BREAK
 
796
case 18:
 
797
YY_RULE_SETUP
 
798
#line 34 "adsedgelabel.l"
 
799
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "~");return(NOT);}
 
800
        YY_BREAK
 
801
case 19:
 
802
YY_RULE_SETUP
 
803
#line 35 "adsedgelabel.l"
 
804
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "~");return(NOT);}
 
805
        YY_BREAK
 
806
case 20:
 
807
YY_RULE_SETUP
 
808
#line 36 "adsedgelabel.l"
 
809
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, ":");return(COLON);}
 
810
        YY_BREAK
 
811
case 21:
 
812
YY_RULE_SETUP
 
813
#line 37 "adsedgelabel.l"
 
814
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "\n");return NL;}
 
815
        YY_BREAK
 
816
case 22:
 
817
YY_RULE_SETUP
 
818
#line 38 "adsedgelabel.l"
 
819
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "h");return HOURS;}
 
820
        YY_BREAK
 
821
case 23:
 
822
YY_RULE_SETUP
 
823
#line 39 "adsedgelabel.l"
 
824
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "h");return HOURS;}
 
825
        YY_BREAK
 
826
case 24:
 
827
YY_RULE_SETUP
 
828
#line 40 "adsedgelabel.l"
 
829
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "m");return MINUTES;}
 
830
        YY_BREAK
 
831
case 25:
 
832
YY_RULE_SETUP
 
833
#line 41 "adsedgelabel.l"
 
834
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "m");return MINUTES;}
 
835
        YY_BREAK
 
836
case 26:
 
837
YY_RULE_SETUP
 
838
#line 42 "adsedgelabel.l"
 
839
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "s");return SECONDS;}
 
840
        YY_BREAK
 
841
case 27:
 
842
YY_RULE_SETUP
 
843
#line 43 "adsedgelabel.l"
 
844
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "s");return SECONDS;}
 
845
        YY_BREAK
 
846
case 28:
 
847
YY_RULE_SETUP
 
848
#line 44 "adsedgelabel.l"
 
849
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "d");return DAYS;}
 
850
        YY_BREAK
 
851
case 29:
 
852
YY_RULE_SETUP
 
853
#line 45 "adsedgelabel.l"
 
854
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "d");return DAYS;}
 
855
        YY_BREAK
 
856
case 30:
 
857
YY_RULE_SETUP
 
858
#line 46 "adsedgelabel.l"
 
859
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "IN");return IN;}
 
860
        YY_BREAK
 
861
case 31:
 
862
YY_RULE_SETUP
 
863
#line 47 "adsedgelabel.l"
 
864
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "true");return(TRUE);}
 
865
        YY_BREAK
 
866
case 32:
 
867
YY_RULE_SETUP
 
868
#line 48 "adsedgelabel.l"
 
869
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "else");return(ELSE);}
 
870
        YY_BREAK
 
871
case 33:
 
872
YY_RULE_SETUP
 
873
#line 49 "adsedgelabel.l"
 
874
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "after");return(AFTERTOKEN);}
 
875
        YY_BREAK
 
876
case 34:
 
877
YY_RULE_SETUP
 
878
#line 50 "adsedgelabel.l"
 
879
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "when");return(WHENTOKEN);}
 
880
        YY_BREAK
 
881
case 35:
 
882
YY_RULE_SETUP
 
883
#line 51 "adsedgelabel.l"
 
884
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, "time");return(TIME);}
 
885
        YY_BREAK
 
886
case 36:
 
887
YY_RULE_SETUP
 
888
#line 52 "adsedgelabel.l"
 
889
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, adsedgelabeltext); return INTEGER;}
 
890
        YY_BREAK
 
891
case 37:
 
892
YY_RULE_SETUP
 
893
#line 53 "adsedgelabel.l"
 
894
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, adsedgelabeltext); return IDENTIFIER;}
 
895
        YY_BREAK
 
896
case 38:
 
897
YY_RULE_SETUP
 
898
#line 54 "adsedgelabel.l"
 
899
{adsedgelabellval.str_ptr=adsedgelabeltext;strcat(adsedgelabel_constraint, adsedgelabeltext);return(QUOTE);}
 
900
        YY_BREAK
 
901
case 39:
 
902
YY_RULE_SETUP
 
903
#line 55 "adsedgelabel.l"
 
904
{}
 
905
        YY_BREAK
 
906
case 40:
 
907
YY_RULE_SETUP
 
908
#line 57 "adsedgelabel.l"
 
909
ECHO;
 
910
        YY_BREAK
 
911
#line 912 "adsedgelabel.c"
 
912
case YY_STATE_EOF(INITIAL):
 
913
        yyterminate();
 
914
 
 
915
        case YY_END_OF_BUFFER:
 
916
                {
 
917
                /* Amount of text matched not including the EOB char. */
 
918
                int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
 
919
 
 
920
                /* Undo the effects of YY_DO_BEFORE_ACTION. */
 
921
                *yy_cp = yy_hold_char;
 
922
                YY_RESTORE_YY_MORE_OFFSET
 
923
 
 
924
                if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
 
925
                        {
 
926
                        /* We're scanning a new file or input source.  It's
 
927
                         * possible that this happened because the user
 
928
                         * just pointed yyin at a new source and called
 
929
                         * yylex().  If so, then we have to assure
 
930
                         * consistency between yy_current_buffer and our
 
931
                         * globals.  Here is the right place to do so, because
 
932
                         * this is the first action (other than possibly a
 
933
                         * back-up) that will match for the new input source.
 
934
                         */
 
935
                        yy_n_chars = yy_current_buffer->yy_n_chars;
 
936
                        yy_current_buffer->yy_input_file = yyin;
 
937
                        yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
 
938
                        }
 
939
 
 
940
                /* Note that here we test for yy_c_buf_p "<=" to the position
 
941
                 * of the first EOB in the buffer, since yy_c_buf_p will
 
942
                 * already have been incremented past the NUL character
 
943
                 * (since all states make transitions on EOB to the
 
944
                 * end-of-buffer state).  Contrast this with the test
 
945
                 * in input().
 
946
                 */
 
947
                if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
 
948
                        { /* This was really a NUL. */
 
949
                        yy_state_type yy_next_state;
 
950
 
 
951
                        yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
 
952
 
 
953
                        yy_current_state = yy_get_previous_state();
 
954
 
 
955
                        /* Okay, we're now positioned to make the NUL
 
956
                         * transition.  We couldn't have
 
957
                         * yy_get_previous_state() go ahead and do it
 
958
                         * for us because it doesn't know how to deal
 
959
                         * with the possibility of jamming (and we don't
 
960
                         * want to build jamming into it because then it
 
961
                         * will run more slowly).
 
962
                         */
 
963
 
 
964
                        yy_next_state = yy_try_NUL_trans( yy_current_state );
 
965
 
 
966
                        yy_bp = yytext_ptr + YY_MORE_ADJ;
 
967
 
 
968
                        if ( yy_next_state )
 
969
                                {
 
970
                                /* Consume the NUL. */
 
971
                                yy_cp = ++yy_c_buf_p;
 
972
                                yy_current_state = yy_next_state;
 
973
                                goto yy_match;
 
974
                                }
 
975
 
 
976
                        else
 
977
                                {
 
978
                                yy_cp = yy_c_buf_p;
 
979
                                goto yy_find_action;
 
980
                                }
 
981
                        }
 
982
 
 
983
                else switch ( yy_get_next_buffer() )
 
984
                        {
 
985
                        case EOB_ACT_END_OF_FILE:
 
986
                                {
 
987
                                yy_did_buffer_switch_on_eof = 0;
 
988
 
 
989
                                if ( yywrap() )
 
990
                                        {
 
991
                                        /* Note: because we've taken care in
 
992
                                         * yy_get_next_buffer() to have set up
 
993
                                         * yytext, we can now set up
 
994
                                         * yy_c_buf_p so that if some total
 
995
                                         * hoser (like flex itself) wants to
 
996
                                         * call the scanner after we return the
 
997
                                         * YY_NULL, it'll still work - another
 
998
                                         * YY_NULL will get returned.
 
999
                                         */
 
1000
                                        yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
 
1001
 
 
1002
                                        yy_act = YY_STATE_EOF(YY_START);
 
1003
                                        goto do_action;
 
1004
                                        }
 
1005
 
 
1006
                                else
 
1007
                                        {
 
1008
                                        if ( ! yy_did_buffer_switch_on_eof )
 
1009
                                                YY_NEW_FILE;
 
1010
                                        }
 
1011
                                break;
 
1012
                                }
 
1013
 
 
1014
                        case EOB_ACT_CONTINUE_SCAN:
 
1015
                                yy_c_buf_p =
 
1016
                                        yytext_ptr + yy_amount_of_matched_text;
 
1017
 
 
1018
                                yy_current_state = yy_get_previous_state();
 
1019
 
 
1020
                                yy_cp = yy_c_buf_p;
 
1021
                                yy_bp = yytext_ptr + YY_MORE_ADJ;
 
1022
                                goto yy_match;
 
1023
 
 
1024
                        case EOB_ACT_LAST_MATCH:
 
1025
                                yy_c_buf_p =
 
1026
                                &yy_current_buffer->yy_ch_buf[yy_n_chars];
 
1027
 
 
1028
                                yy_current_state = yy_get_previous_state();
 
1029
 
 
1030
                                yy_cp = yy_c_buf_p;
 
1031
                                yy_bp = yytext_ptr + YY_MORE_ADJ;
 
1032
                                goto yy_find_action;
 
1033
                        }
 
1034
                break;
 
1035
                }
 
1036
 
 
1037
        default:
 
1038
                YY_FATAL_ERROR(
 
1039
                        "fatal flex scanner internal error--no action found" );
 
1040
        } /* end of action switch */
 
1041
                } /* end of scanning one token */
 
1042
        } /* end of yylex */
 
1043
 
 
1044
 
 
1045
/* yy_get_next_buffer - try to read in a new buffer
 
1046
 *
 
1047
 * Returns a code representing an action:
 
1048
 *      EOB_ACT_LAST_MATCH -
 
1049
 *      EOB_ACT_CONTINUE_SCAN - continue scanning from current position
 
1050
 *      EOB_ACT_END_OF_FILE - end of file
 
1051
 */
 
1052
 
 
1053
static int yy_get_next_buffer()
 
1054
        {
 
1055
        register char *dest = yy_current_buffer->yy_ch_buf;
 
1056
        register char *source = yytext_ptr;
 
1057
        register int number_to_move, i;
 
1058
        int ret_val;
 
1059
 
 
1060
        if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
 
1061
                YY_FATAL_ERROR(
 
1062
                "fatal flex scanner internal error--end of buffer missed" );
 
1063
 
 
1064
        if ( yy_current_buffer->yy_fill_buffer == 0 )
 
1065
                { /* Don't try to fill the buffer, so this is an EOF. */
 
1066
                if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
 
1067
                        {
 
1068
                        /* We matched a single character, the EOB, so
 
1069
                         * treat this as a final EOF.
 
1070
                         */
 
1071
                        return EOB_ACT_END_OF_FILE;
 
1072
                        }
 
1073
 
 
1074
                else
 
1075
                        {
 
1076
                        /* We matched some text prior to the EOB, first
 
1077
                         * process it.
 
1078
                         */
 
1079
                        return EOB_ACT_LAST_MATCH;
 
1080
                        }
 
1081
                }
 
1082
 
 
1083
        /* Try to read more data. */
 
1084
 
 
1085
        /* First move last chars to start of buffer. */
 
1086
        number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
 
1087
 
 
1088
        for ( i = 0; i < number_to_move; ++i )
 
1089
                *(dest++) = *(source++);
 
1090
 
 
1091
        if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
 
1092
                /* don't do the read, it's not guaranteed to return an EOF,
 
1093
                 * just force an EOF
 
1094
                 */
 
1095
                yy_current_buffer->yy_n_chars = yy_n_chars = 0;
 
1096
 
 
1097
        else
 
1098
                {
 
1099
                int num_to_read =
 
1100
                        yy_current_buffer->yy_buf_size - number_to_move - 1;
 
1101
 
 
1102
                while ( num_to_read <= 0 )
 
1103
                        { /* Not enough room in the buffer - grow it. */
 
1104
#ifdef YY_USES_REJECT
 
1105
                        YY_FATAL_ERROR(
 
1106
"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
 
1107
#else
 
1108
 
 
1109
                        /* just a shorter name for the current buffer */
 
1110
                        YY_BUFFER_STATE b = yy_current_buffer;
 
1111
 
 
1112
                        int yy_c_buf_p_offset =
 
1113
                                (int) (yy_c_buf_p - b->yy_ch_buf);
 
1114
 
 
1115
                        if ( b->yy_is_our_buffer )
 
1116
                                {
 
1117
                                int new_size = b->yy_buf_size * 2;
 
1118
 
 
1119
                                if ( new_size <= 0 )
 
1120
                                        b->yy_buf_size += b->yy_buf_size / 8;
 
1121
                                else
 
1122
                                        b->yy_buf_size *= 2;
 
1123
 
 
1124
                                b->yy_ch_buf = (char *)
 
1125
                                        /* Include room in for 2 EOB chars. */
 
1126
                                        yy_flex_realloc( (void *) b->yy_ch_buf,
 
1127
                                                         b->yy_buf_size + 2 );
 
1128
                                }
 
1129
                        else
 
1130
                                /* Can't grow it, we don't own it. */
 
1131
                                b->yy_ch_buf = 0;
 
1132
 
 
1133
                        if ( ! b->yy_ch_buf )
 
1134
                                YY_FATAL_ERROR(
 
1135
                                "fatal error - scanner input buffer overflow" );
 
1136
 
 
1137
                        yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
 
1138
 
 
1139
                        num_to_read = yy_current_buffer->yy_buf_size -
 
1140
                                                number_to_move - 1;
 
1141
#endif
 
1142
                        }
 
1143
 
 
1144
                if ( num_to_read > YY_READ_BUF_SIZE )
 
1145
                        num_to_read = YY_READ_BUF_SIZE;
 
1146
 
 
1147
                /* Read in more data. */
 
1148
                YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
 
1149
                        yy_n_chars, num_to_read );
 
1150
 
 
1151
                yy_current_buffer->yy_n_chars = yy_n_chars;
 
1152
                }
 
1153
 
 
1154
        if ( yy_n_chars == 0 )
 
1155
                {
 
1156
                if ( number_to_move == YY_MORE_ADJ )
 
1157
                        {
 
1158
                        ret_val = EOB_ACT_END_OF_FILE;
 
1159
                        yyrestart( yyin );
 
1160
                        }
 
1161
 
 
1162
                else
 
1163
                        {
 
1164
                        ret_val = EOB_ACT_LAST_MATCH;
 
1165
                        yy_current_buffer->yy_buffer_status =
 
1166
                                YY_BUFFER_EOF_PENDING;
 
1167
                        }
 
1168
                }
 
1169
 
 
1170
        else
 
1171
                ret_val = EOB_ACT_CONTINUE_SCAN;
 
1172
 
 
1173
        yy_n_chars += number_to_move;
 
1174
        yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
 
1175
        yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
 
1176
 
 
1177
        yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
 
1178
 
 
1179
        return ret_val;
 
1180
        }
 
1181
 
 
1182
 
 
1183
/* yy_get_previous_state - get the state just before the EOB char was reached */
 
1184
 
 
1185
static yy_state_type yy_get_previous_state()
 
1186
        {
 
1187
        register yy_state_type yy_current_state;
 
1188
        register char *yy_cp;
 
1189
 
 
1190
        yy_current_state = yy_start;
 
1191
 
 
1192
        for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
 
1193
                {
 
1194
                register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
 
1195
                if ( yy_accept[yy_current_state] )
 
1196
                        {
 
1197
                        yy_last_accepting_state = yy_current_state;
 
1198
                        yy_last_accepting_cpos = yy_cp;
 
1199
                        }
 
1200
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 
1201
                        {
 
1202
                        yy_current_state = (int) yy_def[yy_current_state];
 
1203
                        if ( yy_current_state >= 82 )
 
1204
                                yy_c = yy_meta[(unsigned int) yy_c];
 
1205
                        }
 
1206
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 
1207
                }
 
1208
 
 
1209
        return yy_current_state;
 
1210
        }
 
1211
 
 
1212
 
 
1213
/* yy_try_NUL_trans - try to make a transition on the NUL character
 
1214
 *
 
1215
 * synopsis
 
1216
 *      next_state = yy_try_NUL_trans( current_state );
 
1217
 */
 
1218
 
 
1219
#ifdef YY_USE_PROTOS
 
1220
static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
 
1221
#else
 
1222
static yy_state_type yy_try_NUL_trans( yy_current_state )
 
1223
yy_state_type yy_current_state;
 
1224
#endif
 
1225
        {
 
1226
        register int yy_is_jam;
 
1227
        register char *yy_cp = yy_c_buf_p;
 
1228
 
 
1229
        register YY_CHAR yy_c = 1;
 
1230
        if ( yy_accept[yy_current_state] )
 
1231
                {
 
1232
                yy_last_accepting_state = yy_current_state;
 
1233
                yy_last_accepting_cpos = yy_cp;
 
1234
                }
 
1235
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 
1236
                {
 
1237
                yy_current_state = (int) yy_def[yy_current_state];
 
1238
                if ( yy_current_state >= 82 )
 
1239
                        yy_c = yy_meta[(unsigned int) yy_c];
 
1240
                }
 
1241
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 
1242
        yy_is_jam = (yy_current_state == 81);
 
1243
 
 
1244
        return yy_is_jam ? 0 : yy_current_state;
 
1245
        }
 
1246
 
 
1247
 
 
1248
#ifndef YY_NO_UNPUT
 
1249
#ifdef YY_USE_PROTOS
 
1250
static void yyunput( int c, register char *yy_bp )
 
1251
#else
 
1252
static void yyunput( c, yy_bp )
 
1253
int c;
 
1254
register char *yy_bp;
 
1255
#endif
 
1256
        {
 
1257
        register char *yy_cp = yy_c_buf_p;
 
1258
 
 
1259
        /* undo effects of setting up yytext */
 
1260
        *yy_cp = yy_hold_char;
 
1261
 
 
1262
        if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
 
1263
                { /* need to shift things up to make room */
 
1264
                /* +2 for EOB chars. */
 
1265
                register int number_to_move = yy_n_chars + 2;
 
1266
                register char *dest = &yy_current_buffer->yy_ch_buf[
 
1267
                                        yy_current_buffer->yy_buf_size + 2];
 
1268
                register char *source =
 
1269
                                &yy_current_buffer->yy_ch_buf[number_to_move];
 
1270
 
 
1271
                while ( source > yy_current_buffer->yy_ch_buf )
 
1272
                        *--dest = *--source;
 
1273
 
 
1274
                yy_cp += (int) (dest - source);
 
1275
                yy_bp += (int) (dest - source);
 
1276
                yy_current_buffer->yy_n_chars =
 
1277
                        yy_n_chars = yy_current_buffer->yy_buf_size;
 
1278
 
 
1279
                if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
 
1280
                        YY_FATAL_ERROR( "flex scanner push-back overflow" );
 
1281
                }
 
1282
 
 
1283
        *--yy_cp = (char) c;
 
1284
 
 
1285
 
 
1286
        yytext_ptr = yy_bp;
 
1287
        yy_hold_char = *yy_cp;
 
1288
        yy_c_buf_p = yy_cp;
 
1289
        }
 
1290
#endif  /* ifndef YY_NO_UNPUT */
 
1291
 
 
1292
 
 
1293
#ifdef __cplusplus
 
1294
static int yyinput()
 
1295
#else
 
1296
static int input()
 
1297
#endif
 
1298
        {
 
1299
        int c;
 
1300
 
 
1301
        *yy_c_buf_p = yy_hold_char;
 
1302
 
 
1303
        if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
 
1304
                {
 
1305
                /* yy_c_buf_p now points to the character we want to return.
 
1306
                 * If this occurs *before* the EOB characters, then it's a
 
1307
                 * valid NUL; if not, then we've hit the end of the buffer.
 
1308
                 */
 
1309
                if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
 
1310
                        /* This was really a NUL. */
 
1311
                        *yy_c_buf_p = '\0';
 
1312
 
 
1313
                else
 
1314
                        { /* need more input */
 
1315
                        int offset = yy_c_buf_p - yytext_ptr;
 
1316
                        ++yy_c_buf_p;
 
1317
 
 
1318
                        switch ( yy_get_next_buffer() )
 
1319
                                {
 
1320
                                case EOB_ACT_LAST_MATCH:
 
1321
                                        /* This happens because yy_g_n_b()
 
1322
                                         * sees that we've accumulated a
 
1323
                                         * token and flags that we need to
 
1324
                                         * try matching the token before
 
1325
                                         * proceeding.  But for input(),
 
1326
                                         * there's no matching to consider.
 
1327
                                         * So convert the EOB_ACT_LAST_MATCH
 
1328
                                         * to EOB_ACT_END_OF_FILE.
 
1329
                                         */
 
1330
 
 
1331
                                        /* Reset buffer status. */
 
1332
                                        yyrestart( yyin );
 
1333
 
 
1334
                                        /* fall through */
 
1335
 
 
1336
                                case EOB_ACT_END_OF_FILE:
 
1337
                                        {
 
1338
                                        if ( yywrap() )
 
1339
                                                return EOF;
 
1340
 
 
1341
                                        if ( ! yy_did_buffer_switch_on_eof )
 
1342
                                                YY_NEW_FILE;
 
1343
#ifdef __cplusplus
 
1344
                                        return yyinput();
 
1345
#else
 
1346
                                        return input();
 
1347
#endif
 
1348
                                        }
 
1349
 
 
1350
                                case EOB_ACT_CONTINUE_SCAN:
 
1351
                                        yy_c_buf_p = yytext_ptr + offset;
 
1352
                                        break;
 
1353
                                }
 
1354
                        }
 
1355
                }
 
1356
 
 
1357
        c = *(unsigned char *) yy_c_buf_p;      /* cast for 8-bit char's */
 
1358
        *yy_c_buf_p = '\0';     /* preserve yytext */
 
1359
        yy_hold_char = *++yy_c_buf_p;
 
1360
 
 
1361
 
 
1362
        return c;
 
1363
        }
 
1364
 
 
1365
 
 
1366
#ifdef YY_USE_PROTOS
 
1367
void yyrestart( FILE *input_file )
 
1368
#else
 
1369
void yyrestart( input_file )
 
1370
FILE *input_file;
 
1371
#endif
 
1372
        {
 
1373
        if ( ! yy_current_buffer )
 
1374
                yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
 
1375
 
 
1376
        yy_init_buffer( yy_current_buffer, input_file );
 
1377
        yy_load_buffer_state();
 
1378
        }
 
1379
 
 
1380
 
 
1381
#ifdef YY_USE_PROTOS
 
1382
void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
 
1383
#else
 
1384
void yy_switch_to_buffer( new_buffer )
 
1385
YY_BUFFER_STATE new_buffer;
 
1386
#endif
 
1387
        {
 
1388
        if ( yy_current_buffer == new_buffer )
 
1389
                return;
 
1390
 
 
1391
        if ( yy_current_buffer )
 
1392
                {
 
1393
                /* Flush out information for old buffer. */
 
1394
                *yy_c_buf_p = yy_hold_char;
 
1395
                yy_current_buffer->yy_buf_pos = yy_c_buf_p;
 
1396
                yy_current_buffer->yy_n_chars = yy_n_chars;
 
1397
                }
 
1398
 
 
1399
        yy_current_buffer = new_buffer;
 
1400
        yy_load_buffer_state();
 
1401
 
 
1402
        /* We don't actually know whether we did this switch during
 
1403
         * EOF (yywrap()) processing, but the only time this flag
 
1404
         * is looked at is after yywrap() is called, so it's safe
 
1405
         * to go ahead and always set it.
 
1406
         */
 
1407
        yy_did_buffer_switch_on_eof = 1;
 
1408
        }
 
1409
 
 
1410
 
 
1411
#ifdef YY_USE_PROTOS
 
1412
void yy_load_buffer_state( void )
 
1413
#else
 
1414
void yy_load_buffer_state()
 
1415
#endif
 
1416
        {
 
1417
        yy_n_chars = yy_current_buffer->yy_n_chars;
 
1418
        yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
 
1419
        yyin = yy_current_buffer->yy_input_file;
 
1420
        yy_hold_char = *yy_c_buf_p;
 
1421
        }
 
1422
 
 
1423
 
 
1424
#ifdef YY_USE_PROTOS
 
1425
YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
 
1426
#else
 
1427
YY_BUFFER_STATE yy_create_buffer( file, size )
 
1428
FILE *file;
 
1429
int size;
 
1430
#endif
 
1431
        {
 
1432
        YY_BUFFER_STATE b;
 
1433
 
 
1434
        b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
 
1435
        if ( ! b )
 
1436
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
1437
 
 
1438
        b->yy_buf_size = size;
 
1439
 
 
1440
        /* yy_ch_buf has to be 2 characters longer than the size given because
 
1441
         * we need to put in 2 end-of-buffer characters.
 
1442
         */
 
1443
        b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
 
1444
        if ( ! b->yy_ch_buf )
 
1445
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
1446
 
 
1447
        b->yy_is_our_buffer = 1;
 
1448
 
 
1449
        yy_init_buffer( b, file );
 
1450
 
 
1451
        return b;
 
1452
        }
 
1453
 
 
1454
 
 
1455
#ifdef YY_USE_PROTOS
 
1456
void yy_delete_buffer( YY_BUFFER_STATE b )
 
1457
#else
 
1458
void yy_delete_buffer( b )
 
1459
YY_BUFFER_STATE b;
 
1460
#endif
 
1461
        {
 
1462
        if ( ! b )
 
1463
                return;
 
1464
 
 
1465
        if ( b == yy_current_buffer )
 
1466
                yy_current_buffer = (YY_BUFFER_STATE) 0;
 
1467
 
 
1468
        if ( b->yy_is_our_buffer )
 
1469
                yy_flex_free( (void *) b->yy_ch_buf );
 
1470
 
 
1471
        yy_flex_free( (void *) b );
 
1472
        }
 
1473
 
 
1474
 
 
1475
 
 
1476
#ifdef YY_USE_PROTOS
 
1477
void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
 
1478
#else
 
1479
void yy_init_buffer( b, file )
 
1480
YY_BUFFER_STATE b;
 
1481
FILE *file;
 
1482
#endif
 
1483
 
 
1484
 
 
1485
        {
 
1486
        yy_flush_buffer( b );
 
1487
 
 
1488
        b->yy_input_file = file;
 
1489
        b->yy_fill_buffer = 1;
 
1490
 
 
1491
#if YY_ALWAYS_INTERACTIVE
 
1492
        b->yy_is_interactive = 1;
 
1493
#else
 
1494
#if YY_NEVER_INTERACTIVE
 
1495
        b->yy_is_interactive = 0;
 
1496
#else
 
1497
        b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
 
1498
#endif
 
1499
#endif
 
1500
        }
 
1501
 
 
1502
 
 
1503
#ifdef YY_USE_PROTOS
 
1504
void yy_flush_buffer( YY_BUFFER_STATE b )
 
1505
#else
 
1506
void yy_flush_buffer( b )
 
1507
YY_BUFFER_STATE b;
 
1508
#endif
 
1509
 
 
1510
        {
 
1511
        if ( ! b )
 
1512
                return;
 
1513
 
 
1514
        b->yy_n_chars = 0;
 
1515
 
 
1516
        /* We always need two end-of-buffer characters.  The first causes
 
1517
         * a transition to the end-of-buffer state.  The second causes
 
1518
         * a jam in that state.
 
1519
         */
 
1520
        b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
 
1521
        b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
 
1522
 
 
1523
        b->yy_buf_pos = &b->yy_ch_buf[0];
 
1524
 
 
1525
        b->yy_at_bol = 1;
 
1526
        b->yy_buffer_status = YY_BUFFER_NEW;
 
1527
 
 
1528
        if ( b == yy_current_buffer )
 
1529
                yy_load_buffer_state();
 
1530
        }
 
1531
 
 
1532
 
 
1533
#ifndef YY_NO_SCAN_BUFFER
 
1534
#ifdef YY_USE_PROTOS
 
1535
YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
 
1536
#else
 
1537
YY_BUFFER_STATE yy_scan_buffer( base, size )
 
1538
char *base;
 
1539
yy_size_t size;
 
1540
#endif
 
1541
        {
 
1542
        YY_BUFFER_STATE b;
 
1543
 
 
1544
        if ( size < 2 ||
 
1545
             base[size-2] != YY_END_OF_BUFFER_CHAR ||
 
1546
             base[size-1] != YY_END_OF_BUFFER_CHAR )
 
1547
                /* They forgot to leave room for the EOB's. */
 
1548
                return 0;
 
1549
 
 
1550
        b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
 
1551
        if ( ! b )
 
1552
                YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
 
1553
 
 
1554
        b->yy_buf_size = size - 2;      /* "- 2" to take care of EOB's */
 
1555
        b->yy_buf_pos = b->yy_ch_buf = base;
 
1556
        b->yy_is_our_buffer = 0;
 
1557
        b->yy_input_file = 0;
 
1558
        b->yy_n_chars = b->yy_buf_size;
 
1559
        b->yy_is_interactive = 0;
 
1560
        b->yy_at_bol = 1;
 
1561
        b->yy_fill_buffer = 0;
 
1562
        b->yy_buffer_status = YY_BUFFER_NEW;
 
1563
 
 
1564
        yy_switch_to_buffer( b );
 
1565
 
 
1566
        return b;
 
1567
        }
 
1568
#endif
 
1569
 
 
1570
 
 
1571
#ifndef YY_NO_SCAN_STRING
 
1572
#ifdef YY_USE_PROTOS
 
1573
YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
 
1574
#else
 
1575
YY_BUFFER_STATE yy_scan_string( yy_str )
 
1576
yyconst char *yy_str;
 
1577
#endif
 
1578
        {
 
1579
        int len;
 
1580
        for ( len = 0; yy_str[len]; ++len )
 
1581
                ;
 
1582
 
 
1583
        return yy_scan_bytes( yy_str, len );
 
1584
        }
 
1585
#endif
 
1586
 
 
1587
 
 
1588
#ifndef YY_NO_SCAN_BYTES
 
1589
#ifdef YY_USE_PROTOS
 
1590
YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
 
1591
#else
 
1592
YY_BUFFER_STATE yy_scan_bytes( bytes, len )
 
1593
yyconst char *bytes;
 
1594
int len;
 
1595
#endif
 
1596
        {
 
1597
        YY_BUFFER_STATE b;
 
1598
        char *buf;
 
1599
        yy_size_t n;
 
1600
        int i;
 
1601
 
 
1602
        /* Get memory for full buffer, including space for trailing EOB's. */
 
1603
        n = len + 2;
 
1604
        buf = (char *) yy_flex_alloc( n );
 
1605
        if ( ! buf )
 
1606
                YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
 
1607
 
 
1608
        for ( i = 0; i < len; ++i )
 
1609
                buf[i] = bytes[i];
 
1610
 
 
1611
        buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
 
1612
 
 
1613
        b = yy_scan_buffer( buf, n );
 
1614
        if ( ! b )
 
1615
                YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
 
1616
 
 
1617
        /* It's okay to grow etc. this buffer, and we should throw it
 
1618
         * away when we're done.
 
1619
         */
 
1620
        b->yy_is_our_buffer = 1;
 
1621
 
 
1622
        return b;
 
1623
        }
 
1624
#endif
 
1625
 
 
1626
 
 
1627
#ifndef YY_NO_PUSH_STATE
 
1628
#ifdef YY_USE_PROTOS
 
1629
static void yy_push_state( int new_state )
 
1630
#else
 
1631
static void yy_push_state( new_state )
 
1632
int new_state;
 
1633
#endif
 
1634
        {
 
1635
        if ( yy_start_stack_ptr >= yy_start_stack_depth )
 
1636
                {
 
1637
                yy_size_t new_size;
 
1638
 
 
1639
                yy_start_stack_depth += YY_START_STACK_INCR;
 
1640
                new_size = yy_start_stack_depth * sizeof( int );
 
1641
 
 
1642
                if ( ! yy_start_stack )
 
1643
                        yy_start_stack = (int *) yy_flex_alloc( new_size );
 
1644
 
 
1645
                else
 
1646
                        yy_start_stack = (int *) yy_flex_realloc(
 
1647
                                        (void *) yy_start_stack, new_size );
 
1648
 
 
1649
                if ( ! yy_start_stack )
 
1650
                        YY_FATAL_ERROR(
 
1651
                        "out of memory expanding start-condition stack" );
 
1652
                }
 
1653
 
 
1654
        yy_start_stack[yy_start_stack_ptr++] = YY_START;
 
1655
 
 
1656
        BEGIN(new_state);
 
1657
        }
 
1658
#endif
 
1659
 
 
1660
 
 
1661
#ifndef YY_NO_POP_STATE
 
1662
static void yy_pop_state()
 
1663
        {
 
1664
        if ( --yy_start_stack_ptr < 0 )
 
1665
                YY_FATAL_ERROR( "start-condition stack underflow" );
 
1666
 
 
1667
        BEGIN(yy_start_stack[yy_start_stack_ptr]);
 
1668
        }
 
1669
#endif
 
1670
 
 
1671
 
 
1672
#ifndef YY_NO_TOP_STATE
 
1673
static int yy_top_state()
 
1674
        {
 
1675
        return yy_start_stack[yy_start_stack_ptr - 1];
 
1676
        }
 
1677
#endif
 
1678
 
 
1679
#ifndef YY_EXIT_FAILURE
 
1680
#define YY_EXIT_FAILURE 2
 
1681
#endif
 
1682
 
 
1683
#ifdef YY_USE_PROTOS
 
1684
static void yy_fatal_error( yyconst char msg[] )
 
1685
#else
 
1686
static void yy_fatal_error( msg )
 
1687
char msg[];
 
1688
#endif
 
1689
        {
 
1690
        (void) fprintf( stderr, "%s\n", msg );
 
1691
        exit( YY_EXIT_FAILURE );
 
1692
        }
 
1693
 
 
1694
 
 
1695
 
 
1696
/* Redefine yyless() so it works in section 3 code. */
 
1697
 
 
1698
#undef yyless
 
1699
#define yyless(n) \
 
1700
        do \
 
1701
                { \
 
1702
                /* Undo effects of setting up yytext. */ \
 
1703
                yytext[yyleng] = yy_hold_char; \
 
1704
                yy_c_buf_p = yytext + n; \
 
1705
                yy_hold_char = *yy_c_buf_p; \
 
1706
                *yy_c_buf_p = '\0'; \
 
1707
                yyleng = n; \
 
1708
                } \
 
1709
        while ( 0 )
 
1710
 
 
1711
 
 
1712
/* Internal utility routines. */
 
1713
 
 
1714
#ifndef yytext_ptr
 
1715
#ifdef YY_USE_PROTOS
 
1716
static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
 
1717
#else
 
1718
static void yy_flex_strncpy( s1, s2, n )
 
1719
char *s1;
 
1720
yyconst char *s2;
 
1721
int n;
 
1722
#endif
 
1723
        {
 
1724
        register int i;
 
1725
        for ( i = 0; i < n; ++i )
 
1726
                s1[i] = s2[i];
 
1727
        }
 
1728
#endif
 
1729
 
 
1730
#ifdef YY_NEED_STRLEN
 
1731
#ifdef YY_USE_PROTOS
 
1732
static int yy_flex_strlen( yyconst char *s )
 
1733
#else
 
1734
static int yy_flex_strlen( s )
 
1735
yyconst char *s;
 
1736
#endif
 
1737
        {
 
1738
        register int n;
 
1739
        for ( n = 0; s[n]; ++n )
 
1740
                ;
 
1741
 
 
1742
        return n;
 
1743
        }
 
1744
#endif
 
1745
 
 
1746
 
 
1747
#ifdef YY_USE_PROTOS
 
1748
static void *yy_flex_alloc( yy_size_t size )
 
1749
#else
 
1750
static void *yy_flex_alloc( size )
 
1751
yy_size_t size;
 
1752
#endif
 
1753
        {
 
1754
        return (void *) malloc( size );
 
1755
        }
 
1756
 
 
1757
#ifdef YY_USE_PROTOS
 
1758
static void *yy_flex_realloc( void *ptr, yy_size_t size )
 
1759
#else
 
1760
static void *yy_flex_realloc( ptr, size )
 
1761
void *ptr;
 
1762
yy_size_t size;
 
1763
#endif
 
1764
        {
 
1765
        /* The cast to (char *) in the following accommodates both
 
1766
         * implementations that use char* generic pointers, and those
 
1767
         * that use void* generic pointers.  It works with the latter
 
1768
         * because both ANSI C and C++ allow castless assignment from
 
1769
         * any pointer type to void*, and deal with argument conversions
 
1770
         * as though doing an assignment.
 
1771
         */
 
1772
        return (void *) realloc( (char *) ptr, size );
 
1773
        }
 
1774
 
 
1775
#ifdef YY_USE_PROTOS
 
1776
static void yy_flex_free( void *ptr )
 
1777
#else
 
1778
static void yy_flex_free( ptr )
 
1779
void *ptr;
 
1780
#endif
 
1781
        {
 
1782
        free( ptr );
 
1783
        }
 
1784
 
 
1785
#if YY_MAIN
 
1786
int main()
 
1787
        {
 
1788
        yylex();
 
1789
        return 0;
 
1790
        }
 
1791
#endif
 
1792
#line 57 "adsedgelabel.l"
 
1793
 
 
1794
 
 
1795
 
 
1796
int adsedgelabelwrap() {
 
1797
        return(1);
 
1798
}
 
1799
 
 
1800
int adsedgelabelerror(char *s) {
 
1801
        strcpy(adsedgelabel_errormsg, s);
 
1802
        return 0;
 
1803
}
 
1804