home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
gdead.berkeley.edu
/
gdead.berkeley.edu.tar
/
gdead.berkeley.edu
/
pub
/
cad-tools
/
ciftomann.tar
/
cmd_dir
/
scan.c
< prev
next >
Wrap
C/C++ Source or Header
|
1988-01-28
|
20KB
|
987 lines
# include "stdio.h"
# define U(x) x
# define NLSTATE yyprevious=YYNEWLINE
# define BEGIN yybgin = yysvec + 1 +
# define INITIAL 0
# define YYLERR yysvec
# define YYSTATE (yyestate-yysvec-1)
# define YYOPTIM 1
# define YYLMAX 200
# define output(c) putc(c,yyout)
# define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)
# define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;}
# define yymore() (yymorfg=1)
# define ECHO fprintf(yyout, "%s",yytext)
# define REJECT { nstr = yyreject(); goto yyfussy;}
int yyleng; extern char yytext[];
int yymorfg;
extern char *yysptr, yysbuf[];
int yytchar;
FILE *yyin ={stdin}, *yyout ={stdout};
extern int yylineno;
struct yysvf {
struct yywork *yystoff;
struct yysvf *yyother;
int *yystops;};
struct yysvf *yyestate;
extern struct yysvf yysvec[], *yybgin;
/* the lexical scanner for the command parser */
#include "parse.h"
int line_number = 1;
# define YYNEWLINE 10
yylex(){
int nstr; extern int yyprevious;
while((nstr = yylook()) >= 0)
yyfussy: switch(nstr){
case 0:
if(yywrap()) return(0); break;
case 1:
{return (SCALE);}
break;
case 2:
{return (INVERT);}
break;
case 3:
{return (GROW);}
break;
case 4:
{return (SHRINK);}
break;
case 5:
{return (APERTURE_MAX);}
break;
case 6:
{return (APERTURE_MIN);}
break;
case 7:
{return (STAGE_MAX);}
break;
case 8:
{return (STAGE_MIN);}
break;
case 9:
{return (GRID_SIZE);}
break;
case 10:
{return (CONVERT_FACTOR);}
break;
case 11:
case 12:
case 13:
case 14:
{
yylval.strval = yytext;
return(LAYER);
}
break;
case 15:
{ error("bad layer name or keyword");}
break;
case 16:
{ sscanf(yytext,"%d",&yylval.intval);
return(NUMBER);
}
break;
case 17:
{ sscanf(yytext,"%f",&yylval.floatval);
return(FLOAT);
}
break;
case 18:
{ return ( MINUS ); }
break;
case 19:
{ line_number++;
return (EOL); }
break;
case 20:
;
break;
case 21:
{ error("illegal character");}
break;
case -1:
break;
default:
fprintf(yyout,"bad switch yylook %d",nstr);
} return(0); }
/* end of yylex */
int yyvstop[] ={
0,
21,
0,
20,
21,
0,
19,
0,
18,
21,
0,
16,
21,
0,
11,
15,
21,
0,
11,
15,
21,
0,
11,
15,
21,
0,
11,
15,
21,
0,
11,
15,
21,
0,
11,
15,
21,
0,
17,
0,
16,
0,
12,
0,
12,
15,
0,
12,
15,
0,
12,
15,
0,
12,
15,
0,
12,
15,
0,
12,
15,
0,
12,
15,
0,
12,
15,
0,
13,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
13,
15,
0,
14,
0,
14,
15,
0,
14,
15,
0,
14,
15,
0,
14,
15,
0,
3,
14,
15,
0,
14,
15,
0,
14,
15,
0,
14,
15,
0,
14,
15,
0,
15,
0,
15,
0,
15,
0,
15,
0,
1,
15,
0,
15,
0,
15,
0,
15,
0,
15,
0,
2,
15,
0,
4,
15,
0,
15,
0,
15,
0,
15,
0,
9,
0,
7,
0,
8,
0,
5,
0,
6,
0,
10,
0,
0};
# define YYTYPE char
struct yywork { YYTYPE verify, advance; } yycrank[] ={
0,0, 0,0, 1,3, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 1,4, 1,5,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 1,6, 2,6,
7,14, 1,7, 7,15, 7,15,
7,15, 7,15, 7,15, 7,15,
7,15, 7,15, 7,15, 7,15,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 1,8, 1,9,
1,10, 0,0, 0,0, 0,0,
1,11, 0,0, 1,12, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
1,13, 8,16, 8,16, 8,16,
8,16, 8,16, 8,16, 8,16,
8,16, 8,16, 8,16, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
9,17, 10,19, 10,17, 11,17,
37,46, 11,20, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,18, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
8,17, 8,17, 8,17, 8,17,
12,21, 13,22, 12,17, 38,47,
39,48, 41,49, 13,23, 42,50,
43,51, 44,52, 46,53, 47,54,
48,55, 49,56, 13,17, 51,57,
52,58, 53,59, 13,24, 14,14,
14,14, 14,14, 14,14, 14,14,
14,14, 14,14, 14,14, 14,14,
14,14, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 54,60,
55,61, 58,62, 59,63, 60,64,
61,65, 63,68, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
64,69, 65,70, 66,71, 67,72,
68,73, 69,74, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
16,25, 16,25, 16,25, 16,25,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 74,77, 75,78,
76,79, 77,80, 80,81, 81,82,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 17,26, 17,26,
17,26, 17,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 18,26, 18,26,
18,26, 18,26, 18,27, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
18,26, 18,26, 18,26, 18,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,28, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 19,26, 19,26,
19,26, 19,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,29, 20,26,
20,26, 20,26, 20,26, 20,26,
20,30, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
20,26, 20,26, 20,26, 20,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,26, 21,26, 21,26,
21,26, 21,31, 21,26, 21,26,
21,26, 21,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 22,32, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
22,26, 22,26, 22,26, 22,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,33, 23,26, 23,26,
23,26, 23,26, 23,26, 23,26,
23,26, 23,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
0,0, 0,0, 0,0, 0,0,
0,0, 0,0, 24,34, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
24,26, 24,26, 24,26, 24,26,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 0,0, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 25,35,
25,35, 25,35, 25,35, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 26,36, 26,36, 26,36,
26,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,37, 27,36,
27,36, 27,36, 27,36, 27,36,
27,36, 27,36, 27,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,36, 28,36, 28,36, 28,36,
28,38, 28,36, 28,36, 28,36,
28,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 29,36, 29,36, 29,36,
29,39, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 29,36,
29,36, 29,36, 29,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,36, 30,36, 30,36,
30,36, 30,40, 30,36, 30,36,
30,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 31,36, 31,36, 31,36,
31,36, 31,41, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 31,36,
31,36, 31,36, 31,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,42, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 32,36, 32,36, 32,36,
32,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,43, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 33,36,
33,36, 33,36, 33,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,44, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 34,36, 34,36, 34,36,
34,36, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 0,0,
0,0, 0,0, 0,0, 0,0,
0,0, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 36,45,
36,45, 36,45, 36,45, 62,66,
73,75, 0,0, 0,0, 0,0,
0,0, 0,0, 0,0, 62,67,
73,76, 0,0, 0,0, 0,0,
0,0};
struct yysvf yysvec[] ={
0, 0, 0,
yycrank+-1, 0, 0,
yycrank+-2, yysvec+1, 0,
yycrank+0, 0, yyvstop+1,
yycrank+0, 0, yyvstop+3,
yycrank+0, 0, yyvstop+6,
yycrank+0, 0, yyvstop+8,
yycrank+2, 0, yyvstop+11,
yycrank+37, 0, yyvstop+14,
yycrank+16, yysvec+8, yyvstop+18,
yycrank+18, yysvec+8, yyvstop+22,
yycrank+19, yysvec+8, yyvstop+26,
yycrank+50, yysvec+8, yyvstop+30,
yycrank+62, yysvec+8, yyvstop+34,
yycrank+131, 0, yyvstop+38,
yycrank+0, yysvec+7, yyvstop+40,
yycrank+141, 0, yyvstop+42,
yycrank+199, yysvec+16, yyvstop+44,
yycrank+257, yysvec+16, yyvstop+47,
yycrank+315, yysvec+16, yyvstop+50,
yycrank+373, yysvec+16, yyvstop+53,
yycrank+431, yysvec+16, yyvstop+56,
yycrank+489, yysvec+16, yyvstop+59,
yycrank+547, yysvec+16, yyvstop+62,
yycrank+605, yysvec+16, yyvstop+65,
yycrank+680, 0, yyvstop+68,
yycrank+738, yysvec+25, yyvstop+70,
yycrank+796, yysvec+25, yyvstop+73,
yycrank+854, yysvec+25, yyvstop+76,
yycrank+912, yysvec+25, yyvstop+79,
yycrank+970, yysvec+25, yyvstop+82,
yycrank+1028, yysvec+25, yyvstop+85,
yycrank+1086, yysvec+25, yyvstop+88,
yycrank+1144, yysvec+25, yyvstop+91,
yycrank+1202, yysvec+25, yyvstop+94,
yycrank+0, 0, yyvstop+97,
yycrank+1260, 0, yyvstop+99,
yycrank+16, yysvec+36, yyvstop+102,
yycrank+62, yysvec+36, yyvstop+105,
yycrank+69, yysvec+36, yyvstop+108,
yycrank+0, yysvec+36, yyvstop+111,
yycrank+51, yysvec+36, yyvstop+115,
yycrank+66, yysvec+36, yyvstop+118,
yycrank+58, yysvec+36, yyvstop+121,
yycrank+68, yysvec+36, yyvstop+124,
yycrank+0, yysvec+36, yyvstop+127,
yycrank+53, yysvec+36, yyvstop+129,
yycrank+57, yysvec+36, yyvstop+131,
yycrank+57, 0, 0,
yycrank+57, yysvec+36, yyvstop+133,
yycrank+0, yysvec+36, yyvstop+135,
yycrank+68, yysvec+36, yyvstop+138,
yycrank+81, yysvec+36, yyvstop+140,
yycrank+63, yysvec+36, yyvstop+142,
yycrank+83, yysvec+36, yyvstop+144,
yycrank+95, 0, 0,
yycrank+0, yysvec+36, yyvstop+146,
yycrank+0, yysvec+36, yyvstop+149,
yycrank+92, 0, 0,
yycrank+101, yysvec+36, yyvstop+152,
yycrank+108, yysvec+36, yyvstop+154,
yycrank+82, 0, 0,
yycrank+1286, 0, 0,
yycrank+110, yysvec+36, yyvstop+156,
yycrank+130, 0, 0,
yycrank+132, 0, 0,
yycrank+114, 0, 0,
yycrank+125, 0, 0,
yycrank+127, 0, 0,
yycrank+140, 0, 0,
yycrank+0, 0, yyvstop+158,
yycrank+0, 0, yyvstop+160,
yycrank+0, 0, yyvstop+162,
yycrank+1287, 0, 0,
yycrank+191, 0, 0,
yycrank+171, 0, 0,
yycrank+182, 0, 0,
yycrank+177, 0, 0,
yycrank+0, 0, yyvstop+164,
yycrank+0, 0, yyvstop+166,
yycrank+183, 0, 0,
yycrank+181, 0, 0,
yycrank+0, 0, yyvstop+168,
0, 0, 0};
struct yywork *yytop = yycrank+1392;
struct yysvf *yybgin = yysvec+1;
char yymatch[] ={
00 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,011 ,012 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
011 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,
'0' ,'0' ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,'A' ,'B' ,'C' ,'B' ,'B' ,'B' ,'G' ,
'B' ,'I' ,'B' ,'B' ,'B' ,'B' ,'B' ,'B' ,
'B' ,'B' ,'B' ,'S' ,'B' ,'B' ,'B' ,'B' ,
'B' ,'B' ,'B' ,01 ,01 ,01 ,01 ,01 ,
01 ,'A' ,'B' ,'C' ,'B' ,'B' ,'B' ,'G' ,
'B' ,'I' ,'B' ,'B' ,'B' ,'B' ,'B' ,'B' ,
'B' ,'B' ,'B' ,'S' ,'B' ,'B' ,'B' ,'B' ,
'B' ,'B' ,'B' ,01 ,01 ,01 ,01 ,01 ,
0};
char yyextra[] ={
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0};
/* ncform 4.1 83/08/11 */
int yylineno =1;
# define YYU(x) x
# define NLSTATE yyprevious=YYNEWLINE
char yytext[YYLMAX];
struct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp;
char yysbuf[YYLMAX];
char *yysptr = yysbuf;
int *yyfnd;
extern struct yysvf *yyestate;
int yyprevious = YYNEWLINE;
yylook(){
register struct yysvf *yystate, **lsp;
register struct yywork *yyt;
struct yysvf *yyz;
int yych;
struct yywork *yyr;
# ifdef LEXDEBUG
int debug;
# endif
char *yylastch;
/* start off machines */
# ifdef LEXDEBUG
debug = 0;
# endif
if (!yymorfg)
yylastch = yytext;
else {
yymorfg=0;
yylastch = yytext+yyleng;
}
for(;;){
lsp = yylstate;
yyestate = yystate = yybgin;
if (yyprevious==YYNEWLINE) yystate++;
for (;;){
# ifdef LEXDEBUG
if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1);
# endif
yyt = yystate->yystoff;
if(yyt == yycrank){ /* may not be any transitions */
yyz = yystate->yyother;
if(yyz == 0)break;
if(yyz->yystoff == yycrank)break;
}
*yylastch++ = yych = input();
tryagain:
# ifdef LEXDEBUG
if(debug){
fprintf(yyout,"char ");
allprint(yych);
putchar('\n');
}
# endif
yyr = yyt;
if ( (int)yyt > (int)yycrank){
yyt = yyr + yych;
if (yyt <= yytop && yyt->verify+yysvec == yystate){
if(yyt->advance+yysvec == YYLERR) /* error transitions */
{unput(*--yylastch);break;}
*lsp++ = yystate = yyt->advance+yysvec;
goto contin;
}
}
# ifdef YYOPTIM
else if((int)yyt < (int)yycrank) { /* r < yycrank */
yyt = yyr = yycrank+(yycrank-yyt);
# ifdef LEXDEBUG
if(debug)fprintf(yyout,"compressed state\n");
# endif
yyt = yyt + yych;
if(yyt <= yytop && yyt->verify+yysvec == yystate){
if(yyt->advance+yysvec == YYLERR) /* error transitions */
{unput(*--yylastch);break;}
*lsp++ = yystate = yyt->advance+yysvec;
goto contin;
}
yyt = yyr + YYU(yymatch[yych]);
# ifdef LEXDEBUG
if(debug){
fprintf(yyout,"try fall back character ");
allprint(YYU(yymatch[yych]));
putchar('\n');
}
# endif
if(yyt <= yytop && yyt->verify+yysvec == yystate){
if(yyt->advance+yysvec == YYLERR) /* error transition */
{unput(*--yylastch);break;}
*lsp++ = yystate = yyt->advance+yysvec;
goto contin;
}
}
if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){
# ifdef LEXDEBUG
if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1);
# endif
goto tryagain;
}
# endif
else
{unput(*--yylastch);break;}
contin:
# ifdef LEXDEBUG
if(debug){
fprintf(yyout,"state %d char ",yystate-yysvec-1);
allprint(yych);
putchar('\n');
}
# endif
;
}
# ifdef LEXDEBUG
if(debug){
fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1);
allprint(yych);
putchar('\n');
}
# endif
while (lsp-- > yylstate){
*yylastch-- = 0;
if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){
yyolsp = lsp;
if(yyextra[*yyfnd]){ /* must backup */
while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){
lsp--;
unput(*yylastch--);
}
}
yyprevious = YYU(*yylastch);
yylsp = lsp;
yyleng = yylastch-yytext+1;
yytext[yyleng] = 0;
# ifdef LEXDEBUG
if(debug){
fprintf(yyout,"\nmatch ");
sprint(yytext);
fprintf(yyout," action %d\n",*yyfnd);
}
# endif
return(*yyfnd++);
}
unput(*yylastch);
}
if (yytext[0] == 0 /* && feof(yyin) */)
{
yysptr=yysbuf;
return(0);
}
yyprevious = yytext[0] = input();
if (yyprevious>0)
output(yyprevious);
yylastch=yytext;
# ifdef LEXDEBUG
if(debug)putchar('\n');
# endif
}
}
yyback(p, m)
int *p;
{
if (p==0) return(0);
while (*p)
{
if (*p++ == m)
return(1);
}
return(0);
}
/* the following are only used in the lex library */
yyinput(){
return(input());
}
yyoutput(c)
int c; {
output(c);
}
yyunput(c)
int c; {
unput(c);
}