1
0
Fork 0

slightly simplified grammar

This commit is contained in:
Jan Steemann 2012-05-10 11:33:39 +02:00
parent cfe1c27aa0
commit 3aa30004f6
2 changed files with 128 additions and 133 deletions

View File

@ -460,7 +460,7 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 3
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 368
#define YYLAST 341
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 52
@ -469,7 +469,7 @@ union yyalloc
/* YYNRULES -- Number of rules. */
#define YYNRULES 100
/* YYNRULES -- Number of states. */
#define YYNSTATES 163
#define YYNSTATES 161
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
@ -520,16 +520,16 @@ static const yytype_uint8 yytranslate[] =
static const yytype_uint16 yyprhs[] =
{
0, 0, 3, 4, 8, 9, 12, 14, 16, 18,
20, 22, 24, 29, 32, 39, 40, 45, 47, 51,
55, 57, 58, 61, 62, 66, 68, 72, 75, 76,
78, 80, 83, 88, 91, 95, 99, 101, 103, 105,
106, 112, 114, 116, 118, 121, 124, 127, 131, 135,
139, 143, 147, 151, 155, 159, 163, 167, 171, 175,
179, 183, 189, 190, 192, 194, 198, 200, 202, 203,
208, 209, 211, 213, 217, 218, 223, 224, 226, 228,
232, 236, 238, 243, 250, 254, 256, 261, 265, 267,
269, 271, 273, 275, 277, 279, 281, 283, 285, 287,
289
20, 22, 24, 29, 32, 37, 38, 43, 45, 49,
53, 55, 56, 59, 60, 64, 66, 70, 73, 74,
76, 78, 81, 86, 89, 93, 97, 99, 101, 103,
104, 110, 112, 114, 116, 119, 122, 125, 129, 133,
137, 141, 145, 149, 153, 157, 161, 165, 169, 173,
177, 181, 187, 188, 190, 192, 196, 198, 200, 201,
206, 207, 209, 211, 215, 216, 221, 222, 224, 226,
230, 234, 236, 241, 248, 252, 254, 259, 263, 265,
267, 269, 271, 273, 275, 277, 279, 281, 283, 285,
287
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
@ -538,33 +538,32 @@ static const yytype_int8 yyrhs[] =
53, 0, -1, -1, 54, 55, 71, -1, -1, 55,
56, -1, 57, -1, 59, -1, 58, -1, 60, -1,
65, -1, 70, -1, 3, 95, 12, 72, -1, 5,
72, -1, 4, 95, 21, 39, 72, 40, -1, -1,
7, 61, 62, 64, -1, 63, -1, 62, 38, 63,
-1, 95, 21, 72, -1, 72, -1, -1, 13, 95,
-1, -1, 8, 66, 67, -1, 68, -1, 67, 38,
68, -1, 72, 69, -1, -1, 10, -1, 11, -1,
9, 96, -1, 9, 96, 38, 96, -1, 6, 72,
-1, 39, 72, 40, -1, 39, 53, 40, -1, 74,
-1, 75, -1, 76, -1, -1, 17, 73, 39, 77,
40, -1, 79, -1, 91, -1, 89, -1, 31, 72,
-1, 32, 72, -1, 22, 72, -1, 72, 24, 72,
-1, 72, 23, 72, -1, 72, 31, 72, -1, 72,
32, 72, -1, 72, 33, 72, -1, 72, 34, 72,
-1, 72, 35, 72, -1, 72, 25, 72, -1, 72,
26, 72, -1, 72, 27, 72, -1, 72, 28, 72,
-1, 72, 29, 72, -1, 72, 30, 72, -1, 72,
12, 72, -1, 72, 36, 72, 37, 72, -1, -1,
78, -1, 72, -1, 78, 38, 72, -1, 80, -1,
84, -1, -1, 43, 81, 82, 44, -1, -1, 83,
-1, 72, -1, 83, 38, 72, -1, -1, 41, 85,
86, 42, -1, -1, 87, -1, 88, -1, 87, 38,
88, -1, 94, 37, 72, -1, 17, -1, 89, 43,
72, 44, -1, 89, 43, 33, 44, 50, 90, -1,
89, 50, 17, -1, 17, -1, 90, 43, 72, 44,
-1, 90, 50, 17, -1, 92, -1, 93, -1, 18,
-1, 19, -1, 14, -1, 15, -1, 16, -1, 20,
-1, 17, -1, 18, -1, 17, -1, 19, -1, 51,
19, -1
72, -1, 4, 95, 21, 72, -1, -1, 7, 61,
62, 64, -1, 63, -1, 62, 38, 63, -1, 95,
21, 72, -1, 72, -1, -1, 13, 95, -1, -1,
8, 66, 67, -1, 68, -1, 67, 38, 68, -1,
72, 69, -1, -1, 10, -1, 11, -1, 9, 96,
-1, 9, 96, 38, 96, -1, 6, 72, -1, 39,
72, 40, -1, 39, 53, 40, -1, 74, -1, 75,
-1, 76, -1, -1, 17, 73, 39, 77, 40, -1,
79, -1, 91, -1, 89, -1, 31, 72, -1, 32,
72, -1, 22, 72, -1, 72, 24, 72, -1, 72,
23, 72, -1, 72, 31, 72, -1, 72, 32, 72,
-1, 72, 33, 72, -1, 72, 34, 72, -1, 72,
35, 72, -1, 72, 25, 72, -1, 72, 26, 72,
-1, 72, 27, 72, -1, 72, 28, 72, -1, 72,
29, 72, -1, 72, 30, 72, -1, 72, 12, 72,
-1, 72, 36, 72, 37, 72, -1, -1, 78, -1,
72, -1, 78, 38, 72, -1, 80, -1, 84, -1,
-1, 43, 81, 82, 44, -1, -1, 83, -1, 72,
-1, 83, 38, 72, -1, -1, 41, 85, 86, 42,
-1, -1, 87, -1, 88, -1, 87, 38, 88, -1,
94, 37, 72, -1, 17, -1, 89, 43, 72, 44,
-1, 89, 43, 33, 44, 50, 90, -1, 89, 50,
17, -1, 17, -1, 90, 43, 72, 44, -1, 90,
50, 17, -1, 92, -1, 93, -1, 18, -1, 19,
-1, 14, -1, 15, -1, 16, -1, 20, -1, 17,
-1, 18, -1, 17, -1, 19, -1, 51, 19, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
@ -651,7 +650,7 @@ static const yytype_uint8 yyr1[] =
static const yytype_uint8 yyr2[] =
{
0, 2, 0, 3, 0, 2, 1, 1, 1, 1,
1, 1, 4, 2, 6, 0, 4, 1, 3, 3,
1, 1, 4, 2, 4, 0, 4, 1, 3, 3,
1, 0, 2, 0, 3, 1, 3, 2, 0, 1,
1, 2, 4, 2, 3, 3, 1, 1, 1, 0,
5, 1, 1, 1, 2, 2, 2, 3, 3, 3,
@ -677,14 +676,14 @@ static const yytype_uint8 yydefact[] =
0, 76, 70, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
81, 21, 17, 20, 0, 24, 25, 28, 100, 0,
12, 0, 62, 35, 34, 96, 97, 0, 77, 78,
12, 14, 62, 35, 34, 96, 97, 0, 77, 78,
0, 72, 0, 71, 60, 48, 47, 54, 55, 56,
57, 58, 59, 49, 50, 51, 52, 53, 0, 0,
0, 84, 0, 0, 16, 0, 0, 29, 30, 27,
32, 0, 64, 0, 63, 75, 0, 0, 69, 0,
0, 0, 82, 22, 18, 19, 26, 14, 40, 0,
79, 80, 73, 61, 0, 65, 85, 83, 0, 0,
0, 87, 86
32, 64, 0, 63, 75, 0, 0, 69, 0, 0,
0, 82, 22, 18, 19, 26, 40, 0, 79, 80,
73, 61, 0, 65, 85, 83, 0, 0, 0, 87,
86
};
/* YYDEFGOTO[NTERM-NUM]. */
@ -692,8 +691,8 @@ static const yytype_int16 yydefgoto[] =
{
-1, 1, 2, 4, 12, 13, 14, 15, 16, 48,
81, 82, 124, 17, 49, 85, 86, 129, 18, 19,
83, 55, 37, 38, 39, 133, 134, 40, 41, 62,
102, 103, 42, 61, 97, 98, 99, 43, 157, 44,
83, 55, 37, 38, 39, 132, 133, 40, 41, 62,
102, 103, 42, 61, 97, 98, 99, 43, 155, 44,
45, 46, 100, 84, 52
};
@ -702,33 +701,33 @@ static const yytype_int16 yydefgoto[] =
#define YYPACT_NINF -39
static const yytype_int16 yypact[] =
{
-39, 7, -39, -39, 73, -9, -9, 130, 130, -39,
-39, 7, -39, -39, 97, -9, -9, 128, 128, -39,
-39, -10, -39, -39, -39, -39, -39, -39, -39, -39,
-39, -1, -11, -39, -39, -39, -22, -39, -39, -39,
130, 130, 130, 130, -39, -39, 284, -39, -39, -39,
-39, -39, -39, -38, -39, -39, -39, 284, 160, 130,
-39, 0, -17, 130, 6, 8, -39, -39, -39, -18,
181, -3, 130, 130, 130, 130, 130, 130, 130, 130,
130, 130, 130, 130, 130, 130, 130, 130, 95, 27,
-19, 5, -39, 284, 33, 45, -39, 233, -39, -10,
284, 130, 130, -39, -39, -39, -39, 58, 64, -39,
66, 284, 57, 67, 220, 321, 309, 333, 333, 18,
18, 18, 18, 39, 39, -39, -39, -39, 258, 60,
4, -39, -9, 160, -39, 130, 130, -39, -39, -39,
-39, 206, 284, 68, 78, -39, -3, 130, -39, 130,
130, 56, -39, -39, -39, 284, -39, -39, -39, 130,
-39, 284, 284, 284, 104, 284, -39, -37, 130, 105,
63, -39, -39
128, 128, 128, 128, -39, -39, 257, -39, -39, -39,
-39, -39, -39, -38, -39, -39, -39, 257, 158, 128,
-39, 0, -17, 128, 128, 6, -39, -39, -39, -18,
179, -3, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 94, 27,
-19, 5, -39, 257, 33, 77, -39, 206, -39, -10,
257, 257, 128, -39, -39, -39, -39, 75, 83, -39,
85, 257, 79, 86, 49, 294, 282, 306, 306, 18,
18, 18, 18, 39, 39, -39, -39, -39, 231, 84,
4, -39, -9, 158, -39, 128, 128, -39, -39, -39,
-39, 257, 90, 96, -39, -3, 128, -39, 128, 128,
88, -39, -39, -39, 257, -39, -39, 128, -39, 257,
257, 257, 119, 257, -39, -37, 128, 122, 63, -39,
-39
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int8 yypgoto[] =
{
-39, 90, -39, -39, -39, -39, -39, -39, -39, -39,
-39, 1, -39, -39, -39, -39, 3, -39, -39, -39,
-39, 108, -39, -39, -39, -39, -39, -39, -39, -39,
-39, 28, -39, -39, -39, -39, 26, -39, -39, -39,
-7, -39, -39, -39, -39, -39, -39, -39, -39, -39,
-39, -39, -39, -39, -39, -39, -5, -39, -39, -39,
-39, -39, -39, -2, 36
-39, -39, -39, -39, -39, -39, 19, -39, -39, -39,
-39, -39, -39, -2, 64
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
@ -737,43 +736,41 @@ static const yytype_int8 yypgoto[] =
#define YYTABLE_NINF -99
static const yytype_int16 yytable[] =
{
36, 47, -98, 21, 22, 78, 158, 3, 20, 50,
54, 53, 79, 159, 95, 96, 63, -39, 122, 88,
36, 47, -98, 21, 22, 78, 156, 3, 20, 50,
54, 53, 79, 157, 95, 96, 63, -39, 122, 88,
-39, 89, 93, 56, 57, 58, 60, 64, 65, 66,
67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
77, 51, 87, 123, 121, 91, 90, 92, 142, 72,
77, 51, 87, 123, 121, 92, 90, 91, 141, 72,
73, 74, 75, 76, 125, 101, 104, 105, 106, 107,
108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
118, 120, 74, 75, 76, 63, 5, 6, 7, 8,
9, 10, 11, 126, 131, 132, 64, 65, 66, 67,
118, 120, 74, 75, 76, 63, 68, 69, 70, 71,
72, 73, 74, 75, 76, 131, 64, 65, 66, 67,
68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
135, 138, 136, 137, 141, 139, 154, 162, 148, 23,
24, 25, 26, 27, 28, 29, 149, 30, 145, 87,
143, 156, 161, 59, 144, 130, 31, 32, 119, 146,
151, 150, 152, 153, 33, 0, 34, 0, 35, 0,
0, 0, 155, 0, 23, 24, 25, 26, 27, 28,
29, 160, 30, 0, 0, 0, 0, 0, 0, 0,
0, 31, 32, 0, 0, 0, 0, 0, 0, 33,
0, 34, 0, 35, 23, 24, 25, 80, 27, 28,
29, 0, 30, 0, 0, 0, 0, 0, 0, 0,
0, 31, 32, 63, 0, 0, 0, 0, 0, 33,
0, 34, 0, 35, 64, 65, 66, 67, 68, 69,
70, 71, 72, 73, 74, 75, 76, 77, 63, 0,
0, 94, 0, 0, 0, 0, 0, 0, 0, 64,
5, 6, 7, 8, 9, 10, 11, 160, 23, 24,
25, 26, 27, 28, 29, 126, 30, 134, 144, 87,
142, 135, 136, 137, 138, 31, 32, 119, 140, 149,
146, 150, 151, 33, 147, 34, 154, 35, 152, 159,
153, 59, 23, 24, 25, 26, 27, 28, 29, 158,
30, 143, 145, 130, 148, 0, 0, 0, 0, 31,
32, 0, 0, 0, 0, 0, 0, 33, 0, 34,
0, 35, 23, 24, 25, 80, 27, 28, 29, 0,
30, 0, 0, 0, 0, 0, 0, 0, 0, 31,
32, 63, 0, 0, 0, 0, 0, 33, 0, 34,
0, 35, 64, 65, 66, 67, 68, 69, 70, 71,
72, 73, 74, 75, 76, 77, 127, 128, 63, 94,
0, 0, 0, 0, 0, 0, 0, 0, 0, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 127, 128, 63, 147, 68, 69, 70,
71, 72, 73, 74, 75, 76, 64, 65, 66, 67,
68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
63, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 64, 65, 66, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 140, 63, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 64, 65, 66,
75, 76, 77, 63, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 64, 65, 66, 67, 68, 69,
70, 71, 72, 73, 74, 75, 76, 77, 139, 63,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
74, 75, 76, 77, 63, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 64, 63, 66, 67, 68,
69, 70, 71, 72, 73, 74, 75, 76, 63, 66,
67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
77, 63, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 64, 63, 66, 67, 68, 69, 70, 71,
72, 73, 74, 75, 76, 63, 66, 67, 68, 69,
70, 71, 72, 73, 74, 75, 76, 0, 0, 0,
68, 69, 70, 71, 72, 73, 74, 75, 76
0, 0, 0, 68, 69, 70, 71, 72, 73, 74,
75, 76
};
#define yypact_value_is_default(yystate) \
@ -788,39 +785,37 @@ static const yytype_int16 yycheck[] =
21, 12, 50, 50, 17, 18, 12, 39, 13, 19,
39, 38, 40, 30, 31, 32, 33, 23, 24, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 51, 49, 38, 17, 39, 53, 39, 44, 31,
36, 51, 49, 38, 17, 39, 53, 54, 44, 31,
32, 33, 34, 35, 21, 62, 63, 64, 65, 66,
67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
77, 78, 33, 34, 35, 12, 3, 4, 5, 6,
7, 8, 9, 38, 91, 92, 23, 24, 25, 26,
77, 78, 33, 34, 35, 12, 27, 28, 29, 30,
31, 32, 33, 34, 35, 92, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
42, 44, 38, 37, 44, 38, 50, 44, 40, 14,
15, 16, 17, 18, 19, 20, 38, 22, 125, 126,
122, 17, 17, 33, 123, 89, 31, 32, 33, 126,
137, 136, 139, 140, 39, -1, 41, -1, 43, -1,
-1, -1, 149, -1, 14, 15, 16, 17, 18, 19,
20, 158, 22, -1, -1, -1, -1, -1, -1, -1,
-1, 31, 32, -1, -1, -1, -1, -1, -1, 39,
-1, 41, -1, 43, 14, 15, 16, 17, 18, 19,
20, -1, 22, -1, -1, -1, -1, -1, -1, -1,
-1, 31, 32, 12, -1, -1, -1, -1, -1, 39,
-1, 41, -1, 43, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 12, -1,
-1, 40, -1, -1, -1, -1, -1, -1, -1, 23,
3, 4, 5, 6, 7, 8, 9, 44, 14, 15,
16, 17, 18, 19, 20, 38, 22, 42, 125, 126,
122, 38, 37, 44, 38, 31, 32, 33, 44, 136,
40, 138, 139, 39, 38, 41, 17, 43, 50, 17,
147, 33, 14, 15, 16, 17, 18, 19, 20, 156,
22, 123, 126, 89, 135, -1, -1, -1, -1, 31,
32, -1, -1, -1, -1, -1, -1, 39, -1, 41,
-1, 43, 14, 15, 16, 17, 18, 19, 20, -1,
22, -1, -1, -1, -1, -1, -1, -1, -1, 31,
32, 12, -1, -1, -1, -1, -1, 39, -1, 41,
-1, 43, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 10, 11, 12, 40,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 23,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 10, 11, 12, 40, 27, 28, 29,
30, 31, 32, 33, 34, 35, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
12, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 23, 24, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 12, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 23, 24, 25,
34, 35, 36, 12, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 12,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 12, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 23, 12, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 12, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 12, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 23, 12, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 12, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, -1, -1, -1,
27, 28, 29, 30, 31, 32, 33, 34, 35
-1, -1, -1, 27, 28, 29, 30, 31, 32, 33,
34, 35
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@ -836,14 +831,14 @@ static const yytype_uint8 yystos[] =
72, 85, 81, 12, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 43, 50,
17, 62, 63, 72, 95, 67, 68, 72, 19, 38,
72, 39, 39, 40, 40, 17, 18, 86, 87, 88,
72, 72, 39, 40, 40, 17, 18, 86, 87, 88,
94, 72, 82, 83, 72, 72, 72, 72, 72, 72,
72, 72, 72, 72, 72, 72, 72, 72, 72, 33,
72, 17, 13, 38, 64, 21, 38, 10, 11, 69,
96, 72, 72, 77, 78, 42, 38, 37, 44, 38,
37, 44, 44, 95, 63, 72, 68, 40, 40, 38,
88, 72, 72, 72, 50, 72, 17, 90, 43, 50,
72, 17, 44
96, 72, 77, 78, 42, 38, 37, 44, 38, 37,
44, 44, 95, 63, 72, 68, 40, 38, 88, 72,
72, 72, 50, 72, 17, 90, 43, 50, 72, 17,
44
};
#define yyerrok (yyerrstatus = 0)
@ -1855,7 +1850,7 @@ yyreduce:
/* Line 1806 of yacc.c */
#line 245 "Ahuacatl/ahuacatl-grammar.y"
{
TRI_aql_node_t* node = TRI_CreateNodeLetAql(context, (yyvsp[(2) - (6)].strval), (yyvsp[(5) - (6)].node));
TRI_aql_node_t* node = TRI_CreateNodeLetAql(context, (yyvsp[(2) - (4)].strval), (yyvsp[(4) - (4)].node));
if (!node) {
ABORT_OOM
}
@ -2949,7 +2944,7 @@ yyreduce:
/* Line 1806 of yacc.c */
#line 2953 "Ahuacatl/ahuacatl-grammar.c"
#line 2948 "Ahuacatl/ahuacatl-grammar.c"
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires

View File

@ -242,8 +242,8 @@ filter_statement:
;
let_statement:
T_LET variable_name T_ASSIGN T_OPEN expression T_CLOSE {
TRI_aql_node_t* node = TRI_CreateNodeLetAql(context, $2, $5);
T_LET variable_name T_ASSIGN expression {
TRI_aql_node_t* node = TRI_CreateNodeLetAql(context, $2, $4);
if (!node) {
ABORT_OOM
}