Changeset 2735 in webkit for trunk/JavaScriptCore/kjs/grammar.cpp
- Timestamp:
- Nov 18, 2002, 1:45:10 PM (23 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/grammar.cpp
r2522 r2735 255 255 93, 96, 0, 95, 96, 0, 95, 66, 114, 67, 256 256 0, 95, 70, 58, 0, 62, 63, 0, 62, 97, 257 63, 0, 112, 0, 97, 68, 112, 0, 94, 0,257 63, 0, 112, 0, 112, 68, 97, 0, 94, 0, 258 258 95, 0, 98, 0, 98, 42, 0, 98, 43, 0, 259 259 99, 0, 18, 100, 0, 17, 100, 0, 26, 100, … … 318 318 199, 202, 204, 207, 209, 213, 216, 217, 220, 222, 319 319 223, 224, 226, 229, 231, 234, 236, 237, 238, 242, 320 244, 247, 2 49, 252, 254, 257, 259, 260, 263, 265,321 2 66, 267, 268, 269, 270, 271, 272, 273, 274, 275,322 2 78, 280, 281, 282, 285, 287, 288, 291, 293, 294,323 29 5, 298, 300, 302, 304, 306, 308, 310, 314, 316,324 3 17, 318, 319, 322, 324, 327, 329, 332, 334, 337,325 3 39, 343, 345, 349, 351, 355, 357, 361, 363, 364,326 36 5, 366, 367, 368, 369, 370, 371, 372, 373, 376,327 3 78, 381, 383, 384, 385, 386, 387, 388, 389, 390,328 39 1, 392, 393, 394, 395, 398, 400, 403, 405, 408,329 41 1, 420, 422, 426, 428, 431, 435, 439, 442, 449,330 45 1, 455, 457, 458, 461, 464, 467, 471, 477, 479,331 48 2, 484, 488, 490, 497, 499, 503, 505, 513, 515,332 5 19, 520, 526, 531, 536, 538, 542, 544, 547, 549,333 55 2, 554, 557, 559, 562, 568, 572, 574, 575, 578,334 58 2, 586, 589, 593, 595, 600, 602, 606, 609, 613,335 6 16, 620, 623, 629, 631320 244, 247, 250, 256, 258, 261, 263, 264, 267, 269, 321 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 322 282, 284, 285, 286, 289, 291, 292, 295, 297, 298, 323 299, 302, 304, 306, 308, 310, 312, 314, 318, 320, 324 321, 322, 323, 326, 328, 331, 333, 336, 338, 341, 325 343, 347, 349, 353, 355, 359, 361, 365, 367, 368, 326 369, 370, 371, 372, 373, 374, 375, 376, 377, 380, 327 382, 385, 387, 388, 389, 390, 391, 392, 393, 394, 328 395, 396, 397, 398, 399, 402, 404, 407, 409, 412, 329 415, 424, 426, 430, 432, 435, 439, 443, 446, 453, 330 455, 459, 461, 462, 465, 468, 471, 475, 481, 483, 331 486, 488, 492, 494, 501, 503, 507, 509, 517, 519, 332 523, 524, 530, 535, 540, 542, 546, 548, 551, 553, 333 556, 558, 561, 563, 566, 572, 576, 578, 579, 582, 334 586, 590, 593, 597, 599, 604, 606, 610, 613, 617, 335 620, 624, 627, 633, 635 336 336 }; 337 337 #endif … … 473 473 -32768,-32768, 1066, 230, 1066,-32768, 1066, 1066, -45, 483, 474 474 162,-32768,-32768, 705,-32768,-32768, -6, 150, 176, 50, 475 220, -37, 185, 212,-32768, 154, 850, 214,-32768,-32768,476 -32768,-32768, 922, 1066, 2 34,-32768, 1066, 237,-32768,-32768,475 220, -37, 185, 212,-32768, 154, 850, 196,-32768,-32768, 476 -32768,-32768, 922, 1066, 224,-32768, 1066, 234,-32768,-32768, 477 477 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 478 478 -32768,-32768,-32768, 1066, 1066, 1066, 1066, 1066, 1066, 1066, 479 479 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1066, 480 480 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1066,-32768, 1066, 481 -32768,-32768,-32768,-32768, 244, 87, 2 41, 226,-32768,-32768,481 -32768,-32768,-32768,-32768, 244, 87, 238, 225,-32768,-32768, 482 482 -32768,-32768,-32768, 1066,-32768,-32768, -24,-32768,-32768,-32768, 483 64,-32768, 24 8, 100,-32768,-32768, 103, 252, 121, 122,484 124,-32768,-32768, 25 3, 0, 283,-32768,-32768,-32768,-32768,485 35, 1066,-32768,-32768, 12,-32768,-32768,-32768,-32768, 181,486 -32768, 203,-32768, 223,-32768,-32768,-32768,-32768,-32768, 71,483 64,-32768, 243, 100,-32768,-32768, 103, 248, 121, 122, 484 124,-32768,-32768, 250, 0, 281,-32768,-32768,-32768,-32768, 485 35, 1066,-32768,-32768, 12,-32768,-32768,-32768,-32768, 252, 486 249, 223,-32768, 228,-32768,-32768,-32768,-32768,-32768, 71, 487 487 71, -25, -25, -25, 38, 38, 38, 38, 38, 38, 488 82, 82, 82, 82, 239, 239, 239, 84, 133, 24 9,489 -32768, -15, -41, 1066, 1066,-32768,-32768, 24 8, 190, 557,490 -32768, 24 8, 259, 705, 1066, 705, 255, 705, 262,-32768,491 -32768, 25 4,-32768, 994,-32768, 1066,-32768,-32768, 1066, 1066,492 29 8, 1066, 197, 245,-32768, 248,-32768, 260,-32768,-32768,493 307, 19 9,-32768, 323,-32768,-32768, 270, 1066,-32768,-32768,494 -32768,-32768, 200, 1066, 261, 705, 1066,-32768,-32768, 705,495 -32768, 1066, 23, 323,-32768, 0,-32768, 705, 20 1, 1066,496 -32768, 274,-32768, 2 32, 275,-32768, 323,-32768,-32768,-32768,497 705, 28 0, 705, 705, 705, 281,-32768, 705,-32768,-32768,498 705, 705,-32768,-32768,-32768, 34 8, 349,-32768488 82, 82, 82, 82, 239, 239, 239, 84, 133, 247, 489 -32768, -15, -41, 1066, 1066,-32768,-32768, 243, 181, 557, 490 -32768, 243, 260, 705, 1066, 705, 255, 705, 262,-32768, 491 -32768, 253,-32768, 994,-32768, 1066,-32768,-32768, 1066, 1066, 492 299, 1066, 190, 241,-32768, 243,-32768, 264,-32768,-32768, 493 307, 197,-32768, 323,-32768,-32768, 270, 1066,-32768,-32768, 494 -32768,-32768, 199, 1066, 259, 705, 1066,-32768,-32768, 705, 495 -32768, 1066, 23, 323,-32768, 0,-32768, 705, 200, 1066, 496 -32768, 274,-32768, 229, 275,-32768, 323,-32768,-32768,-32768, 497 705, 282, 705, 705, 705, 283,-32768, 705,-32768,-32768, 498 705, 705,-32768,-32768,-32768, 346, 349,-32768 499 499 }; 500 500 501 501 static const short yypgoto[] = {-32768, 502 -32768,-32768,-32768, 126,-32768,-32768, 135, 3 46, 351,-32768,503 -34, -32768, 41,-32768, 1, 148, -10, 15, 117, 123,504 -32768,-32768, 1 84, 196,-32768,-32768, -122,-32768, -9, -17,505 -22, 2 9,-32768, 191, 178, 118,-32768,-32768,-32768,-32768,506 -225,-32768,-32768,-32768,-32768,-32768,-32768, 44,-32768, 5 5,507 -32768,-32768,-32768,-32768,-32768, 16 6,-32768,-32768, 182, -223,502 -32768,-32768,-32768, 126,-32768,-32768, 135, 351, 352,-32768, 503 -34, 88, 41,-32768, 1, 142, -10, 15, 117, 96, 504 -32768,-32768, 178, 198,-32768,-32768, -122,-32768, -9, -17, 505 -22, 28,-32768, 191, 182, 118,-32768,-32768,-32768,-32768, 506 -225,-32768,-32768,-32768,-32768,-32768,-32768, 44,-32768, 58, 507 -32768,-32768,-32768,-32768,-32768, 167,-32768,-32768, 183, -223, 508 508 -32768, 2,-32768 509 509 }; … … 530 530 149, 150, 151, 152, 133, 156, 157, 174, 137, 242, 531 531 243, 244, 138, 140, 141, 237, 238, 239, 167, 168, 532 26, 310, 272, 311, 175, 274, 312, 273, 85, 153,532 26, 310, 272, 231, 175, 274, 312, 273, 85, 153, 533 533 180, 30, 31, 176, 86, 96, 33, 245, 246, 247, 534 534 248, 249, 250, 276, 277, 327, 278, 194, 180, 180, … … 538 538 224, 225, -126, -126, -126, -126, -126, -126, -126, -126, 539 539 -126, -126, -126, -126, -126, -126, -126, -126, -126, -126, 540 -126, -126, -126, 2 85, -28, -126, -126, -126, 286, -126,541 -126, 208, 296, 222, 293, 187, 301, 273, 303, 316,542 306, 32 1, 328, 341, 180, 302, 180, 180, 180, 287,543 180, 298, 169, 170, 171, 172, 223, -126, -126, -126,544 313, 2 28, 187, -126, -126, 251, 252, 253, 254, 288,545 180, 23 3, -126, -126, 235, 255, 256, 257, 331, 180,546 344, 262, 333, 339, 329, 240, 241, 187, 180, 265,547 340, 27 0, 334, 275, 279, 215, 300, 289, 304, 307,548 187, 3 14, 308, 347, 319, 349, 350, 350, 317, 320,540 -126, -126, -126, 296, -28, -126, -126, -126, 273, -126, 541 -126, 208, 316, 222, 293, 187, 301, 180, 303, 321, 542 306, 328, 341, 228, 180, 302, 180, 180, 255, 256, 543 257, 298, 169, 170, 171, 172, 223, -126, -126, -126, 544 313, 233, 187, -126, -126, 251, 252, 253, 254, 287, 545 180, 235, -126, -126, 288, 180, 180, 344, 331, 240, 546 241, 262, 333, 339, 329, 180, 270, 187, 265, 275, 547 340, 279, 334, 215, 285, 289, 286, 300, 304, 307, 548 187, 308, 314, 347, 317, 349, 350, 350, 319, 320, 549 549 354, 322, 326, 355, 355, 97, 343, 1, 2, 3, 550 4, 5, 3 48, 345, 330, 353, 8, 357, 358, 84,551 284, 13, 14, 87, 16, 282, 140, 141, 88, 258,550 4, 5, 330, 345, 348, 357, 8, 353, 358, 84, 551 284, 13, 14, 258, 16, 282, 140, 141, 87, 88, 552 552 19, 142, 143, 144, 145, 146, 147, 148, 149, 150, 553 151, 152, 259, 352, 267, 263, 24, 25, 338, 291,554 346, 281, 269, 0, 26, 0, 0, 0, 0, 0,553 151, 152, 352, 311, 259, 263, 24, 25, 267, 291, 554 346, 338, 281, 269, 26, 0, 0, 0, 0, 0, 555 555 0, 0, 85, 28, 29, 30, 31, 153, 86, 0, 556 556 33, 0, 0, 0, 0, 34, 35, 36, 37, 0, … … 657 657 21, 22, 23, 63, 69, 26, 27, 28, 68, 30, 658 658 31, 22, 63, 69, 264, 265, 274, 68, 276, 63, 659 278, 63, 63, 6 3, 68, 275, 68, 68, 68, 67,660 68, 270, 34, 35, 36, 37, 65, 58, 59, 60,661 290, 68, 292, 64, 65, 169, 170, 171, 172, 67,662 68, 58, 73, 74, 58, 173, 174, 175, 316, 68,663 69, 58, 320, 326, 314, 158, 159, 317, 68, 84,664 328, 6 4, 322, 62, 62, 33, 58, 69, 64, 58,665 330, 24, 69, 341, 65, 343, 344, 345, 84, 23,659 278, 63, 63, 68, 68, 275, 68, 68, 173, 174, 660 175, 270, 34, 35, 36, 37, 65, 58, 59, 60, 661 290, 58, 292, 64, 65, 169, 170, 171, 172, 67, 662 68, 58, 73, 74, 67, 68, 68, 69, 316, 158, 663 159, 58, 320, 326, 314, 68, 64, 317, 84, 62, 664 328, 62, 322, 33, 63, 69, 68, 58, 64, 58, 665 330, 69, 24, 341, 84, 343, 344, 345, 65, 23, 666 666 348, 9, 63, 351, 352, 1, 63, 3, 4, 5, 667 6, 7, 63, 69, 84, 65, 12, 0, 0, 15,668 225, 17, 18, 8, 20, 221, 42, 43, 8, 176,667 6, 7, 84, 69, 63, 0, 12, 65, 0, 15, 668 225, 17, 18, 176, 20, 221, 42, 43, 8, 8, 669 669 26, 47, 48, 49, 50, 51, 52, 53, 54, 55, 670 56, 57, 177, 345, 197, 185, 42, 43, 324, 262,671 337, 216, 201, -1, 50, -1, -1, -1, -1, -1,670 56, 57, 345, 286, 177, 185, 42, 43, 197, 262, 671 337, 324, 216, 201, 50, -1, -1, -1, -1, -1, 672 672 -1, -1, 58, 59, 60, 61, 62, 83, 64, -1, 673 673 66, -1, -1, -1, -1, 71, 72, 73, 74, -1, … … 1444 1444 break;} 1445 1445 case 43: 1446 #line 2 49"grammar.y"1447 { yyval.alist = new ArgumentListNode(yyvsp[ -2].alist, yyvsp[0].node); ;1446 #line 250 "grammar.y" 1447 { yyval.alist = new ArgumentListNode(yyvsp[0].alist, yyvsp[-2].node); ; 1448 1448 break;} 1449 1449 case 47: 1450 #line 2 59"grammar.y"1450 #line 263 "grammar.y" 1451 1451 { yyval.node = new PostfixNode(yyvsp[-1].node, OpPlusPlus); ; 1452 1452 break;} 1453 1453 case 48: 1454 #line 26 0"grammar.y"1454 #line 264 "grammar.y" 1455 1455 { yyval.node = new PostfixNode(yyvsp[-1].node, OpMinusMinus); ; 1456 1456 break;} 1457 1457 case 50: 1458 #line 26 5"grammar.y"1458 #line 269 "grammar.y" 1459 1459 { yyval.node = new DeleteNode(yyvsp[0].node); ; 1460 1460 break;} 1461 1461 case 51: 1462 #line 2 66"grammar.y"1462 #line 270 "grammar.y" 1463 1463 { yyval.node = new VoidNode(yyvsp[0].node); ; 1464 1464 break;} 1465 1465 case 52: 1466 #line 2 67"grammar.y"1466 #line 271 "grammar.y" 1467 1467 { yyval.node = new TypeOfNode(yyvsp[0].node); ; 1468 1468 break;} 1469 1469 case 53: 1470 #line 2 68"grammar.y"1470 #line 272 "grammar.y" 1471 1471 { yyval.node = new PrefixNode(OpPlusPlus, yyvsp[0].node); ; 1472 1472 break;} 1473 1473 case 54: 1474 #line 2 69"grammar.y"1474 #line 273 "grammar.y" 1475 1475 { yyval.node = new PrefixNode(OpPlusPlus, yyvsp[0].node); ; 1476 1476 break;} 1477 1477 case 55: 1478 #line 27 0"grammar.y"1478 #line 274 "grammar.y" 1479 1479 { yyval.node = new PrefixNode(OpMinusMinus, yyvsp[0].node); ; 1480 1480 break;} 1481 1481 case 56: 1482 #line 27 1"grammar.y"1482 #line 275 "grammar.y" 1483 1483 { yyval.node = new PrefixNode(OpMinusMinus, yyvsp[0].node); ; 1484 1484 break;} 1485 1485 case 57: 1486 #line 27 2"grammar.y"1486 #line 276 "grammar.y" 1487 1487 { yyval.node = new UnaryPlusNode(yyvsp[0].node); ; 1488 1488 break;} 1489 1489 case 58: 1490 #line 27 3"grammar.y"1490 #line 277 "grammar.y" 1491 1491 { yyval.node = new NegateNode(yyvsp[0].node); ; 1492 1492 break;} 1493 1493 case 59: 1494 #line 27 4"grammar.y"1494 #line 278 "grammar.y" 1495 1495 { yyval.node = new BitwiseNotNode(yyvsp[0].node); ; 1496 1496 break;} 1497 1497 case 60: 1498 #line 27 5"grammar.y"1498 #line 279 "grammar.y" 1499 1499 { yyval.node = new LogicalNotNode(yyvsp[0].node); ; 1500 1500 break;} 1501 1501 case 62: 1502 #line 28 0"grammar.y"1502 #line 284 "grammar.y" 1503 1503 { yyval.node = new MultNode(yyvsp[-2].node, yyvsp[0].node, '*'); ; 1504 1504 break;} 1505 1505 case 63: 1506 #line 28 1"grammar.y"1506 #line 285 "grammar.y" 1507 1507 { yyval.node = new MultNode(yyvsp[-2].node, yyvsp[0].node, '/'); ; 1508 1508 break;} 1509 1509 case 64: 1510 #line 28 2"grammar.y"1510 #line 286 "grammar.y" 1511 1511 { yyval.node = new MultNode(yyvsp[-2].node,yyvsp[0].node,'%'); ; 1512 1512 break;} 1513 1513 case 66: 1514 #line 2 87"grammar.y"1514 #line 291 "grammar.y" 1515 1515 { yyval.node = new AddNode(yyvsp[-2].node, yyvsp[0].node, '+'); ; 1516 1516 break;} 1517 1517 case 67: 1518 #line 2 88"grammar.y"1518 #line 292 "grammar.y" 1519 1519 { yyval.node = new AddNode(yyvsp[-2].node, yyvsp[0].node, '-'); ; 1520 1520 break;} 1521 1521 case 69: 1522 #line 29 3"grammar.y"1522 #line 297 "grammar.y" 1523 1523 { yyval.node = new ShiftNode(yyvsp[-2].node, OpLShift, yyvsp[0].node); ; 1524 1524 break;} 1525 1525 case 70: 1526 #line 29 4"grammar.y"1526 #line 298 "grammar.y" 1527 1527 { yyval.node = new ShiftNode(yyvsp[-2].node, OpRShift, yyvsp[0].node); ; 1528 1528 break;} 1529 1529 case 71: 1530 #line 29 5"grammar.y"1530 #line 299 "grammar.y" 1531 1531 { yyval.node = new ShiftNode(yyvsp[-2].node, OpURShift, yyvsp[0].node); ; 1532 1532 break;} 1533 1533 case 73: 1534 #line 30 1"grammar.y"1534 #line 305 "grammar.y" 1535 1535 { yyval.node = new RelationalNode(yyvsp[-2].node, OpLess, yyvsp[0].node); ; 1536 1536 break;} 1537 1537 case 74: 1538 #line 30 3"grammar.y"1538 #line 307 "grammar.y" 1539 1539 { yyval.node = new RelationalNode(yyvsp[-2].node, OpGreater, yyvsp[0].node); ; 1540 1540 break;} 1541 1541 case 75: 1542 #line 30 5"grammar.y"1542 #line 309 "grammar.y" 1543 1543 { yyval.node = new RelationalNode(yyvsp[-2].node, OpLessEq, yyvsp[0].node); ; 1544 1544 break;} 1545 1545 case 76: 1546 #line 3 07"grammar.y"1546 #line 311 "grammar.y" 1547 1547 { yyval.node = new RelationalNode(yyvsp[-2].node, OpGreaterEq, yyvsp[0].node); ; 1548 1548 break;} 1549 1549 case 77: 1550 #line 3 09"grammar.y"1550 #line 313 "grammar.y" 1551 1551 { yyval.node = new RelationalNode(yyvsp[-2].node, OpInstanceOf, yyvsp[0].node); ; 1552 1552 break;} 1553 1553 case 78: 1554 #line 31 1"grammar.y"1554 #line 315 "grammar.y" 1555 1555 { yyval.node = new RelationalNode(yyvsp[-2].node, OpIn, yyvsp[0].node); ; 1556 1556 break;} 1557 1557 case 80: 1558 #line 3 16"grammar.y"1558 #line 320 "grammar.y" 1559 1559 { yyval.node = new EqualNode(yyvsp[-2].node, OpEqEq, yyvsp[0].node); ; 1560 1560 break;} 1561 1561 case 81: 1562 #line 3 17"grammar.y"1562 #line 321 "grammar.y" 1563 1563 { yyval.node = new EqualNode(yyvsp[-2].node, OpNotEq, yyvsp[0].node); ; 1564 1564 break;} 1565 1565 case 82: 1566 #line 3 18"grammar.y"1566 #line 322 "grammar.y" 1567 1567 { yyval.node = new EqualNode(yyvsp[-2].node, OpStrEq, yyvsp[0].node); ; 1568 1568 break;} 1569 1569 case 83: 1570 #line 3 19"grammar.y"1570 #line 323 "grammar.y" 1571 1571 { yyval.node = new EqualNode(yyvsp[-2].node, OpStrNEq, yyvsp[0].node);; 1572 1572 break;} 1573 1573 case 85: 1574 #line 32 4"grammar.y"1574 #line 328 "grammar.y" 1575 1575 { yyval.node = new BitOperNode(yyvsp[-2].node, OpBitAnd, yyvsp[0].node); ; 1576 1576 break;} 1577 1577 case 87: 1578 #line 3 29"grammar.y"1578 #line 333 "grammar.y" 1579 1579 { yyval.node = new BitOperNode(yyvsp[-2].node, OpBitXOr, yyvsp[0].node); ; 1580 1580 break;} 1581 1581 case 89: 1582 #line 33 4"grammar.y"1582 #line 338 "grammar.y" 1583 1583 { yyval.node = new BitOperNode(yyvsp[-2].node, OpBitOr, yyvsp[0].node); ; 1584 1584 break;} 1585 1585 case 91: 1586 #line 34 0"grammar.y"1586 #line 344 "grammar.y" 1587 1587 { yyval.node = new BinaryLogicalNode(yyvsp[-2].node, OpAnd, yyvsp[0].node); ; 1588 1588 break;} 1589 1589 case 93: 1590 #line 3 46"grammar.y"1590 #line 350 "grammar.y" 1591 1591 { yyval.node = new BinaryLogicalNode(yyvsp[-2].node, OpOr, yyvsp[0].node); ; 1592 1592 break;} 1593 1593 case 95: 1594 #line 35 2"grammar.y"1594 #line 356 "grammar.y" 1595 1595 { yyval.node = new ConditionalNode(yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].node); ; 1596 1596 break;} 1597 1597 case 97: 1598 #line 3 58"grammar.y"1598 #line 362 "grammar.y" 1599 1599 { yyval.node = new AssignNode(yyvsp[-2].node, yyvsp[-1].op, yyvsp[0].node);; 1600 1600 break;} 1601 1601 case 98: 1602 #line 36 2"grammar.y"1602 #line 366 "grammar.y" 1603 1603 { yyval.op = OpEqual; ; 1604 1604 break;} 1605 1605 case 99: 1606 #line 36 3"grammar.y"1606 #line 367 "grammar.y" 1607 1607 { yyval.op = OpPlusEq; ; 1608 1608 break;} 1609 1609 case 100: 1610 #line 36 4"grammar.y"1610 #line 368 "grammar.y" 1611 1611 { yyval.op = OpMinusEq; ; 1612 1612 break;} 1613 1613 case 101: 1614 #line 36 5"grammar.y"1614 #line 369 "grammar.y" 1615 1615 { yyval.op = OpMultEq; ; 1616 1616 break;} 1617 1617 case 102: 1618 #line 3 66"grammar.y"1618 #line 370 "grammar.y" 1619 1619 { yyval.op = OpDivEq; ; 1620 1620 break;} 1621 1621 case 103: 1622 #line 3 67"grammar.y"1622 #line 371 "grammar.y" 1623 1623 { yyval.op = OpLShift; ; 1624 1624 break;} 1625 1625 case 104: 1626 #line 3 68"grammar.y"1626 #line 372 "grammar.y" 1627 1627 { yyval.op = OpRShift; ; 1628 1628 break;} 1629 1629 case 105: 1630 #line 3 69"grammar.y"1630 #line 373 "grammar.y" 1631 1631 { yyval.op = OpURShift; ; 1632 1632 break;} 1633 1633 case 106: 1634 #line 37 0"grammar.y"1634 #line 374 "grammar.y" 1635 1635 { yyval.op = OpAndEq; ; 1636 1636 break;} 1637 1637 case 107: 1638 #line 37 1"grammar.y"1638 #line 375 "grammar.y" 1639 1639 { yyval.op = OpXOrEq; ; 1640 1640 break;} 1641 1641 case 108: 1642 #line 37 2"grammar.y"1642 #line 376 "grammar.y" 1643 1643 { yyval.op = OpOrEq; ; 1644 1644 break;} 1645 1645 case 109: 1646 #line 37 3"grammar.y"1646 #line 377 "grammar.y" 1647 1647 { yyval.op = OpModEq; ; 1648 1648 break;} 1649 1649 case 111: 1650 #line 3 78"grammar.y"1650 #line 382 "grammar.y" 1651 1651 { yyval.node = new CommaNode(yyvsp[-2].node, yyvsp[0].node); ; 1652 1652 break;} 1653 1653 case 126: 1654 #line 399"grammar.y"1654 #line 403 "grammar.y" 1655 1655 { yyval.stat = new BlockNode(0L); DBG(yyval.stat, yylsp[0], yylsp[0]); ; 1656 1656 break;} 1657 1657 case 127: 1658 #line 40 0"grammar.y"1658 #line 404 "grammar.y" 1659 1659 { yyval.stat = new BlockNode(yyvsp[-1].srcs); DBG(yyval.stat, yylsp[0], yylsp[0]); ; 1660 1660 break;} 1661 1661 case 128: 1662 #line 40 4"grammar.y"1662 #line 408 "grammar.y" 1663 1663 { yyval.slist = new StatListNode(yyvsp[0].stat); ; 1664 1664 break;} 1665 1665 case 129: 1666 #line 40 5"grammar.y"1666 #line 409 "grammar.y" 1667 1667 { yyval.slist = new StatListNode(yyvsp[-1].slist, yyvsp[0].stat); ; 1668 1668 break;} 1669 1669 case 130: 1670 #line 4 09"grammar.y"1670 #line 413 "grammar.y" 1671 1671 { yyval.stat = new VarStatementNode(yyvsp[-1].vlist); 1672 1672 DBG(yyval.stat, yylsp[-2], yylsp[0]); ; 1673 1673 break;} 1674 1674 case 131: 1675 #line 41 1"grammar.y"1675 #line 415 "grammar.y" 1676 1676 { if (automatic()) { 1677 1677 yyval.stat = new VarStatementNode(yyvsp[-1].vlist); … … 1683 1683 break;} 1684 1684 case 132: 1685 #line 42 1"grammar.y"1685 #line 425 "grammar.y" 1686 1686 { yyval.vlist = new VarDeclListNode(yyvsp[0].decl); ; 1687 1687 break;} 1688 1688 case 133: 1689 #line 42 3"grammar.y"1689 #line 427 "grammar.y" 1690 1690 { yyval.vlist = new VarDeclListNode(yyvsp[-2].vlist, yyvsp[0].decl); ; 1691 1691 break;} 1692 1692 case 134: 1693 #line 4 27"grammar.y"1693 #line 431 "grammar.y" 1694 1694 { yyval.decl = new VarDeclNode(yyvsp[0].ustr, 0); delete yyvsp[0].ustr; ; 1695 1695 break;} 1696 1696 case 135: 1697 #line 4 28"grammar.y"1697 #line 432 "grammar.y" 1698 1698 { yyval.decl = new VarDeclNode(yyvsp[-1].ustr, yyvsp[0].init); delete yyvsp[-1].ustr; ; 1699 1699 break;} 1700 1700 case 136: 1701 #line 43 2"grammar.y"1701 #line 436 "grammar.y" 1702 1702 { yyval.init = new AssignExprNode(yyvsp[0].node); ; 1703 1703 break;} 1704 1704 case 137: 1705 #line 4 36"grammar.y"1705 #line 440 "grammar.y" 1706 1706 { yyval.stat = new EmptyStatementNode(); ; 1707 1707 break;} 1708 1708 case 138: 1709 #line 44 0"grammar.y"1709 #line 444 "grammar.y" 1710 1710 { yyval.stat = new ExprStatementNode(yyvsp[-1].node); 1711 1711 DBG(yyval.stat, yylsp[-1], yylsp[0]); ; 1712 1712 break;} 1713 1713 case 139: 1714 #line 44 2"grammar.y"1714 #line 446 "grammar.y" 1715 1715 { if (automatic()) { 1716 1716 yyval.stat = new ExprStatementNode(yyvsp[-1].node); … … 1720 1720 break;} 1721 1721 case 140: 1722 #line 45 0"grammar.y"1722 #line 454 "grammar.y" 1723 1723 { yyval.stat = new IfNode(yyvsp[-2].node,yyvsp[0].stat,0L);DBG(yyval.stat,yylsp[-4],yylsp[-1]); ; 1724 1724 break;} 1725 1725 case 141: 1726 #line 45 2"grammar.y"1726 #line 456 "grammar.y" 1727 1727 { yyval.stat = new IfNode(yyvsp[-4].node,yyvsp[-2].stat,yyvsp[0].stat);DBG(yyval.stat,yylsp[-6],yylsp[-3]); ; 1728 1728 break;} 1729 1729 case 142: 1730 #line 4 56"grammar.y"1730 #line 460 "grammar.y" 1731 1731 { yyval.stat=new DoWhileNode(yyvsp[-4].stat,yyvsp[-1].node);DBG(yyval.stat,yylsp[-5],yylsp[-3]);; 1732 1732 break;} 1733 1733 case 143: 1734 #line 4 57"grammar.y"1734 #line 461 "grammar.y" 1735 1735 { yyval.stat = new WhileNode(yyvsp[-2].node,yyvsp[0].stat);DBG(yyval.stat,yylsp[-4],yylsp[-1]); ; 1736 1736 break;} 1737 1737 case 144: 1738 #line 4 59"grammar.y"1738 #line 463 "grammar.y" 1739 1739 { yyval.stat = new ForNode(yyvsp[-6].node,yyvsp[-4].node,yyvsp[-2].node,yyvsp[0].stat); 1740 1740 DBG(yyval.stat,yylsp[-8],yylsp[-1]); ; 1741 1741 break;} 1742 1742 case 145: 1743 #line 46 2"grammar.y"1743 #line 466 "grammar.y" 1744 1744 { yyval.stat = new ForNode(yyvsp[-6].vlist,yyvsp[-4].node,yyvsp[-2].node,yyvsp[0].stat); 1745 1745 DBG(yyval.stat,yylsp[-9],yylsp[-1]); ; 1746 1746 break;} 1747 1747 case 146: 1748 #line 46 5"grammar.y"1748 #line 469 "grammar.y" 1749 1749 { yyval.stat = new ForInNode(yyvsp[-4].node, yyvsp[-2].node, yyvsp[0].stat); 1750 1750 DBG(yyval.stat,yylsp[-6],yylsp[-1]); ; 1751 1751 break;} 1752 1752 case 147: 1753 #line 4 68"grammar.y"1753 #line 472 "grammar.y" 1754 1754 { yyval.stat = new ForInNode(yyvsp[-4].ustr,0L,yyvsp[-2].node,yyvsp[0].stat); 1755 1755 DBG(yyval.stat,yylsp[-7],yylsp[-1]); … … 1757 1757 break;} 1758 1758 case 148: 1759 #line 47 2"grammar.y"1759 #line 476 "grammar.y" 1760 1760 { yyval.stat = new ForInNode(yyvsp[-5].ustr,yyvsp[-4].init,yyvsp[-2].node,yyvsp[0].stat); 1761 1761 DBG(yyval.stat,yylsp[-8],yylsp[-1]); … … 1763 1763 break;} 1764 1764 case 149: 1765 #line 4 78"grammar.y"1765 #line 482 "grammar.y" 1766 1766 { yyval.node = 0L; ; 1767 1767 break;} 1768 1768 case 151: 1769 #line 48 3"grammar.y"1769 #line 487 "grammar.y" 1770 1770 { yyval.stat = new ContinueNode(); DBG(yyval.stat,yylsp[-1],yylsp[0]); ; 1771 1771 break;} 1772 1772 case 152: 1773 #line 48 4"grammar.y"1773 #line 488 "grammar.y" 1774 1774 { if (automatic()) { 1775 1775 yyval.stat = new ContinueNode(); DBG(yyval.stat,yylsp[-1],yylsp[0]); … … 1778 1778 break;} 1779 1779 case 153: 1780 #line 4 88"grammar.y"1780 #line 492 "grammar.y" 1781 1781 { yyval.stat = new ContinueNode(yyvsp[-1].ustr); DBG(yyval.stat,yylsp[-2],yylsp[0]); 1782 1782 delete yyvsp[-1].ustr; ; 1783 1783 break;} 1784 1784 case 154: 1785 #line 49 0"grammar.y"1785 #line 494 "grammar.y" 1786 1786 { if (automatic()) { 1787 1787 yyval.stat = new ContinueNode(yyvsp[-1].ustr);DBG(yyval.stat,yylsp[-2],yylsp[-1]); … … 1791 1791 break;} 1792 1792 case 155: 1793 #line 498"grammar.y"1793 #line 502 "grammar.y" 1794 1794 { yyval.stat = new BreakNode();DBG(yyval.stat,yylsp[-1],yylsp[0]); ; 1795 1795 break;} 1796 1796 case 156: 1797 #line 499"grammar.y"1797 #line 503 "grammar.y" 1798 1798 { if (automatic()) { 1799 1799 yyval.stat = new BreakNode(); DBG(yyval.stat,yylsp[-1],yylsp[-1]); … … 1802 1802 break;} 1803 1803 case 157: 1804 #line 50 3"grammar.y"1804 #line 507 "grammar.y" 1805 1805 { yyval.stat = new BreakNode(yyvsp[-1].ustr); DBG(yyval.stat,yylsp[-2],yylsp[0]); 1806 1806 delete yyvsp[-1].ustr; ; 1807 1807 break;} 1808 1808 case 158: 1809 #line 50 5"grammar.y"1809 #line 509 "grammar.y" 1810 1810 { if (automatic()) { 1811 1811 yyval.stat = new BreakNode(yyvsp[-1].ustr); DBG(yyval.stat,yylsp[-2],yylsp[-1]); … … 1816 1816 break;} 1817 1817 case 159: 1818 #line 51 4"grammar.y"1818 #line 518 "grammar.y" 1819 1819 { yyval.stat = new ReturnNode(0L); DBG(yyval.stat,yylsp[-1],yylsp[0]); ; 1820 1820 break;} 1821 1821 case 160: 1822 #line 51 5"grammar.y"1822 #line 519 "grammar.y" 1823 1823 { if (automatic()) { 1824 1824 yyval.stat = new ReturnNode(0L); DBG(yyval.stat,yylsp[-1],yylsp[-1]); … … 1827 1827 break;} 1828 1828 case 161: 1829 #line 5 19"grammar.y"1829 #line 523 "grammar.y" 1830 1830 { yyval.stat = new ReturnNode(yyvsp[-1].node); ; 1831 1831 break;} 1832 1832 case 162: 1833 #line 52 0"grammar.y"1833 #line 524 "grammar.y" 1834 1834 { if (automatic()) 1835 1835 yyval.stat = new ReturnNode(yyvsp[-1].node); … … 1838 1838 break;} 1839 1839 case 163: 1840 #line 5 27"grammar.y"1840 #line 531 "grammar.y" 1841 1841 { yyval.stat = new WithNode(yyvsp[-2].node,yyvsp[0].stat); 1842 1842 DBG(yyval.stat, yylsp[-4], yylsp[-1]); ; 1843 1843 break;} 1844 1844 case 164: 1845 #line 53 2"grammar.y"1845 #line 536 "grammar.y" 1846 1846 { yyval.stat = new SwitchNode(yyvsp[-2].node, yyvsp[0].cblk); 1847 1847 DBG(yyval.stat, yylsp[-4], yylsp[-1]); ; 1848 1848 break;} 1849 1849 case 165: 1850 #line 5 37"grammar.y"1850 #line 541 "grammar.y" 1851 1851 { yyval.cblk = new CaseBlockNode(yyvsp[-1].clist, 0L, 0L); ; 1852 1852 break;} 1853 1853 case 166: 1854 #line 5 39"grammar.y"1854 #line 543 "grammar.y" 1855 1855 { yyval.cblk = new CaseBlockNode(yyvsp[-3].clist, yyvsp[-2].ccl, yyvsp[-1].clist); ; 1856 1856 break;} 1857 1857 case 167: 1858 #line 54 3"grammar.y"1858 #line 547 "grammar.y" 1859 1859 { yyval.clist = 0L; ; 1860 1860 break;} 1861 1861 case 169: 1862 #line 5 48"grammar.y"1862 #line 552 "grammar.y" 1863 1863 { yyval.clist = new ClauseListNode(yyvsp[0].ccl); ; 1864 1864 break;} 1865 1865 case 170: 1866 #line 5 49"grammar.y"1866 #line 553 "grammar.y" 1867 1867 { yyval.clist = yyvsp[-1].clist->append(yyvsp[0].ccl); ; 1868 1868 break;} 1869 1869 case 171: 1870 #line 55 3"grammar.y"1870 #line 557 "grammar.y" 1871 1871 { yyval.ccl = new CaseClauseNode(yyvsp[-1].node, 0L); ; 1872 1872 break;} 1873 1873 case 172: 1874 #line 55 4"grammar.y"1874 #line 558 "grammar.y" 1875 1875 { yyval.ccl = new CaseClauseNode(yyvsp[-2].node, yyvsp[0].slist); ; 1876 1876 break;} 1877 1877 case 173: 1878 #line 5 58"grammar.y"1878 #line 562 "grammar.y" 1879 1879 { yyval.ccl = new CaseClauseNode(0L, 0L);; ; 1880 1880 break;} 1881 1881 case 174: 1882 #line 5 59"grammar.y"1882 #line 563 "grammar.y" 1883 1883 { yyval.ccl = new CaseClauseNode(0L, yyvsp[0].slist); ; 1884 1884 break;} 1885 1885 case 175: 1886 #line 56 3"grammar.y"1886 #line 567 "grammar.y" 1887 1887 { yyvsp[0].stat->pushLabel(yyvsp[-2].ustr); 1888 1888 yyval.stat = new LabelNode(yyvsp[-2].ustr, yyvsp[0].stat); … … 1890 1890 break;} 1891 1891 case 176: 1892 #line 5 69"grammar.y"1892 #line 573 "grammar.y" 1893 1893 { yyval.stat = new ThrowNode(yyvsp[-1].node); ; 1894 1894 break;} 1895 1895 case 177: 1896 #line 57 3"grammar.y"1896 #line 577 "grammar.y" 1897 1897 { yyval.stat = new TryNode(yyvsp[-1].stat, yyvsp[0].node); ; 1898 1898 break;} 1899 1899 case 178: 1900 #line 57 4"grammar.y"1900 #line 578 "grammar.y" 1901 1901 { yyval.stat = new TryNode(yyvsp[-1].stat, 0L, yyvsp[0].node); ; 1902 1902 break;} 1903 1903 case 179: 1904 #line 57 5"grammar.y"1904 #line 579 "grammar.y" 1905 1905 { yyval.stat = new TryNode(yyvsp[-2].stat, yyvsp[-1].node, yyvsp[0].node); ; 1906 1906 break;} 1907 1907 case 180: 1908 #line 5 79"grammar.y"1908 #line 583 "grammar.y" 1909 1909 { yyval.node = new CatchNode(yyvsp[-2].ustr, yyvsp[0].stat); delete yyvsp[-2].ustr; ; 1910 1910 break;} 1911 1911 case 181: 1912 #line 58 3"grammar.y"1912 #line 587 "grammar.y" 1913 1913 { yyval.node = new FinallyNode(yyvsp[0].stat); ; 1914 1914 break;} 1915 1915 case 182: 1916 #line 5 87"grammar.y"1916 #line 591 "grammar.y" 1917 1917 { yyval.func = new FuncDeclNode(yyvsp[-3].ustr, 0L, yyvsp[0].body); 1918 1918 delete yyvsp[-3].ustr; ; 1919 1919 break;} 1920 1920 case 183: 1921 #line 59 0"grammar.y"1921 #line 594 "grammar.y" 1922 1922 { yyval.func = new FuncDeclNode(yyvsp[-4].ustr, yyvsp[-2].param, yyvsp[0].body); 1923 1923 delete yyvsp[-4].ustr; ; 1924 1924 break;} 1925 1925 case 184: 1926 #line 59 4"grammar.y"1926 #line 598 "grammar.y" 1927 1927 { yyval.node = new FuncExprNode(0L, yyvsp[0].body); ; 1928 1928 break;} 1929 1929 case 185: 1930 #line 596"grammar.y"1930 #line 600 "grammar.y" 1931 1931 { yyval.node = new FuncExprNode(yyvsp[-2].param, yyvsp[0].body); ; 1932 1932 break;} 1933 1933 case 186: 1934 #line 60 1"grammar.y"1934 #line 605 "grammar.y" 1935 1935 { yyval.param = new ParameterNode(yyvsp[0].ustr); delete yyvsp[0].ustr; ; 1936 1936 break;} 1937 1937 case 187: 1938 #line 60 2"grammar.y"1938 #line 606 "grammar.y" 1939 1939 { yyval.param = yyvsp[-2].param->append(yyvsp[0].ustr); 1940 1940 delete yyvsp[0].ustr; ; 1941 1941 break;} 1942 1942 case 188: 1943 #line 6 07"grammar.y"1943 #line 611 "grammar.y" 1944 1944 { yyval.body = new FunctionBodyNode(0L); 1945 1945 DBG(yyval.body, yylsp[-1], yylsp[0]);; 1946 1946 break;} 1947 1947 case 189: 1948 #line 6 09"grammar.y"1948 #line 613 "grammar.y" 1949 1949 { yyval.body = new FunctionBodyNode(yyvsp[-1].srcs); 1950 1950 DBG(yyval.body, yylsp[-2], yylsp[0]);; 1951 1951 break;} 1952 1952 case 190: 1953 #line 61 4"grammar.y"1953 #line 618 "grammar.y" 1954 1954 { yyval.prog = new ProgramNode(0L); 1955 1955 Parser::progNode = yyval.prog; ; 1956 1956 break;} 1957 1957 case 191: 1958 #line 6 16"grammar.y"1958 #line 620 "grammar.y" 1959 1959 { yyval.prog = new ProgramNode(yyvsp[0].srcs); 1960 1960 Parser::progNode = yyval.prog; ; 1961 1961 break;} 1962 1962 case 192: 1963 #line 62 1"grammar.y"1963 #line 625 "grammar.y" 1964 1964 { yyval.srcs = new SourceElementsNode(yyvsp[0].src); ; 1965 1965 break;} 1966 1966 case 193: 1967 #line 62 3"grammar.y"1967 #line 627 "grammar.y" 1968 1968 { yyval.srcs = new SourceElementsNode(yyvsp[0].srcs, yyvsp[-1].src); ; 1969 1969 break;} 1970 1970 case 194: 1971 #line 63 0"grammar.y"1971 #line 634 "grammar.y" 1972 1972 { yyval.src = new SourceElementNode(yyvsp[0].stat); ; 1973 1973 break;} 1974 1974 case 195: 1975 #line 63 1"grammar.y"1975 #line 635 "grammar.y" 1976 1976 { yyval.src = new SourceElementNode(yyvsp[0].func); ; 1977 1977 break;} … … 2199 2199 return 1; 2200 2200 } 2201 #line 63 4"grammar.y"2201 #line 638 "grammar.y" 2202 2202 2203 2203
Note:
See TracChangeset
for help on using the changeset viewer.