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