Fixed if .. else

master
Yevgen Muntyan 2006-04-27 01:56:58 -05:00
parent 4d8cc1302f
commit cdd7a54c8b
1 changed files with 347 additions and 323 deletions

View File

@ -685,16 +685,16 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */ /* YYFINAL -- State number of the termination state. */
#define YYFINAL 52 #define YYFINAL 52
/* YYLAST -- Last index in YYTABLE. */ /* YYLAST -- Last index in YYTABLE. */
#define YYLAST 876 #define YYLAST 968
/* YYNTOKENS -- Number of terminals. */ /* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 50 #define YYNTOKENS 50
/* YYNNTS -- Number of nonterminals. */ /* YYNNTS -- Number of nonterminals. */
#define YYNNTS 17 #define YYNNTS 17
/* YYNRULES -- Number of rules. */ /* YYNRULES -- Number of rules. */
#define YYNRULES 70 #define YYNRULES 71
/* YYNRULES -- Number of states. */ /* YYNRULES -- Number of states. */
#define YYNSTATES 151 #define YYNSTATES 154
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2 #define YYUNDEFTOK 2
@ -744,12 +744,12 @@ static const unsigned short int yyprhs[] =
{ {
0, 0, 3, 5, 7, 10, 13, 16, 18, 19, 0, 0, 3, 5, 7, 10, 13, 16, 18, 19,
21, 23, 25, 27, 29, 31, 33, 36, 42, 47, 21, 23, 25, 27, 29, 31, 33, 36, 42, 47,
55, 61, 68, 77, 82, 88, 90, 92, 94, 98, 55, 61, 69, 76, 85, 90, 96, 98, 100, 102,
105, 112, 118, 124, 128, 132, 136, 140, 144, 148, 106, 113, 120, 126, 132, 136, 140, 144, 148, 152,
152, 156, 160, 164, 168, 172, 175, 178, 181, 185, 156, 160, 164, 168, 172, 176, 180, 183, 186, 189,
189, 191, 193, 195, 199, 203, 207, 211, 215, 219, 193, 197, 199, 201, 203, 207, 211, 215, 219, 223,
225, 230, 235, 239, 240, 242, 246, 247, 249, 253, 227, 233, 238, 243, 247, 248, 250, 254, 255, 257,
257 261, 265
}; };
/* YYRHS -- A `-1'-separated list of the rules' RHS. */ /* YYRHS -- A `-1'-separated list of the rules' RHS. */
@ -761,26 +761,27 @@ static const yysigned_char yyrhs[] =
-1, 20, -1, 20, 58, -1, 13, 58, 14, 52, -1, 20, -1, 20, 58, -1, 13, 58, 14, 52,
15, -1, 14, 52, 13, 58, -1, 16, 66, 17, 15, -1, 14, 52, 13, 58, -1, 16, 66, 17,
58, 14, 52, 15, -1, 8, 58, 9, 52, 12, 58, 14, 52, 15, -1, 8, 58, 9, 52, 12,
-1, 8, 58, 9, 52, 57, 12, -1, 8, 58, -1, 8, 58, 9, 52, 10, 52, 12, -1, 8,
9, 52, 57, 10, 52, 12, -1, 11, 58, 9, 58, 9, 52, 57, 12, -1, 8, 58, 9, 52,
52, -1, 57, 11, 58, 9, 52, -1, 62, -1, 57, 10, 52, 12, -1, 11, 58, 9, 52, -1,
61, -1, 60, -1, 3, 39, 58, -1, 62, 40, 57, 11, 58, 9, 52, -1, 62, -1, 61, -1,
58, 41, 39, 58, -1, 62, 40, 1, 41, 39, 60, -1, 3, 39, 58, -1, 62, 40, 58, 41,
58, -1, 62, 42, 3, 39, 58, -1, 62, 43, 39, 58, -1, 62, 40, 1, 41, 39, 58, -1,
62, 44, 62, -1, 58, 31, 58, -1, 58, 30, 62, 42, 3, 39, 58, -1, 62, 43, 62, 44,
58, -1, 58, 33, 58, -1, 58, 32, 58, -1, 62, -1, 58, 31, 58, -1, 58, 30, 58, -1,
58, 25, 58, -1, 58, 26, 58, -1, 58, 21, 58, 33, 58, -1, 58, 32, 58, -1, 58, 25,
58, -1, 58, 22, 58, -1, 58, 35, 58, -1, 58, -1, 58, 26, 58, -1, 58, 21, 58, -1,
58, 36, 58, -1, 58, 23, 58, -1, 58, 24, 58, 22, 58, -1, 58, 35, 58, -1, 58, 36,
58, -1, 30, 62, -1, 27, 62, -1, 37, 62, 58, -1, 58, 23, 58, -1, 58, 24, 58, -1,
-1, 62, 34, 62, -1, 62, 17, 62, -1, 7, 30, 62, -1, 27, 62, -1, 37, 62, -1, 62,
-1, 4, -1, 66, -1, 45, 54, 46, -1, 45, 34, 62, -1, 62, 17, 62, -1, 7, -1, 4,
1, 46, -1, 40, 63, 41, -1, 40, 1, 41, -1, 66, -1, 45, 54, 46, -1, 45, 1, 46,
-1, 47, 64, 48, -1, 47, 1, 48, -1, 40, -1, 40, 63, 41, -1, 40, 1, 41, -1, 47,
58, 29, 58, 41, -1, 62, 45, 63, 46, -1, 64, 48, -1, 47, 1, 48, -1, 40, 58, 29,
62, 40, 58, 41, -1, 62, 42, 3, -1, -1, 58, 41, -1, 62, 45, 63, 46, -1, 62, 40,
58, -1, 63, 49, 58, -1, -1, 65, -1, 64, 58, 41, -1, 62, 42, 3, -1, -1, 58, -1,
49, 65, -1, 3, 39, 58, -1, 3, -1 63, 49, 58, -1, -1, 65, -1, 64, 49, 65,
-1, 3, 39, 58, -1, 3, -1
}; };
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
@ -788,12 +789,12 @@ static const unsigned short int yyrline[] =
{ {
0, 413, 413, 416, 417, 421, 422, 423, 426, 427, 0, 413, 413, 416, 417, 421, 422, 423, 426, 427,
428, 429, 430, 431, 432, 433, 434, 437, 438, 439, 428, 429, 430, 431, 432, 433, 434, 437, 438, 439,
443, 444, 445, 450, 451, 454, 455, 456, 460, 461, 443, 444, 445, 446, 451, 452, 455, 456, 457, 461,
462, 463, 466, 470, 471, 472, 473, 475, 476, 478, 462, 463, 464, 467, 471, 472, 473, 474, 476, 477,
479, 480, 481, 482, 483, 484, 485, 486, 487, 489, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 490, 494, 495, 496, 497, 498, 499, 500, 501, 502,
503, 504, 505, 508, 509, 510, 513, 514, 515, 518, 503, 504, 505, 506, 509, 510, 511, 514, 515, 516,
521 519, 522
}; };
#endif #endif
@ -832,12 +833,12 @@ static const unsigned char yyr1[] =
{ {
0, 50, 51, 52, 52, 53, 53, 53, 54, 54, 0, 50, 51, 52, 52, 53, 53, 53, 54, 54,
54, 54, 54, 54, 54, 54, 54, 55, 55, 55, 54, 54, 54, 54, 54, 54, 54, 55, 55, 55,
56, 56, 56, 57, 57, 58, 58, 58, 59, 59, 56, 56, 56, 56, 57, 57, 58, 58, 58, 59,
59, 59, 60, 61, 61, 61, 61, 61, 61, 61, 59, 59, 59, 60, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 61, 62, 62, 62, 62, 62, 62, 62, 62, 62,
62, 62, 62, 63, 63, 63, 64, 64, 64, 65, 62, 62, 62, 62, 63, 63, 63, 64, 64, 64,
66 65, 66
}; };
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
@ -845,12 +846,12 @@ static const unsigned char yyr2[] =
{ {
0, 2, 1, 1, 2, 2, 2, 1, 0, 1, 0, 2, 1, 1, 2, 2, 2, 1, 0, 1,
1, 1, 1, 1, 1, 1, 2, 5, 4, 7, 1, 1, 1, 1, 1, 1, 2, 5, 4, 7,
5, 6, 8, 4, 5, 1, 1, 1, 3, 6, 5, 7, 6, 8, 4, 5, 1, 1, 1, 3,
6, 5, 5, 3, 3, 3, 3, 3, 3, 3, 6, 6, 5, 5, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 3,
1, 1, 1, 3, 3, 3, 3, 3, 3, 5, 3, 1, 1, 1, 3, 3, 3, 3, 3, 3,
4, 4, 3, 0, 1, 3, 0, 1, 3, 3, 5, 4, 4, 3, 0, 1, 3, 0, 1, 3,
1 3, 1
}; };
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@ -858,28 +859,28 @@ static const unsigned char yyr2[] =
means the default is an error. */ means the default is an error. */
static const unsigned char yydefact[] = static const unsigned char yydefact[] =
{ {
0, 0, 70, 51, 7, 50, 0, 0, 0, 0, 0, 0, 71, 52, 7, 51, 0, 0, 0, 0,
13, 14, 15, 0, 0, 0, 0, 0, 0, 0, 13, 14, 15, 0, 0, 0, 0, 0, 0, 0,
0, 3, 0, 11, 10, 9, 12, 27, 26, 25, 0, 3, 0, 11, 10, 9, 12, 28, 27, 26,
52, 5, 0, 70, 0, 25, 0, 0, 0, 16, 53, 5, 0, 71, 0, 26, 0, 0, 0, 16,
46, 45, 47, 0, 64, 0, 0, 0, 0, 0, 47, 46, 48, 0, 65, 0, 0, 0, 0, 0,
0, 67, 1, 4, 6, 0, 0, 0, 0, 0, 0, 68, 1, 4, 6, 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, 63, 28, 0, 0, 0, 0, 0, 0, 0, 0, 64, 29, 0, 0, 0, 0, 0, 0,
56, 0, 55, 0, 54, 53, 58, 0, 57, 0, 57, 0, 56, 0, 55, 54, 59, 0, 58, 0,
39, 40, 43, 44, 37, 38, 34, 33, 36, 35, 40, 41, 44, 45, 38, 39, 35, 34, 37, 36,
41, 42, 49, 48, 0, 0, 62, 0, 64, 0, 42, 43, 50, 49, 0, 0, 63, 0, 65, 0,
0, 0, 62, 0, 18, 0, 0, 65, 69, 68, 0, 0, 63, 0, 18, 0, 0, 66, 70, 69,
0, 61, 0, 0, 60, 0, 20, 0, 61, 17, 0, 62, 0, 0, 61, 0, 0, 20, 0, 62,
0, 59, 0, 0, 31, 32, 0, 0, 0, 21, 17, 0, 60, 0, 0, 32, 33, 0, 0, 0,
0, 30, 29, 0, 0, 0, 19, 0, 22, 0, 0, 22, 0, 31, 30, 21, 0, 0, 0, 19,
0 0, 23, 0, 0
}; };
/* YYDEFGOTO[NTERM-NUM]. */ /* YYDEFGOTO[NTERM-NUM]. */
static const yysigned_char yydefgoto[] = static const short int yydefgoto[] =
{ {
-1, 19, 20, 21, 22, 23, 24, 127, 25, 26, -1, 19, 20, 21, 22, 23, 24, 128, 25, 26,
27, 28, 35, 45, 50, 51, 30 27, 28, 35, 45, 50, 51, 30
}; };
@ -888,218 +889,236 @@ static const yysigned_char yydefgoto[] =
#define YYPACT_NINF -41 #define YYPACT_NINF -41
static const short int yypact[] = static const short int yypact[] =
{ {
515, -36, -32, -41, -41, -41, 39, 39, 515, 9, 578, -36, -33, -41, -41, -41, 700, 700, 578, 9,
-41, -41, 39, 15, 15, 15, 150, 605, 2, 16, -41, -41, 700, 15, 15, 15, 168, 668, 2, 16,
200, -41, -8, -41, -41, 824, -41, -41, -41, -11, 218, -41, -14, -41, -41, 900, -41, -41, -41, -13,
-41, -41, 39, -41, 653, -7, 709, 560, 24, 824, -41, -41, 700, -41, 729, 14, 785, 623, 19, 900,
19, 19, 19, 3, 808, -40, 7, 17, 10, 36, -17, -17, -17, -15, 884, -40, -2, 1, 4, 7,
-23, -41, -41, -41, -41, 39, 39, 39, 39, 39, -38, -41, -41, -41, -41, 700, 700, 700, 700, 700,
39, 39, 39, 39, 39, 39, 39, 15, 15, 626, 700, 700, 700, 700, 700, 700, 700, 15, 15, 689,
69, 15, 39, 824, 515, 39, 75, 515, 39, 39, 50, 15, 700, 900, 578, 700, 55, 578, 700, 700,
-41, 39, -41, 39, -41, -41, -41, 39, -41, 80, -41, 700, -41, 700, -41, -41, -41, 700, -41, 58,
22, 22, 22, 22, -41, 60, 840, 840, 138, 138, 8, 8, 8, 8, -41, 41, 916, 916, 932, 932,
22, 22, 19, 19, 46, 745, 61, 12, 824, -25, 8, 8, -17, -17, 22, 821, 30, 38, 900, -11,
335, 766, -41, 380, 709, 729, 787, 824, 824, -41, 263, 842, -41, 398, 785, 805, 863, 900, 900, -41,
64, 67, 39, 15, -41, 39, -41, 70, -41, -41, 36, 40, 700, 15, -41, 578, 700, -41, 31, -41,
515, -41, 39, 39, 824, 19, 671, 515, 39, -41, -41, 578, -41, 700, 700, 900, -17, 443, 747, 578,
425, 824, 824, 515, 470, 689, -41, 245, -41, 515, 700, -41, 488, 900, 900, -41, 578, 533, 765, -41,
290 308, -41, 578, 353
}; };
/* YYPGOTO[NTERM-NUM]. */ /* YYPGOTO[NTERM-NUM]. */
static const yysigned_char yypgoto[] = static const yysigned_char yypgoto[] =
{ {
-41, -41, -4, -9, 90, -41, -41, -41, 33, -41, -41, -41, -1, 44, 53, -41, -41, -41, 33, -41,
-41, -41, 0, 37, -41, 26, 108 -41, -41, 0, 12, -41, -4, 63
}; };
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule which positive, shift that token. If negative, reduce the rule which
number is the opposite. If zero, do what YYDEFACT says. number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */ If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -67 #define YYTABLE_NINF -68
static const short int yytable[] = static const short int yytable[] =
{ {
29, 82, 31, 48, 37, 49, 67, 32, 29, 83, 29, 82, 31, 48, 67, 49, 32, 37, 29, 83,
67, 53, 33, 40, 41, 42, 52, 29, 33, 3, 88, 89, 33, 40, 41, 42, 52, 29, 33, 3,
29, 124, 5, 68, 83, 88, 89, 68, 53, 69, 29, 68, 5, 75, 54, 76, 80, 69, 72, 70,
54, 70, 71, 75, 72, 76, 71, 29, 72, 34, 71, 67, 72, 59, 60, 124, 79, 29, 83, 34,
36, 79, 33, 3, 80, 39, 5, 59, 60, 44, 36, 139, 140, 141, 84, 39, 87, 85, 68, 44,
-66, -66, 75, 84, 76, 16, 123, 72, 86, 75, -67, -67, 86, 106, 75, 16, 76, 71, 112, 72,
17, 76, 18, 85, 72, 73, 13, 102, 103, 14, 17, 49, 18, 120, 53, 73, 59, 102, 103, 122,
110, 107, 106, 113, 29, 87, 15, 29, 112, 16, 47, 107, 38, 110, 29, 133, 113, 29, 75, 134,
137, 138, 139, 49, 17, 59, 18, 120, 90, 91, 76, 53, 123, 72, 109, 119, 0, 0, 90, 91,
92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
122, 53, 105, 132, 53, 108, 133, 47, 111, 109, 0, 0, 105, 0, 0, 108, 0, 0, 111, 0,
29, 114, 115, 29, 116, 119, 117, 38, 0, 0, 29, 114, 115, 29, 116, 0, 117, 0, 0, 0,
118, 0, 0, 135, 0, 0, 140, 0, 0, 0, 118, 0, 0, 136, 137, 29, 0, 0, 0, 0,
29, 53, 0, 144, 0, 53, 0, 29, 53, 147, 142, 29, 0, 0, 0, 0, 0, 29, 147, 29,
29, 53, 0, 29, 29, 150, 0, 29, 0, 29, 0, 0, 29, 0, 0, 150, 29, 29, 0, 0,
29, 43, 0, 33, 3, 134, 0, 5, 136, 55, 29, 153, 29, 29, 53, 135, 0, 53, 0, 138,
56, 57, 58, 59, 60, 141, 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 143, 144, 0, 43,
0, 145, 0, 65, 66, 0, 0, 13, 0, 0, 0, 33, 3, 148, 0, 5, 0, 0, 0, 0,
14, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 53, 0, 0, 0, 0, 53, 0, 0, 0,
16, -63, 0, 0, 0, 17, 0, 18, 0, -63, 0, 53, 0, 0, 53, 13, 0, 53, 14, 0,
-2, 1, 0, 2, 3, 0, 4, 5, 6, 0, 0, 0, 0, 0, 0, 15, 0, 0, 16, -64,
0, 0, 0, 7, 8, 0, 9, 0, 10, 11, 0, 0, 0, 17, 0, 18, 0, -64, -2, 1,
12, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 2, 3, 0, 4, 5, 6, 0, 0, 0,
14, 0, 0, 0, 0, 0, 0, 15, -8, 0, 0, 7, 8, 0, 9, 0, 10, 11, 12, 0,
16, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 0, 0, 0, 0, 13, 0, 0, 14, 0,
0, 4, 5, 6, 0, -23, -23, -23, 7, 8, 0, 0, 0, 0, 0, 15, -8, 0, 16, 0,
0, 9, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 4,
0, 0, 13, 0, 0, 14, 0, 0, 0, 0, 5, 6, 0, 125, 126, 127, 7, 8, 0, 9,
0, 0, 15, -8, 0, 16, 0, 0, 0, 0, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0,
17, 1, 18, 2, 3, 0, 4, 5, 6, 0, 13, 0, 0, 14, 0, 0, 0, 0, 0, 0,
-24, -24, -24, 7, 8, 0, 9, 0, 10, 11, 15, -8, 0, 16, 0, 0, 0, 0, 17, 1,
12, 0, 0, 0, 0, 0, 0, 13, 0, 0, 18, 2, 3, 0, 4, 5, 6, 0, -24, -24,
14, 0, 0, 0, 0, 0, 0, 15, -8, 0, -24, 7, 8, 0, 9, 0, 10, 11, 12, 0,
16, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 0, 0, 0, 0, 13, 0, 0, 14, 0,
0, 4, 5, 6, 0, 0, 125, 126, 7, 8, 0, 0, 0, 0, 0, 15, -8, 0, 16, 0,
0, 9, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 4,
0, 0, 13, 0, 0, 14, 0, 0, 0, 0, 5, 6, 0, -25, -25, -25, 7, 8, 0, 9,
0, 0, 15, -8, 0, 16, 0, 0, 0, 0, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0,
17, 1, 18, 2, 3, 0, 4, 5, 6, 0, 13, 0, 0, 14, 0, 0, 0, 0, 0, 0,
0, 0, 0, 7, 8, 129, 9, 0, 10, 11, 15, -8, 0, 16, 0, 0, 0, 0, 17, 1,
12, 0, 0, 0, 0, 0, 0, 13, 0, 0, 18, 2, 3, 0, 4, 5, 6, 0, 0, 0,
14, 0, 0, 0, 0, 0, 0, 15, -8, 0, 0, 7, 8, 130, 9, 0, 10, 11, 12, 0,
16, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 0, 0, 0, 0, 13, 0, 0, 14, 0,
0, 4, 5, 6, 0, 0, 0, 0, 7, 8, 0, 0, 0, 0, 0, 15, -8, 0, 16, 0,
146, 9, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 4,
0, 0, 13, 0, 0, 14, 0, 0, 0, 0, 5, 6, 0, 0, 0, 145, 7, 8, 0, 9,
0, 0, 15, -8, 0, 16, 0, 0, 0, 0, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0,
17, 1, 18, 2, 3, 0, 4, 5, 6, 0, 13, 0, 0, 14, 0, 0, 0, 0, 0, 0,
0, 0, 148, 7, 8, 0, 9, 0, 10, 11, 15, -8, 0, 16, 0, 0, 0, 0, 17, 1,
12, 0, 0, 0, 0, 0, 0, 13, 0, 0, 18, 2, 3, 0, 4, 5, 6, 0, 0, 0,
14, 0, 0, 0, 0, 0, 0, 15, -8, 0, 0, 7, 8, 149, 9, 0, 10, 11, 12, 0,
16, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 0, 0, 0, 0, 13, 0, 0, 14, 0,
0, 4, 5, 6, 0, 0, 0, 0, 7, 8, 0, 0, 0, 0, 0, 15, -8, 0, 16, 0,
0, 9, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0, 0, 17, 1, 18, 2, 3, 0, 4,
0, 0, 13, 0, 0, 14, 0, 0, 0, 0, 5, 6, 0, 0, 0, 151, 7, 8, 0, 9,
0, 0, 15, -8, 0, 16, 0, 0, 0, 0, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0,
17, 1, 18, 2, 3, 0, 4, 5, 6, 0, 13, 0, 0, 14, 0, 0, 0, 0, 0, 0,
0, 0, 0, 78, 8, 0, 9, 0, 10, 11, 15, -8, 0, 16, 0, 0, 0, 0, 17, 1,
12, 0, 0, 0, 0, 0, 0, 13, 0, 0, 18, 2, 3, 0, 4, 5, 6, 0, 0, 0,
14, 0, 0, 0, 0, 0, 0, 15, -8, 0, 0, 7, 8, 0, 9, 0, 10, 11, 12, 0,
16, 0, 0, 0, 0, 17, 46, 18, 2, 3, 0, 0, 0, 0, 0, 13, 0, 0, 14, 0,
0, 0, 5, 6, 0, 0, 0, 0, 7, 8, 0, 0, 0, 0, 0, 15, -8, 0, 16, 0,
0, 9, 0, 10, 11, 12, 0, 104, 0, 33, 0, 0, 0, 17, 1, 18, 2, 3, 0, 4,
3, 0, 13, 5, 0, 14, 0, 0, 0, 0, 5, 6, 0, 0, 0, 0, 78, 8, 0, 9,
0, 0, 15, 0, 0, 16, 0, 0, 0, 0, 0, 10, 11, 12, 0, 0, 0, 0, 0, 0,
17, -8, 18, 13, 0, 0, 14, 0, 0, 0, 13, 0, 0, 14, 0, 0, 0, 0, 0, 0,
0, 0, 74, 15, 0, 0, 16, 0, 0, 0, 15, -8, 0, 16, 0, 0, 0, 0, 17, 46,
0, 17, 0, 18, 55, 56, 57, 58, 59, 60, 18, 2, 3, 0, 0, 5, 6, 0, 0, 0,
143, 0, 0, 61, 62, 63, 64, 0, 65, 66, 0, 7, 8, 0, 9, 0, 10, 11, 12, 0,
0, 0, 55, 56, 57, 58, 59, 60, 149, 0, 104, 0, 33, 3, 0, 13, 5, 0, 14, 0,
0, 61, 62, 63, 64, 0, 65, 66, 0, 0, 0, 0, 0, 33, 3, 15, 0, 5, 16, 0,
55, 56, 57, 58, 59, 60, 0, 0, 0, 61, 0, 0, 0, 17, -8, 18, 13, 0, 0, 14,
62, 63, 64, 77, 65, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 13, 0, 16,
55, 56, 57, 58, 59, 60, 0, 0, 0, 61, 14, 0, 0, 0, 17, 0, 18, 15, 74, 0,
62, 63, 64, 130, 65, 66, 0, 0, 0, 0, 16, 0, 0, 0, 0, 17, 0, 18, 0, 0,
55, 56, 57, 58, 59, 60, 0, 0, 0, 61, 55, 56, 57, 58, 59, 60, 146, 0, 0, 61,
62, 63, 64, 0, 65, 66, 55, 56, 57, 58, 62, 63, 64, 0, 65, 66, 0, 0, 55, 56,
57, 58, 59, 60, 152, 0, 0, 61, 62, 63,
64, 0, 65, 66, 0, 0, 55, 56, 57, 58,
59, 60, 0, 0, 0, 61, 62, 63, 64, 77,
65, 66, 0, 0, 0, 0, 55, 56, 57, 58,
59, 60, 0, 0, 0, 61, 62, 63, 64, 131,
65, 66, 0, 0, 0, 0, 55, 56, 57, 58,
59, 60, 0, 0, 0, 61, 62, 63, 64, 0, 59, 60, 0, 0, 0, 61, 62, 63, 64, 0,
65, 66, 0, 0, 0, 0, 121, 55, 56, 57, 65, 66, 55, 56, 57, 58, 59, 60, 0, 0,
58, 59, 60, 0, 0, 0, 61, 62, 63, 64, 0, 61, 62, 63, 64, 0, 65, 66, 0, 0,
0, 65, 66, 0, 0, 0, 0, 128, 55, 56, 0, 0, 121, 55, 56, 57, 58, 59, 60, 0,
57, 58, 59, 60, 0, 0, 0, 61, 62, 63, 0, 0, 61, 62, 63, 64, 0, 65, 66, 0,
64, 0, 65, 66, 0, 0, 0, 0, 131, 55, 0, 0, 0, 129, 55, 56, 57, 58, 59, 60,
56, 57, 58, 59, 60, 0, 0, 81, 61, 62, 0, 0, 0, 61, 62, 63, 64, 0, 65, 66,
63, 64, 0, 65, 66, 55, 56, 57, 58, 59, 0, 0, 0, 0, 132, 55, 56, 57, 58, 59,
60, 0, 0, 0, 61, 62, 63, 64, 0, 65, 60, 0, 0, 81, 61, 62, 63, 64, 0, 65,
66, 55, 56, 57, 58, 59, 60, 0, 0, 0, 66, 55, 56, 57, 58, 59, 60, 0, 0, 0,
0, 0, 63, 64, 0, 65, 66 61, 62, 63, 64, 0, 65, 66, 55, 56, 57,
58, 59, 60, 0, 0, 0, 0, 0, 63, 64,
0, 65, 66, 55, 56, 57, 58, 59, 60, 0,
0, 0, 0, 0, 0, 0, 0, 65, 66
}; };
static const short int yycheck[] = static const short int yycheck[] =
{ {
0, 41, 38, 1, 8, 3, 17, 39, 8, 49, 0, 41, 38, 1, 17, 3, 39, 8, 8, 49,
17, 20, 3, 13, 14, 15, 0, 17, 3, 4, 48, 49, 3, 13, 14, 15, 0, 17, 3, 4,
20, 46, 7, 34, 49, 48, 49, 34, 37, 40, 20, 34, 7, 40, 38, 42, 41, 40, 45, 42,
38, 42, 43, 40, 45, 42, 43, 37, 45, 6, 43, 17, 45, 25, 26, 46, 17, 37, 49, 6,
7, 17, 3, 4, 41, 12, 7, 25, 26, 16, 7, 10, 11, 12, 46, 12, 39, 46, 34, 16,
48, 49, 40, 46, 42, 40, 44, 45, 48, 40, 48, 49, 48, 3, 40, 40, 42, 43, 3, 45,
45, 42, 47, 46, 45, 32, 27, 67, 68, 30, 45, 3, 47, 41, 20, 32, 25, 67, 68, 39,
74, 71, 3, 77, 74, 39, 37, 77, 3, 40, 17, 71, 9, 74, 74, 39, 77, 77, 40, 39,
10, 11, 12, 3, 45, 25, 47, 41, 55, 56, 42, 37, 44, 45, 72, 89, -1, -1, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
39, 110, 69, 39, 113, 72, 39, 17, 75, 72, -1, -1, 69, -1, -1, 72, -1, -1, 75, -1,
110, 78, 79, 113, 81, 89, 83, 9, -1, -1, 110, 78, 79, 113, 81, -1, 83, -1, -1, -1,
87, -1, -1, 123, -1, -1, 130, -1, -1, -1, 87, -1, -1, 123, 125, 125, -1, -1, -1, -1,
130, 140, -1, 137, -1, 144, -1, 137, 147, 143, 131, 131, -1, -1, -1, -1, -1, 137, 139, 139,
140, 150, -1, 143, 144, 149, -1, 147, -1, 149, -1, -1, 142, -1, -1, 146, 146, 147, -1, -1,
150, 1, -1, 3, 4, 122, -1, 7, 125, 21, 150, 152, 152, 153, 110, 122, -1, 113, -1, 126,
22, 23, 24, 25, 26, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 133, 134, -1, 1,
-1, 138, -1, 35, 36, -1, -1, 27, -1, -1, -1, 3, 4, 140, -1, 7, -1, -1, -1, -1,
30, -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, 137, -1, -1, -1, -1, 142, -1, -1, -1,
40, 41, -1, -1, -1, 45, -1, 47, -1, 49, -1, 147, -1, -1, 150, 27, -1, 153, 30, -1,
0, 1, -1, 3, 4, -1, 6, 7, 8, -1, -1, -1, -1, -1, -1, 37, -1, -1, 40, 41,
-1, -1, -1, 13, 14, -1, 16, -1, 18, 19, -1, -1, -1, 45, -1, 47, -1, 49, 0, 1,
20, -1, -1, -1, -1, -1, -1, 27, -1, -1, -1, 3, 4, -1, 6, 7, 8, -1, -1, -1,
30, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 13, 14, -1, 16, -1, 18, 19, 20, -1,
40, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, -1, -1, -1, -1, 27, -1, -1, 30, -1,
-1, 6, 7, 8, -1, 10, 11, 12, 13, 14, -1, -1, -1, -1, -1, 37, 38, -1, 40, -1,
-1, 16, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, 6,
-1, -1, 27, -1, -1, 30, -1, -1, -1, -1, 7, 8, -1, 10, 11, 12, 13, 14, -1, 16,
-1, -1, 37, 38, -1, 40, -1, -1, -1, -1, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1,
45, 1, 47, 3, 4, -1, 6, 7, 8, -1, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1,
10, 11, 12, 13, 14, -1, 16, -1, 18, 19, 37, 38, -1, 40, -1, -1, -1, -1, 45, 1,
20, -1, -1, -1, -1, -1, -1, 27, -1, -1, 47, 3, 4, -1, 6, 7, 8, -1, 10, 11,
30, -1, -1, -1, -1, -1, -1, 37, 38, -1, 12, 13, 14, -1, 16, -1, 18, 19, 20, -1,
40, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, -1, -1, -1, -1, 27, -1, -1, 30, -1,
-1, 6, 7, 8, -1, -1, 11, 12, 13, 14, -1, -1, -1, -1, -1, 37, 38, -1, 40, -1,
-1, 16, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, 6,
-1, -1, 27, -1, -1, 30, -1, -1, -1, -1, 7, 8, -1, 10, 11, 12, 13, 14, -1, 16,
-1, -1, 37, 38, -1, 40, -1, -1, -1, -1, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1,
45, 1, 47, 3, 4, -1, 6, 7, 8, -1, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 13, 14, 15, 16, -1, 18, 19, 37, 38, -1, 40, -1, -1, -1, -1, 45, 1,
20, -1, -1, -1, -1, -1, -1, 27, -1, -1, 47, 3, 4, -1, 6, 7, 8, -1, -1, -1,
30, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 13, 14, 15, 16, -1, 18, 19, 20, -1,
40, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, -1, -1, -1, -1, 27, -1, -1, 30, -1,
-1, 6, 7, 8, -1, -1, -1, -1, 13, 14, -1, -1, -1, -1, -1, 37, 38, -1, 40, -1,
15, 16, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, 6,
-1, -1, 27, -1, -1, 30, -1, -1, -1, -1, 7, 8, -1, -1, -1, 12, 13, 14, -1, 16,
-1, -1, 37, 38, -1, 40, -1, -1, -1, -1, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1,
45, 1, 47, 3, 4, -1, 6, 7, 8, -1, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1,
-1, -1, 12, 13, 14, -1, 16, -1, 18, 19, 37, 38, -1, 40, -1, -1, -1, -1, 45, 1,
20, -1, -1, -1, -1, -1, -1, 27, -1, -1, 47, 3, 4, -1, 6, 7, 8, -1, -1, -1,
30, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 13, 14, 15, 16, -1, 18, 19, 20, -1,
40, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, -1, -1, -1, -1, 27, -1, -1, 30, -1,
-1, 6, 7, 8, -1, -1, -1, -1, 13, 14, -1, -1, -1, -1, -1, 37, 38, -1, 40, -1,
-1, 16, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, 6,
-1, -1, 27, -1, -1, 30, -1, -1, -1, -1, 7, 8, -1, -1, -1, 12, 13, 14, -1, 16,
-1, -1, 37, 38, -1, 40, -1, -1, -1, -1, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1,
45, 1, 47, 3, 4, -1, 6, 7, 8, -1, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 13, 14, -1, 16, -1, 18, 19, 37, 38, -1, 40, -1, -1, -1, -1, 45, 1,
20, -1, -1, -1, -1, -1, -1, 27, -1, -1, 47, 3, 4, -1, 6, 7, 8, -1, -1, -1,
30, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 13, 14, -1, 16, -1, 18, 19, 20, -1,
40, -1, -1, -1, -1, 45, 1, 47, 3, 4, -1, -1, -1, -1, -1, 27, -1, -1, 30, -1,
-1, -1, 7, 8, -1, -1, -1, -1, 13, 14, -1, -1, -1, -1, -1, 37, 38, -1, 40, -1,
-1, 16, -1, 18, 19, 20, -1, 1, -1, 3, -1, -1, -1, 45, 1, 47, 3, 4, -1, 6,
4, -1, 27, 7, -1, 30, -1, -1, -1, -1, 7, 8, -1, -1, -1, -1, 13, 14, -1, 16,
-1, -1, 37, -1, -1, 40, -1, -1, -1, -1, -1, 18, 19, 20, -1, -1, -1, -1, -1, -1,
45, 46, 47, 27, -1, -1, 30, -1, -1, -1, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1,
-1, -1, 9, 37, -1, -1, 40, -1, -1, -1, 37, 38, -1, 40, -1, -1, -1, -1, 45, 1,
-1, 45, -1, 47, 21, 22, 23, 24, 25, 26, 47, 3, 4, -1, -1, 7, 8, -1, -1, -1,
9, -1, -1, 30, 31, 32, 33, -1, 35, 36, -1, 13, 14, -1, 16, -1, 18, 19, 20, -1,
-1, -1, 21, 22, 23, 24, 25, 26, 9, -1, 1, -1, 3, 4, -1, 27, 7, -1, 30, -1,
-1, 30, 31, 32, 33, -1, 35, 36, -1, -1, -1, -1, -1, 3, 4, 37, -1, 7, 40, -1,
21, 22, 23, 24, 25, 26, -1, -1, -1, 30, -1, -1, -1, 45, 46, 47, 27, -1, -1, 30,
31, 32, 33, 14, 35, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, 27, -1, 40,
21, 22, 23, 24, 25, 26, -1, -1, -1, 30, 30, -1, -1, -1, 45, -1, 47, 37, 9, -1,
31, 32, 33, 14, 35, 36, -1, -1, -1, -1, 40, -1, -1, -1, -1, 45, -1, 47, -1, -1,
21, 22, 23, 24, 25, 26, -1, -1, -1, 30, 21, 22, 23, 24, 25, 26, 9, -1, -1, 30,
31, 32, 33, -1, 35, 36, 21, 22, 23, 24, 31, 32, 33, -1, 35, 36, -1, -1, 21, 22,
23, 24, 25, 26, 9, -1, -1, 30, 31, 32,
33, -1, 35, 36, -1, -1, 21, 22, 23, 24,
25, 26, -1, -1, -1, 30, 31, 32, 33, 14,
35, 36, -1, -1, -1, -1, 21, 22, 23, 24,
25, 26, -1, -1, -1, 30, 31, 32, 33, 14,
35, 36, -1, -1, -1, -1, 21, 22, 23, 24,
25, 26, -1, -1, -1, 30, 31, 32, 33, -1, 25, 26, -1, -1, -1, 30, 31, 32, 33, -1,
35, 36, -1, -1, -1, -1, 41, 21, 22, 23, 35, 36, 21, 22, 23, 24, 25, 26, -1, -1,
24, 25, 26, -1, -1, -1, 30, 31, 32, 33, -1, 30, 31, 32, 33, -1, 35, 36, -1, -1,
-1, 35, 36, -1, -1, -1, -1, 41, 21, 22, -1, -1, 41, 21, 22, 23, 24, 25, 26, -1,
23, 24, 25, 26, -1, -1, -1, 30, 31, 32, -1, -1, 30, 31, 32, 33, -1, 35, 36, -1,
33, -1, 35, 36, -1, -1, -1, -1, 41, 21, -1, -1, -1, 41, 21, 22, 23, 24, 25, 26,
22, 23, 24, 25, 26, -1, -1, 29, 30, 31, -1, -1, -1, 30, 31, 32, 33, -1, 35, 36,
32, 33, -1, 35, 36, 21, 22, 23, 24, 25, -1, -1, -1, -1, 41, 21, 22, 23, 24, 25,
26, -1, -1, -1, 30, 31, 32, 33, -1, 35, 26, -1, -1, 29, 30, 31, 32, 33, -1, 35,
36, 21, 22, 23, 24, 25, 26, -1, -1, -1, 36, 21, 22, 23, 24, 25, 26, -1, -1, -1,
-1, -1, 32, 33, -1, 35, 36 30, 31, 32, 33, -1, 35, 36, 21, 22, 23,
24, 25, 26, -1, -1, -1, -1, -1, 32, 33,
-1, 35, 36, 21, 22, 23, 24, 25, 26, -1,
-1, -1, -1, -1, -1, -1, -1, 35, 36
}; };
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@ -1118,10 +1137,10 @@ static const unsigned char yystos[] =
58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
58, 58, 62, 62, 1, 58, 3, 62, 58, 63, 58, 58, 62, 62, 1, 58, 3, 62, 58, 63,
52, 58, 3, 52, 58, 58, 58, 58, 58, 65, 52, 58, 3, 52, 58, 58, 58, 58, 58, 65,
41, 41, 39, 44, 46, 11, 12, 57, 41, 15, 41, 41, 39, 44, 46, 10, 11, 12, 57, 41,
14, 41, 39, 39, 58, 62, 58, 10, 11, 12, 15, 14, 41, 39, 39, 58, 62, 52, 58, 10,
52, 58, 58, 9, 52, 58, 15, 52, 12, 9, 11, 12, 52, 58, 58, 12, 9, 52, 58, 15,
52 52, 12, 9, 52
}; };
#define yyerrok (yyerrstatus = 0) #define yyerrok (yyerrstatus = 0)
@ -1323,7 +1342,7 @@ int yydebug;
# define YYMAXDEPTH 10000 # define YYMAXDEPTH 10000
#endif #endif
#if YYERROR_VERBOSE #if YYERROR_VERBOSE
@ -1426,7 +1445,7 @@ yytnamerr (char *yyres, const char *yystr)
#endif /* YYERROR_VERBOSE */ #endif /* YYERROR_VERBOSE */
#if YYDEBUG #if YYDEBUG
/*--------------------------------. /*--------------------------------.
@ -1495,7 +1514,7 @@ yydestruct (yymsg, yytype, yyvaluep)
break; break;
} }
} }
/* Prevent warnings from -Wmissing-prototypes. */ /* Prevent warnings from -Wmissing-prototypes. */
@ -1867,231 +1886,236 @@ yyreduce:
case 21: case 21:
#line 444 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 444 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_if_else (parser, (yyvsp[-4].node), (yyvsp[-2].node), MS_NODE_LIST ((yyvsp[-1].node)), NULL); ;} { (yyval.node) = node_if_else (parser, (yyvsp[-5].node), (yyvsp[-3].node), NULL, (yyvsp[-1].node)); ;}
break; break;
case 22: case 22:
#line 446 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 445 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_if_else (parser, (yyvsp[-6].node), (yyvsp[-4].node), MS_NODE_LIST ((yyvsp[-3].node)), (yyvsp[-1].node)); ;} { (yyval.node) = node_if_else (parser, (yyvsp[-4].node), (yyvsp[-2].node), MS_NODE_LIST ((yyvsp[-1].node)), NULL); ;}
break; break;
case 23: case 23:
#line 450 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 447 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_list_add (parser, NULL, node_condition (parser, (yyvsp[-2].node), (yyvsp[0].node))); ;} { (yyval.node) = node_if_else (parser, (yyvsp[-6].node), (yyvsp[-4].node), MS_NODE_LIST ((yyvsp[-3].node)), (yyvsp[-1].node)); ;}
break; break;
case 24: case 24:
#line 451 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 451 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_list_add (parser, MS_NODE_LIST ((yyvsp[-4].node)), node_condition (parser, (yyvsp[-2].node), (yyvsp[0].node))); ;} { (yyval.node) = node_list_add (parser, NULL, node_condition (parser, (yyvsp[-2].node), (yyvsp[0].node))); ;}
break; break;
case 28: case 25:
#line 460 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 452 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_assignment (parser, (yyvsp[-2].str), (yyvsp[0].node)); ;} { (yyval.node) = node_list_add (parser, MS_NODE_LIST ((yyvsp[-4].node)), node_condition (parser, (yyvsp[-2].node), (yyvsp[0].node))); ;}
break; break;
case 29: case 29:
#line 461 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 461 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_set_item (parser, (yyvsp[-5].node), (yyvsp[-3].node), (yyvsp[0].node)); ;} { (yyval.node) = node_assignment (parser, (yyvsp[-2].str), (yyvsp[0].node)); ;}
break; break;
case 30: case 30:
#line 462 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 462 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = NULL; ;} { (yyval.node) = node_set_item (parser, (yyvsp[-5].node), (yyvsp[-3].node), (yyvsp[0].node)); ;}
break; break;
case 31: case 31:
#line 463 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 463 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_dict_assign (parser, (yyvsp[-4].node), (yyvsp[-2].str), (yyvsp[0].node)); ;} { (yyval.node) = NULL; ;}
break; break;
case 32: case 32:
#line 466 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 464 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_if_else (parser, (yyvsp[-4].node), (yyvsp[-2].node), NULL, (yyvsp[0].node)); ;} { (yyval.node) = node_dict_assign (parser, (yyvsp[-4].node), (yyvsp[-2].str), (yyvsp[0].node)); ;}
break; break;
case 33: case 33:
#line 470 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 467 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_PLUS, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_if_else (parser, (yyvsp[-4].node), (yyvsp[-2].node), NULL, (yyvsp[0].node)); ;}
break; break;
case 34: case 34:
#line 471 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 471 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_MINUS, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_PLUS, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 35: case 35:
#line 472 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 472 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_DIV, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_MINUS, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 36: case 36:
#line 473 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 473 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_MULT, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_DIV, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 37: case 37:
#line 475 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 474 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_AND, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_MULT, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 38: case 38:
#line 476 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 476 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_OR, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_AND, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 39: case 39:
#line 478 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 477 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_EQ, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_OR, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 40: case 40:
#line 479 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 479 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_NEQ, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_EQ, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 41: case 41:
#line 480 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 480 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_LT, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_NEQ, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 42: case 42:
#line 481 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 481 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_GT, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_LT, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 43: case 43:
#line 482 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 482 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_LE, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_GT, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 44: case 44:
#line 483 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 483 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_GE, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_LE, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 45: case 45:
#line 484 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 484 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_unary_op (parser, MS_OP_UMINUS, (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_GE, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 46: case 46:
#line 485 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 485 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_unary_op (parser, MS_OP_NOT, (yyvsp[0].node)); ;} { (yyval.node) = node_unary_op (parser, MS_OP_UMINUS, (yyvsp[0].node)); ;}
break; break;
case 47: case 47:
#line 486 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 486 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_unary_op (parser, MS_OP_LEN, (yyvsp[0].node)); ;} { (yyval.node) = node_unary_op (parser, MS_OP_NOT, (yyvsp[0].node)); ;}
break; break;
case 48: case 48:
#line 487 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 487 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_FORMAT, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_unary_op (parser, MS_OP_LEN, (yyvsp[0].node)); ;}
break; break;
case 49: case 49:
#line 489 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 488 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_binary_op (parser, MS_OP_IN, (yyvsp[-2].node), (yyvsp[0].node)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_FORMAT, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 50: case 50:
#line 493 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 490 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_int (parser, (yyvsp[0].ival)); ;} { (yyval.node) = node_binary_op (parser, MS_OP_IN, (yyvsp[-2].node), (yyvsp[0].node)); ;}
break; break;
case 51: case 51:
#line 494 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 494 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_string (parser, (yyvsp[0].str)); ;} { (yyval.node) = node_int (parser, (yyvsp[0].ival)); ;}
break; break;
case 53: case 52:
#line 496 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 495 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = (yyvsp[-1].node); ;} { (yyval.node) = node_string (parser, (yyvsp[0].str)); ;}
break; break;
case 54: case 54:
#line 497 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 497 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = NULL; ;} { (yyval.node) = (yyvsp[-1].node); ;}
break; break;
case 55: case 55:
#line 498 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 498 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_value_list (parser, MS_NODE_LIST ((yyvsp[-1].node))); ;} { (yyval.node) = NULL; ;}
break; break;
case 56: case 56:
#line 499 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 499 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = NULL; ;} { (yyval.node) = node_value_list (parser, MS_NODE_LIST ((yyvsp[-1].node))); ;}
break; break;
case 57: case 57:
#line 500 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 500 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_dict (parser, (yyvsp[-1].node) ? MS_NODE_LIST ((yyvsp[-1].node)) : NULL); ;} { (yyval.node) = NULL; ;}
break; break;
case 58: case 58:
#line 501 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 501 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = NULL; ;} { (yyval.node) = node_dict (parser, (yyvsp[-1].node) ? MS_NODE_LIST ((yyvsp[-1].node)) : NULL); ;}
break; break;
case 59: case 59:
#line 502 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 502 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_value_range (parser, (yyvsp[-3].node), (yyvsp[-1].node)); ;} { (yyval.node) = NULL; ;}
break; break;
case 60: case 60:
#line 503 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 503 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_function (parser, (yyvsp[-3].node), (yyvsp[-1].node) ? MS_NODE_LIST ((yyvsp[-1].node)) : NULL); ;} { (yyval.node) = node_value_range (parser, (yyvsp[-3].node), (yyvsp[-1].node)); ;}
break; break;
case 61: case 61:
#line 504 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 504 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_get_item (parser, (yyvsp[-3].node), (yyvsp[-1].node)); ;} { (yyval.node) = node_function (parser, (yyvsp[-3].node), (yyvsp[-1].node) ? MS_NODE_LIST ((yyvsp[-1].node)) : NULL); ;}
break; break;
case 62: case 62:
#line 505 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 505 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_dict_elm (parser, (yyvsp[-2].node), (yyvsp[0].str)); ;} { (yyval.node) = node_get_item (parser, (yyvsp[-3].node), (yyvsp[-1].node)); ;}
break; break;
case 63: case 63:
#line 508 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 506 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = NULL; ;} { (yyval.node) = node_dict_elm (parser, (yyvsp[-2].node), (yyvsp[0].str)); ;}
break; break;
case 64: case 64:
#line 509 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 509 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_list_add (parser, NULL, (yyvsp[0].node)); ;} { (yyval.node) = NULL; ;}
break; break;
case 65: case 65:
#line 510 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 510 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_list_add (parser, MS_NODE_LIST ((yyvsp[-2].node)), (yyvsp[0].node)); ;} { (yyval.node) = node_list_add (parser, NULL, (yyvsp[0].node)); ;}
break; break;
case 66: case 66:
#line 513 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 511 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = NULL; ;} { (yyval.node) = node_list_add (parser, MS_NODE_LIST ((yyvsp[-2].node)), (yyvsp[0].node)); ;}
break; break;
case 67: case 67:
#line 514 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 514 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_list_add (parser, NULL, (yyvsp[0].node)); ;} { (yyval.node) = NULL; ;}
break; break;
case 68: case 68:
#line 515 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 515 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_list_add (parser, MS_NODE_LIST ((yyvsp[-2].node)), (yyvsp[0].node)); ;} { (yyval.node) = node_list_add (parser, NULL, (yyvsp[0].node)); ;}
break; break;
case 69: case 69:
#line 518 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 516 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_dict_entry (parser, (yyvsp[-2].str), (yyvsp[0].node)); ;} { (yyval.node) = node_list_add (parser, MS_NODE_LIST ((yyvsp[-2].node)), (yyvsp[0].node)); ;}
break; break;
case 70: case 70:
#line 521 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 519 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_dict_entry (parser, (yyvsp[-2].str), (yyvsp[0].node)); ;}
break;
case 71:
#line 522 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"
{ (yyval.node) = node_var (parser, (yyvsp[0].str)); ;} { (yyval.node) = node_var (parser, (yyvsp[0].str)); ;}
break; break;
@ -2100,8 +2124,8 @@ yyreduce:
} }
/* Line 1126 of yacc.c. */ /* Line 1126 of yacc.c. */
#line 2104 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.c" #line 2128 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.c"
yyvsp -= yylen; yyvsp -= yylen;
yyssp -= yylen; yyssp -= yylen;
@ -2368,6 +2392,6 @@ yyreturn:
} }
#line 524 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y" #line 525 "/home/muntyan/projects/moo/moo/mooutils/mooscript/mooscript-yacc.y"