Added On/Off options to the grammar, for parameters.
This commit is contained in:
parent
572acce581
commit
656478e3cc
2 changed files with 104 additions and 90 deletions
|
@ -27,8 +27,12 @@ Control |
|
|||
control |
|
||||
shift |
|
||||
Shift yylval = (int) strdup(yytext); return BINDING;
|
||||
on |
|
||||
On |
|
||||
true |
|
||||
True yylval = (int) strdup(yytext); return TRUE;
|
||||
Off |
|
||||
off |
|
||||
false |
|
||||
False yylval = (int) strdup(yytext); return FALSE;
|
||||
[0-9]+ yylval = (int) strdup(yytext); return NUMBER;
|
||||
|
|
|
@ -282,20 +282,20 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
|
|||
*yy_cp = '\0'; \
|
||||
yy_c_buf_p = yy_cp;
|
||||
|
||||
#define YY_NUM_RULES 29
|
||||
#define YY_END_OF_BUFFER 30
|
||||
static yyconst short int yy_accept[93] =
|
||||
#define YY_NUM_RULES 33
|
||||
#define YY_END_OF_BUFFER 34
|
||||
static yyconst short int yy_accept[99] =
|
||||
{ 0,
|
||||
0, 0, 30, 29, 28, 27, 29, 29, 4, 23,
|
||||
3, 25, 25, 25, 25, 25, 25, 25, 25, 25,
|
||||
25, 25, 25, 25, 1, 2, 28, 0, 0, 23,
|
||||
25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
|
||||
25, 25, 25, 24, 26, 25, 25, 25, 25, 25,
|
||||
25, 25, 25, 25, 25, 25, 25, 25, 25, 7,
|
||||
9, 11, 13, 25, 25, 20, 25, 25, 8, 10,
|
||||
12, 14, 25, 25, 19, 25, 22, 25, 18, 25,
|
||||
21, 25, 17, 25, 25, 25, 25, 15, 5, 16,
|
||||
6, 0
|
||||
0, 0, 34, 33, 32, 31, 33, 33, 4, 27,
|
||||
3, 29, 29, 29, 29, 29, 29, 29, 29, 29,
|
||||
29, 29, 29, 29, 1, 2, 32, 0, 0, 27,
|
||||
29, 29, 29, 29, 29, 20, 29, 29, 29, 29,
|
||||
29, 29, 29, 19, 29, 29, 29, 28, 30, 29,
|
||||
29, 29, 23, 29, 29, 29, 29, 29, 29, 24,
|
||||
29, 29, 29, 29, 29, 7, 9, 11, 13, 29,
|
||||
29, 22, 29, 29, 8, 10, 12, 14, 29, 29,
|
||||
21, 29, 26, 29, 18, 29, 25, 29, 17, 29,
|
||||
29, 29, 29, 15, 5, 16, 6, 0
|
||||
|
||||
} ;
|
||||
|
||||
|
@ -339,76 +339,78 @@ static yyconst int yy_meta[38] =
|
|||
3, 3, 3, 3, 3, 1, 1
|
||||
} ;
|
||||
|
||||
static yyconst short int yy_base[96] =
|
||||
static yyconst short int yy_base[102] =
|
||||
{ 0,
|
||||
0, 0, 116, 117, 113, 117, 0, 0, 117, 31,
|
||||
117, 0, 84, 93, 82, 80, 85, 77, 78, 87,
|
||||
76, 74, 79, 71, 117, 117, 100, 97, 97, 36,
|
||||
0, 70, 71, 75, 62, 69, 59, 64, 65, 69,
|
||||
56, 63, 53, 83, 117, 52, 52, 40, 58, 59,
|
||||
59, 47, 47, 44, 53, 54, 54, 44, 52, 0,
|
||||
0, 0, 0, 44, 39, 0, 40, 48, 0, 0,
|
||||
0, 0, 40, 35, 0, 38, 0, 38, 0, 36,
|
||||
0, 36, 0, 37, 30, 35, 27, 0, 0, 0,
|
||||
0, 117, 55, 58, 54
|
||||
0, 0, 122, 123, 119, 123, 0, 0, 123, 31,
|
||||
123, 0, 90, 99, 88, 19, 92, 84, 85, 94,
|
||||
83, 20, 87, 79, 123, 123, 108, 105, 105, 45,
|
||||
0, 78, 79, 83, 80, 0, 69, 76, 66, 71,
|
||||
72, 76, 73, 0, 62, 69, 59, 89, 123, 58,
|
||||
58, 49, 0, 64, 65, 65, 53, 53, 53, 0,
|
||||
59, 60, 60, 50, 58, 0, 0, 0, 0, 50,
|
||||
45, 0, 46, 54, 0, 0, 0, 0, 46, 41,
|
||||
0, 44, 0, 44, 0, 42, 0, 42, 0, 42,
|
||||
33, 20, 13, 0, 0, 0, 0, 123, 64, 67,
|
||||
|
||||
42
|
||||
} ;
|
||||
|
||||
static yyconst short int yy_def[96] =
|
||||
static yyconst short int yy_def[102] =
|
||||
{ 0,
|
||||
92, 1, 92, 92, 92, 92, 93, 94, 92, 95,
|
||||
92, 95, 95, 95, 95, 95, 95, 95, 95, 95,
|
||||
95, 95, 95, 95, 92, 92, 92, 93, 94, 95,
|
||||
95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
|
||||
95, 95, 95, 93, 92, 95, 95, 95, 95, 95,
|
||||
95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
|
||||
95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
|
||||
95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
|
||||
95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
|
||||
95, 0, 92, 92, 92
|
||||
98, 1, 98, 98, 98, 98, 99, 100, 98, 101,
|
||||
98, 101, 101, 101, 101, 101, 101, 101, 101, 101,
|
||||
101, 101, 101, 101, 98, 98, 98, 99, 100, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 99, 98, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
|
||||
101, 101, 101, 101, 101, 101, 101, 0, 98, 98,
|
||||
|
||||
98
|
||||
} ;
|
||||
|
||||
static yyconst short int yy_nxt[155] =
|
||||
static yyconst short int yy_nxt[161] =
|
||||
{ 0,
|
||||
4, 5, 6, 7, 8, 9, 10, 10, 10, 10,
|
||||
10, 11, 12, 13, 14, 15, 16, 17, 18, 12,
|
||||
19, 12, 12, 20, 12, 12, 12, 21, 12, 22,
|
||||
12, 12, 23, 24, 12, 25, 26, 30, 30, 30,
|
||||
30, 30, 30, 30, 30, 30, 30, 60, 61, 62,
|
||||
63, 69, 70, 71, 72, 28, 31, 28, 29, 91,
|
||||
29, 90, 89, 88, 87, 86, 85, 84, 83, 82,
|
||||
81, 80, 79, 78, 77, 76, 75, 74, 73, 68,
|
||||
67, 66, 65, 64, 59, 58, 44, 57, 56, 55,
|
||||
54, 53, 52, 51, 50, 49, 48, 47, 46, 45,
|
||||
30, 30, 35, 43, 31, 97, 96, 36, 44, 37,
|
||||
45, 30, 30, 30, 30, 30, 66, 67, 68, 69,
|
||||
75, 76, 77, 78, 28, 95, 28, 29, 94, 29,
|
||||
93, 92, 91, 90, 89, 88, 87, 86, 85, 84,
|
||||
83, 82, 81, 80, 79, 74, 73, 72, 71, 70,
|
||||
65, 64, 48, 63, 62, 61, 60, 59, 58, 57,
|
||||
|
||||
44, 27, 43, 42, 41, 40, 39, 38, 37, 36,
|
||||
35, 34, 33, 32, 27, 92, 3, 92, 92, 92,
|
||||
92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
|
||||
92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
|
||||
92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
|
||||
92, 92, 92, 92
|
||||
56, 55, 54, 53, 52, 51, 50, 49, 48, 27,
|
||||
47, 46, 42, 41, 40, 39, 38, 34, 33, 32,
|
||||
27, 98, 3, 98, 98, 98, 98, 98, 98, 98,
|
||||
98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
|
||||
98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
|
||||
98, 98, 98, 98, 98, 98, 98, 98, 98, 98
|
||||
} ;
|
||||
|
||||
static yyconst short int yy_chk[155] =
|
||||
static yyconst short int yy_chk[161] =
|
||||
{ 0,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 10, 10, 10,
|
||||
10, 10, 30, 30, 30, 30, 30, 48, 48, 48,
|
||||
48, 54, 54, 54, 54, 93, 95, 93, 94, 87,
|
||||
94, 86, 85, 84, 82, 80, 78, 76, 74, 73,
|
||||
68, 67, 65, 64, 59, 58, 57, 56, 55, 53,
|
||||
52, 51, 50, 49, 47, 46, 44, 43, 42, 41,
|
||||
40, 39, 38, 37, 36, 35, 34, 33, 32, 29,
|
||||
10, 10, 16, 22, 101, 93, 92, 16, 22, 16,
|
||||
22, 30, 30, 30, 30, 30, 52, 52, 52, 52,
|
||||
59, 59, 59, 59, 99, 91, 99, 100, 90, 100,
|
||||
88, 86, 84, 82, 80, 79, 74, 73, 71, 70,
|
||||
65, 64, 63, 62, 61, 58, 57, 56, 55, 54,
|
||||
51, 50, 48, 47, 46, 45, 43, 42, 41, 40,
|
||||
|
||||
28, 27, 24, 23, 22, 21, 20, 19, 18, 17,
|
||||
16, 15, 14, 13, 5, 3, 92, 92, 92, 92,
|
||||
92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
|
||||
92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
|
||||
92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
|
||||
92, 92, 92, 92
|
||||
39, 38, 37, 35, 34, 33, 32, 29, 28, 27,
|
||||
24, 23, 21, 20, 19, 18, 17, 15, 14, 13,
|
||||
5, 3, 98, 98, 98, 98, 98, 98, 98, 98,
|
||||
98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
|
||||
98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
|
||||
98, 98, 98, 98, 98, 98, 98, 98, 98, 98
|
||||
} ;
|
||||
|
||||
static yy_state_type yy_last_accepting_state;
|
||||
|
@ -431,7 +433,7 @@ char *yytext;
|
|||
|
||||
extern YYSTYPE yylval;
|
||||
|
||||
#line 435 "lex.yy.c"
|
||||
#line 437 "lex.yy.c"
|
||||
|
||||
/* Macros after this point can all be overridden by user definitions in
|
||||
* section 1.
|
||||
|
@ -585,7 +587,7 @@ YY_DECL
|
|||
#line 10 "epist.l"
|
||||
|
||||
|
||||
#line 589 "lex.yy.c"
|
||||
#line 591 "lex.yy.c"
|
||||
|
||||
if ( yy_init )
|
||||
{
|
||||
|
@ -636,13 +638,13 @@ yy_match:
|
|||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||
{
|
||||
yy_current_state = (int) yy_def[yy_current_state];
|
||||
if ( yy_current_state >= 93 )
|
||||
if ( yy_current_state >= 99 )
|
||||
yy_c = yy_meta[(unsigned int) yy_c];
|
||||
}
|
||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||
++yy_cp;
|
||||
}
|
||||
while ( yy_base[yy_current_state] != 117 );
|
||||
while ( yy_base[yy_current_state] != 123 );
|
||||
|
||||
yy_find_action:
|
||||
yy_act = yy_accept[yy_current_state];
|
||||
|
@ -725,53 +727,61 @@ yylval = (int) strdup(yytext); return BINDING;
|
|||
case 19:
|
||||
#line 31 "epist.l"
|
||||
case 20:
|
||||
YY_RULE_SETUP
|
||||
#line 31 "epist.l"
|
||||
yylval = (int) strdup(yytext); return TRUE;
|
||||
YY_BREAK
|
||||
#line 32 "epist.l"
|
||||
case 21:
|
||||
#line 33 "epist.l"
|
||||
case 22:
|
||||
YY_RULE_SETUP
|
||||
#line 33 "epist.l"
|
||||
yylval = (int) strdup(yytext); return FALSE;
|
||||
yylval = (int) strdup(yytext); return TRUE;
|
||||
YY_BREAK
|
||||
case 23:
|
||||
YY_RULE_SETUP
|
||||
#line 34 "epist.l"
|
||||
yylval = (int) strdup(yytext); return NUMBER;
|
||||
YY_BREAK
|
||||
case 24:
|
||||
YY_RULE_SETUP
|
||||
#line 35 "epist.l"
|
||||
yylval = (int) strdup(yytext); return QUOTES;
|
||||
YY_BREAK
|
||||
case 25:
|
||||
YY_RULE_SETUP
|
||||
case 24:
|
||||
#line 36 "epist.l"
|
||||
yylval = (int) strdup(yytext); return WORD;
|
||||
YY_BREAK
|
||||
case 25:
|
||||
#line 37 "epist.l"
|
||||
case 26:
|
||||
YY_RULE_SETUP
|
||||
#line 37 "epist.l"
|
||||
/* ignore */
|
||||
yylval = (int) strdup(yytext); return FALSE;
|
||||
YY_BREAK
|
||||
case 27:
|
||||
YY_RULE_SETUP
|
||||
#line 38 "epist.l"
|
||||
/* ignore */
|
||||
yylval = (int) strdup(yytext); return NUMBER;
|
||||
YY_BREAK
|
||||
case 28:
|
||||
YY_RULE_SETUP
|
||||
#line 39 "epist.l"
|
||||
/* */
|
||||
yylval = (int) strdup(yytext); return QUOTES;
|
||||
YY_BREAK
|
||||
case 29:
|
||||
YY_RULE_SETUP
|
||||
#line 40 "epist.l"
|
||||
yylval = (int) strdup(yytext); return WORD;
|
||||
YY_BREAK
|
||||
case 30:
|
||||
YY_RULE_SETUP
|
||||
#line 41 "epist.l"
|
||||
/* ignore */
|
||||
YY_BREAK
|
||||
case 31:
|
||||
YY_RULE_SETUP
|
||||
#line 42 "epist.l"
|
||||
/* ignore */
|
||||
YY_BREAK
|
||||
case 32:
|
||||
YY_RULE_SETUP
|
||||
#line 43 "epist.l"
|
||||
/* */
|
||||
YY_BREAK
|
||||
case 33:
|
||||
YY_RULE_SETUP
|
||||
#line 44 "epist.l"
|
||||
ECHO;
|
||||
YY_BREAK
|
||||
#line 775 "lex.yy.c"
|
||||
#line 785 "lex.yy.c"
|
||||
case YY_STATE_EOF(INITIAL):
|
||||
yyterminate();
|
||||
|
||||
|
@ -1063,7 +1073,7 @@ static yy_state_type yy_get_previous_state()
|
|||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||
{
|
||||
yy_current_state = (int) yy_def[yy_current_state];
|
||||
if ( yy_current_state >= 93 )
|
||||
if ( yy_current_state >= 99 )
|
||||
yy_c = yy_meta[(unsigned int) yy_c];
|
||||
}
|
||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||
|
@ -1098,11 +1108,11 @@ yy_state_type yy_current_state;
|
|||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||
{
|
||||
yy_current_state = (int) yy_def[yy_current_state];
|
||||
if ( yy_current_state >= 93 )
|
||||
if ( yy_current_state >= 99 )
|
||||
yy_c = yy_meta[(unsigned int) yy_c];
|
||||
}
|
||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||
yy_is_jam = (yy_current_state == 92);
|
||||
yy_is_jam = (yy_current_state == 98);
|
||||
|
||||
return yy_is_jam ? 0 : yy_current_state;
|
||||
}
|
||||
|
@ -1657,6 +1667,6 @@ int main()
|
|||
return 0;
|
||||
}
|
||||
#endif
|
||||
#line 40 "epist.l"
|
||||
#line 44 "epist.l"
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue