diff options
Diffstat (limited to 'src/code.cpp')
-rw-r--r-- | src/code.cpp | 1955 |
1 files changed, 992 insertions, 963 deletions
diff --git a/src/code.cpp b/src/code.cpp index 7f9d4a8..380e233 100644 --- a/src/code.cpp +++ b/src/code.cpp @@ -304,96 +304,97 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 76 -#define YY_END_OF_BUFFER 77 -static yyconst short int yy_acclist[760] = +#define YY_NUM_RULES 77 +#define YY_END_OF_BUFFER 78 +static yyconst short int yy_acclist[771] = { 0, - 31, 31, 77, 75, 76, 66, 74, 76, 1, 75, - 76, 75, 76, 75, 76, 75, 76, 31, 75, 76, - 31, 66, 74, 76, 1, 31, 75, 76, 33, 75, - 76, 31, 75, 76, 75, 76, 31, 75, 76, 31, - 75, 76, 6, 75, 76, 8, 66, 74, 76, 1, - 6, 75, 76, 6, 75, 76, 6, 75, 76, 6, - 75, 76, 6, 75, 76, 56, 75, 76, 56, 75, - 76, 1, 56, 75, 76, 75, 76, 75, 76, 56, - 75, 76, 75, 76, 75, 76, 58, 66, 74, 76, - 1, 75, 76, 75, 76, 75, 76, 75, 76, 62, - - 65, 75, 76, 64, 66, 74, 76, 1, 62, 65, - 75, 76, 65, 75, 76, 62, 65, 75, 76, 62, - 65, 75, 76, 62, 65, 75, 76, 75, 76, 66, - 74, 76, 1, 75, 76, 30, 75, 76, 75, 76, - 40, 75, 76, 75, 76, 37, 75, 76, 41, 75, - 76, 35, 75, 76, 8220, 75, 76,16412,16413, 8220, - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 8220, - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 8220, - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 8220, - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 8220, - - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 8220, - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 8220, - 75, 76,16412,16413, 8220, 75, 76,16412,16413, 10, - 75, 76, 11, 75, 76, 75, 76, 75, 76, 5, - 75, 76, 44, 75, 76, 45, 75, 76, 43, 75, - 76, 42, 75, 76,16436, 39, 75, 76, 39, 75, - 76, 66, 74, 76, 1, 39, 75, 76, 30, 39, - 75, 76, 39, 75, 76, 39, 75, 76, 75, 76, - 16422, 39, 75, 76, 39, 75, 76, 39, 75, 76, - 42, 75, 76,16437,16438, 50, 75, 76, 49, 75, - - 76, 75, 76, 66, 74, 76, 13, 75, 76, 15, - 75, 76, 12, 75, 76, 14, 75, 76, 16, 75, - 76, 75, 76, 75, 76, 25, 75, 76, 22, 75, - 76, 21, 75, 76, 21, 75, 76, 21, 75, 76, - 75, 76, 23, 75, 76, 24, 75, 76, 75, 76, - 16388, 72, 73, 72, 73, 31, 31, 31, 31, 32, - 72, 31, 32, 73, 34, 31, 31, 31, 32, 72, - 31, 32, 73, 9, 73, 7, 9, 73, 56, 56, - 57, 55, 73, 56, 55, 73, 58, 72, 73, 72, - 73, 62, 61, 63, 72, 62, 63, 73, 62, 62, - - 63, 72, 62, 63, 73, 37, 41, 8220, 8220, 8221, - 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220, + 31, 31, 78, 76, 77, 66, 75, 77, 1, 76, + 77, 76, 77, 76, 77, 76, 77, 31, 76, 77, + 31, 66, 75, 77, 1, 31, 76, 77, 33, 76, + 77, 31, 76, 77, 76, 77, 31, 76, 77, 31, + 76, 77, 6, 76, 77, 8, 66, 75, 77, 1, + 6, 76, 77, 6, 76, 77, 6, 76, 77, 6, + 76, 77, 6, 76, 77, 56, 76, 77, 56, 76, + 77, 1, 56, 76, 77, 76, 77, 76, 77, 56, + 76, 77, 76, 77, 76, 77, 58, 66, 75, 77, + 1, 76, 77, 76, 77, 76, 77, 76, 77, 62, + + 65, 76, 77, 64, 66, 75, 77, 1, 62, 65, + 76, 77, 65, 76, 77, 62, 65, 76, 77, 62, + 65, 76, 77, 62, 65, 76, 77, 76, 77, 66, + 75, 77, 1, 76, 77, 30, 76, 77, 76, 77, + 40, 76, 77, 76, 77, 37, 76, 77, 41, 76, + 77, 35, 76, 77, 8220, 76, 77,16412,16413, 8220, + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 8220, + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 8220, + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 8220, + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 8220, + + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 8220, + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 8220, + 76, 77,16412,16413, 8220, 76, 77,16412,16413, 10, + 76, 77, 11, 76, 77, 76, 77, 76, 77, 5, + 76, 77, 44, 76, 77, 45, 76, 77, 43, 76, + 77, 42, 76, 77,16436, 39, 76, 77, 39, 76, + 77, 66, 75, 77, 1, 39, 76, 77, 30, 39, + 76, 77, 39, 76, 77, 39, 76, 77, 39, 76, + 77, 76, 77,16422, 39, 76, 77, 39, 76, 77, + 39, 76, 77, 42, 76, 77,16437,16438, 50, 76, + + 77, 49, 76, 77, 76, 77, 66, 75, 77, 13, + 76, 77, 15, 76, 77, 12, 76, 77, 14, 76, + 77, 16, 76, 77, 76, 77, 76, 77, 25, 76, + 77, 22, 76, 77, 21, 76, 77, 21, 76, 77, + 21, 76, 77, 76, 77, 23, 76, 77, 24, 76, + 77, 76, 77,16388, 73, 74, 73, 74, 31, 31, + 31, 31, 32, 73, 31, 32, 74, 34, 31, 31, + 31, 32, 73, 31, 32, 74, 9, 74, 7, 9, + 74, 56, 56, 57, 55, 74, 56, 55, 74, 58, + 73, 74, 73, 74, 62, 61, 63, 73, 62, 63, + + 74, 62, 62, 63, 73, 62, 63, 74, 37, 41, + 8220, 8220, 8221, 8220,16412,16413, 8220,16412,16413, 8220, 16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412, - 16413, 8220,16412,16413, 27, 8220,16412,16413, 8220,16412, + 16413, 8220,16412,16413, 8220,16412,16413, 27, 8220,16412, 16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220, 16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412, - 16413, 8220,16412,16413, 8220,16412,16413, 5, 48, 46, - 47, 51, 8244, 42,16436, 42, 8230,16422,16422, 8245, - 8246, 42,16437,16438, 50, 15, 16, 13, 15, 14, + 16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, + 5, 48, 46, 47, 51, 8244, 42,16436, 42, 8230, + 16422,16422, 8245, 8246, 42,16437,16438, 50, 15, 16, - 16, 21, 21, 21, 21, 8196,16388, 31, 31, 31, - 31, 31, 31, 31, 31, 60, 62, 62, 62, 36, - 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220, + 13, 15, 14, 16, 21, 21, 21, 21, 8196,16388, + 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 60, 62, 62, 62, 36, 36, 8220,16412,16413, 8220, 16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412, - 16413, 8220,16412,16413, 8220,16412,16413, 27, 8220, 27, - 8220, 26, 8221, 8220,16412,16413, 8220,16412,16413, 8220, + 16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, + 8220,16412,16413, 27, 8220, 27, 8220, 26, 8221, 8220, 16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412, 16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, - 8220,16412,16413, 8220, 8220, 8220,16412,16413,16422,16422, - 21, 21, 21, 21,16388, 71, 68, 70, 71, 67, + 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220, + 8220, 8220,16412,16413,16422,16422, 21, 21, 21, 21, - 68, 31, 31, 31, 71, 31, 31, 68, 31, 31, + 16388, 71, 72, 68, 70, 71, 67, 68, 31, 31, + 31, 71, 31, 31, 72, 31, 31, 68, 31, 31, 31, 70, 71, 31, 31, 67, 68, 71, 58, 71, - 58, 68, 70, 71, 58, 70, 71, 58, 67, 68, - 60, 62, 62, 62, 8220,16412,16413, 8220,16412,16413, + 72, 58, 68, 70, 71, 58, 70, 71, 58, 67, + 68, 60, 62, 62, 62, 8220,16412,16413, 8220,16412, + 16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, + 8220,16412,16413, 26, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220, - 16412,16413, 26, 8220,16412,16413, 8220,16412,16413, 8220, - 16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412, - 16413, 8220,16412,16413, 21, 21, 21, 21, 69, 66, - 70, 67, 31, 69, 31, 31, 66, 31, 70, 31, - 31, 67, 70, 58, 70, 58, 67, 62, 8220,16412, + 16412,16413, 8220,16412,16413, 21, 21, 21, 21, 69, + 66, 70, 67, 31, 69, 31, 31, 66, 31, 70, + 31, 31, 67, 70, 58, 70, 58, 67, 62, 8220, + 16412,16413, 8220,16412,16413, 8220,16412,16413, 8220,16412, 16413, 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, - 8220,16412,16413, 8220,16412,16413, 8220,16412,16413, 8220, - 16412,16413, 21, 21, 21, 21, 31, 31, 3, 8220, - 3, 8220, 8220,16412,16413, 8220,16412,16413, 8220,16412, - 16413, 21, 21, 18, 21, 21, 59, 8220,16412,16413, - 20, 21, 21, 17, 21, 21, 19, 21, 2 + 8220,16412,16413, 21, 21, 21, 21, 31, 31, 3, + 8220, 3, 8220, 8220,16412,16413, 8220,16412,16413, 8220, + 16412,16413, 21, 21, 18, 21, 21, 59, 8220,16412, + 16413, 20, 21, 21, 17, 21, 21, 19, 21, 2 } ; -static yyconst short int yy_accept[446] = +static yyconst short int yy_accept[461] = { 0, 1, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, @@ -408,42 +409,43 @@ static yyconst short int yy_accept[446] = 233, 236, 238, 240, 243, 246, 249, 252, 256, 259, 262, 265, 269, 273, 276, 279, 282, 285, 288, 291, - 296, 299, 302, 304, 307, 310, 313, 316, 319, 322, - 324, 326, 329, 332, 335, 338, 341, 343, 346, 349, - 352, 352, 352, 353, 354, 354, 354, 355, 356, 357, - 358, 359, 362, 365, 366, 367, 368, 371, 374, 376, - 377, 379, 380, 381, 381, 382, 384, 385, 387, 387, - 388, 389, 390, 390, 390, 391, 392, 393, 394, 396, - 399, 400, 401, 403, 406, 406, 406, 406, 406, 407, - 408, 408, 409, 410, 411, 414, 417, 420, 423, 426, - - 429, 432, 435, 439, 442, 445, 448, 451, 454, 457, - 460, 463, 466, 469, 472, 475, 475, 478, 478, 479, - 479, 479, 480, 481, 482, 483, 483, 484, 486, 487, - 487, 487, 487, 487, 487, 488, 489, 489, 490, 490, - 490, 491, 491, 492, 495, 496, 496, 496, 497, 498, - 498, 499, 500, 501, 502, 502, 502, 503, 504, 505, - 506, 506, 507, 508, 508, 508, 508, 508, 508, 508, - 508, 508, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 516, 516, 516, 516, 516, 516, 516, 517, 518, - 519, 520, 521, 521, 524, 524, 527, 530, 533, 536, - - 539, 542, 545, 548, 550, 552, 554, 557, 560, 563, - 566, 569, 572, 575, 578, 581, 584, 585, 586, 589, - 589, 589, 590, 590, 590, 591, 592, 593, 594, 595, - 596, 596, 596, 597, 597, 598, 598, 598, 600, 600, - 602, 603, 604, 606, 607, 609, 610, 611, 614, 615, - 618, 619, 621, 621, 623, 623, 623, 625, 628, 628, - 631, 631, 632, 632, 633, 634, 635, 638, 641, 644, - 647, 650, 653, 654, 657, 660, 663, 666, 669, 672, - 675, 675, 676, 677, 678, 679, 680, 680, 681, 682, - 682, 683, 685, 686, 688, 690, 691, 693, 694, 696, - - 696, 698, 698, 699, 702, 705, 708, 711, 714, 717, - 720, 723, 723, 724, 725, 726, 727, 727, 727, 728, - 729, 729, 731, 733, 736, 739, 742, 742, 743, 744, - 746, 747, 748, 751, 751, 753, 754, 756, 756, 757, - 757, 759, 759, 760, 760 + 294, 299, 302, 305, 307, 310, 313, 316, 319, 322, + 325, 327, 329, 332, 335, 338, 341, 344, 346, 349, + 352, 355, 355, 355, 356, 357, 357, 357, 358, 359, + 360, 361, 362, 365, 368, 369, 370, 371, 374, 377, + 379, 380, 382, 383, 384, 384, 385, 387, 388, 390, + 390, 391, 392, 393, 393, 393, 394, 395, 396, 397, + 399, 402, 403, 404, 406, 409, 409, 409, 409, 409, + 409, 410, 411, 411, 412, 413, 414, 417, 420, 423, + + 426, 429, 432, 435, 438, 442, 445, 448, 451, 454, + 457, 460, 463, 466, 469, 472, 475, 478, 478, 481, + 481, 482, 482, 482, 483, 484, 485, 486, 486, 487, + 489, 490, 490, 490, 490, 490, 490, 491, 492, 492, + 493, 493, 493, 494, 494, 495, 498, 499, 499, 499, + 500, 501, 501, 502, 503, 504, 505, 505, 505, 506, + 507, 508, 509, 509, 510, 511, 511, 511, 511, 511, + 511, 511, 511, 511, 511, 511, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 521, 521, 521, 521, + 521, 521, 521, 521, 521, 521, 522, 523, 524, 525, + + 526, 527, 527, 530, 530, 533, 536, 539, 542, 545, + 548, 551, 554, 556, 558, 560, 563, 566, 569, 572, + 575, 578, 581, 584, 587, 590, 591, 592, 595, 595, + 595, 596, 596, 596, 597, 598, 599, 600, 601, 602, + 602, 602, 603, 603, 604, 604, 605, 605, 605, 607, + 607, 609, 610, 611, 613, 614, 616, 617, 619, 620, + 621, 624, 625, 628, 629, 631, 631, 632, 632, 634, + 634, 634, 636, 639, 639, 642, 642, 643, 643, 644, + 645, 646, 649, 652, 655, 658, 661, 664, 665, 668, + 671, 674, 677, 680, 683, 686, 686, 687, 688, 689, + + 690, 691, 691, 692, 693, 693, 694, 696, 697, 699, + 701, 702, 704, 705, 707, 707, 709, 709, 710, 713, + 716, 719, 722, 725, 728, 731, 734, 734, 735, 736, + 737, 738, 738, 738, 739, 740, 740, 742, 744, 747, + 750, 753, 753, 754, 755, 757, 758, 759, 762, 762, + 764, 765, 767, 767, 768, 768, 770, 770, 771, 771 } ; static yyconst int yy_ec[256] = @@ -487,366 +489,372 @@ static yyconst int yy_meta[50] = 14, 14, 14, 14, 14, 14, 1, 1, 16 } ; -static yyconst short int yy_base[499] = +static yyconst short int yy_base[514] = { 0, 0, 3, 5, 11, 20, 29, 35, 38, 45, 53, 55, 60, 62, 71, 87, 18, 136, 10, 185, 44, 229, 66, 275, 68, 324, 234, 373, 235, 420, 423, - 445, 237, 1494, 2018, 428, 2018, 6, 493, 65, 0, - 494, 0, 2018, 67, 0, 495, 226, 2018, 496, 2018, - 228, 1490, 497, 229, 0, 426, 0, 1476, 231, 502, - 417, 1487, 499, 1482, 504, 503, 505, 0, 520, 0, - 1466, 419, 521, 425, 522, 525, 528, 2018, 0, 2018, - 1457, 2018, 1459, 1457, 545, 548, 513, 532, 531, 536, - 501, 521, 535, 539, 552, 542, 556, 549, 562, 2018, - - 2018, 531, 604, 1472, 2018, 598, 2018, 600, 2018, 621, - 624, 628, 2018, 597, 1455, 631, 634, 648, 631, 653, - 0, 2018, 651, 656, 636, 83, 2018, 0, 1470, 659, - 498, 2018, 2018, 0, 206, 1438, 663, 2018, 2018, 654, - 596, 666, 668, 676, 681, 672, 681, 680, 0, 685, - 678, 690, 684, 2018, 689, 687, 699, 702, 703, 2018, - 704, 0, 617, 1454, 2018, 707, 712, 710, 1466, 2018, - 722, 726, 714, 729, 732, 733, 0, 500, 728, 734, - 741, 735, 741, 743, 752, 1450, 758, 1454, 2018, 1443, - 761, 765, 769, 2018, 391, 741, 747, 737, 750, 756, - - 757, 766, 801, 765, 772, 775, 778, 783, 787, 796, - 800, 804, 793, 805, 816, 849, 852, 861, 1457, 1425, - 864, 2018, 2018, 2018, 2018, 1435, 2018, 860, 0, 869, - 1437, 882, 886, 889, 2018, 892, 910, 0, 913, 918, - 2018, 1416, 2018, 924, 0, 858, 906, 719, 1424, 934, - 823, 783, 0, 1420, 938, 711, 0, 868, 1371, 1354, - 928, 2018, 937, 0, 790, 853, 0, 1387, 913, 941, - 0, 1371, 943, 942, 954, 958, 957, 958, 965, 962, - 964, 1367, 985, 988, 980, 1357, 878, 992, 40, 968, - 802, 2018, 996, 779, 999, 968, 980, 981, 985, 908, - - 974, 988, 989, 1031, 1034, 2018, 1010, 1005, 984, 999, - 1013, 1016, 1020, 1021, 1027, 1031, 1073, 920, 1075, 1221, - 1077, 1084, 1087, 977, 1082, 1213, 1213, 1219, 1211, 1087, - 0, 1248, 2018, 1220, 2018, 0, 1218, 2018, 1213, 2018, - 1092, 1093, 0, 1094, 0, 1095, 1107, 0, 1109, 0, - 1211, 2018, 1187, 2018, 1057, 1172, 1146, 2018, 1127, 2018, - 1118, 1120, 1112, 1102, 1125, 1126, 1098, 1103, 1084, 1107, - 1102, 1110, 2018, 1114, 1115, 1120, 1119, 1131, 1128, 1137, - 1079, 1057, 1042, 1034, 1004, 2018, 1017, 1165, 2018, 1016, - 2018, 0, 1167, 1166, 0, 1173, 0, 1004, 2018, 969, - - 2018, 1172, 1180, 1183, 1152, 1153, 1158, 1161, 1164, 1168, - 1174, 910, 877, 876, 870, 831, 1206, 736, 1211, 641, - 0, 1226, 1216, 1169, 1190, 1205, 578, 575, 519, 0, - 503, 2018, 1196, 220, 0, 51, 0, 1, 0, 1236, - 0, 1239, 2018, 2018, 1259, 1275, 1291, 1307, 1323, 1339, - 1355, 1371, 1387, 1403, 1419, 1435, 1450, 1463, 1472, 1485, - 1498, 1511, 1229, 1236, 1238, 1521, 1534, 1549, 1553, 1566, - 1581, 1587, 1601, 1617, 1633, 1649, 1665, 1681, 1697, 1713, - 1729, 1745, 1761, 1777, 1793, 1809, 1825, 1841, 1857, 1873, - 1889, 1905, 1921, 1937, 1953, 1969, 1985, 2001 - + 445, 237, 1529, 2037, 428, 2037, 6, 493, 65, 0, + 494, 0, 2037, 67, 0, 495, 226, 2037, 496, 2037, + 228, 1525, 497, 229, 0, 426, 0, 1511, 231, 502, + 417, 1523, 499, 1522, 504, 503, 505, 0, 520, 0, + 1508, 419, 521, 425, 522, 525, 528, 2037, 1499, 2037, + 1500, 2037, 1500, 1496, 545, 548, 513, 532, 531, 536, + 501, 521, 535, 539, 552, 542, 556, 549, 562, 2037, + + 2037, 531, 604, 1511, 2037, 598, 2037, 600, 2037, 621, + 624, 628, 2037, 1488, 597, 1493, 631, 634, 648, 631, + 653, 0, 2037, 651, 656, 636, 83, 2037, 0, 1507, + 659, 498, 2037, 2037, 0, 206, 1471, 663, 2037, 2037, + 654, 596, 666, 668, 676, 681, 672, 681, 680, 0, + 685, 678, 690, 684, 2037, 689, 687, 699, 702, 703, + 2037, 704, 0, 617, 1485, 2037, 707, 712, 710, 1495, + 2037, 722, 726, 714, 729, 732, 733, 0, 500, 728, + 734, 741, 735, 741, 743, 752, 1477, 758, 1485, 1484, + 2037, 1475, 761, 765, 769, 2037, 391, 741, 747, 737, + + 750, 756, 757, 766, 801, 765, 772, 775, 778, 783, + 787, 796, 800, 804, 793, 805, 816, 849, 852, 861, + 1489, 1457, 864, 2037, 2037, 2037, 2037, 1467, 2037, 860, + 0, 869, 1470, 882, 886, 889, 2037, 892, 910, 0, + 913, 918, 2037, 1465, 2037, 924, 0, 858, 906, 719, + 1480, 934, 823, 783, 0, 1477, 938, 711, 0, 868, + 1452, 1437, 928, 2037, 937, 0, 790, 853, 1464, 906, + 1471, 943, 941, 1445, 907, 1442, 946, 944, 955, 956, + 960, 964, 965, 971, 976, 983, 962, 987, 1438, 993, + 988, 994, 999, 1413, 878, 1006, 40, 996, 802, 2037, + + 1404, 1014, 779, 1017, 985, 988, 995, 998, 904, 992, + 1002, 1001, 1044, 1047, 2037, 1023, 1015, 1018, 1026, 1029, + 1032, 1036, 1039, 1040, 1049, 1083, 1085, 1092, 1372, 1094, + 1097, 1101, 1104, 1106, 1349, 1347, 1344, 1235, 1103, 0, + 1272, 2037, 1258, 2037, 1270, 2037, 0, 1269, 2037, 1268, + 2037, 1105, 1107, 0, 1252, 0, 1117, 0, 1112, 1124, + 0, 1129, 0, 1254, 2037, 1073, 1249, 1237, 2037, 1130, + 1230, 1208, 2037, 1200, 2037, 1135, 1142, 1143, 961, 1137, + 1144, 1116, 1120, 1119, 1131, 1124, 1127, 2037, 1135, 1139, + 1144, 1136, 1145, 1152, 1155, 1127, 1114, 1105, 1093, 1079, + + 2037, 1088, 1181, 2037, 1057, 2037, 0, 1188, 1188, 0, + 1196, 0, 1052, 2037, 1011, 2037, 1195, 1189, 1203, 1172, + 1173, 1181, 1180, 1184, 1187, 1200, 959, 883, 876, 870, + 831, 1216, 736, 1229, 641, 0, 1232, 1235, 1206, 1213, + 1218, 578, 575, 519, 0, 503, 2037, 1222, 220, 0, + 51, 0, 1, 0, 1256, 0, 1258, 2037, 2037, 1278, + 1294, 1310, 1326, 1342, 1358, 1374, 1390, 1406, 1422, 1438, + 1454, 1469, 1482, 1491, 1504, 1517, 1530, 1026, 1255, 1256, + 1540, 1553, 1568, 1572, 1585, 1600, 1606, 1620, 1636, 1652, + 1668, 1684, 1700, 1716, 1732, 1748, 1764, 1780, 1796, 1812, + + 1828, 1844, 1860, 1876, 1892, 1908, 1924, 1940, 1956, 1972, + 1988, 2004, 2020 } ; -static yyconst short int yy_def[499] = +static yyconst short int yy_def[514] = { 0, - 445, 445, 446, 446, 447, 447, 448, 448, 449, 449, - 450, 450, 445, 445, 444, 15, 444, 17, 444, 19, - 17, 21, 444, 23, 444, 25, 444, 27, 445, 445, - 444, 31, 444, 444, 444, 444, 444, 444, 444, 451, - 451, 451, 444, 451, 452, 451, 451, 444, 444, 444, - 444, 444, 444, 444, 453, 453, 453, 444, 444, 453, - 444, 454, 444, 454, 454, 454, 454, 455, 444, 455, - 444, 455, 455, 455, 444, 444, 444, 444, 456, 444, - 444, 444, 444, 444, 457, 457, 86, 86, 86, 86, - 86, 86, 86, 86, 86, 86, 86, 86, 86, 444, - - 444, 458, 444, 444, 444, 444, 444, 459, 444, 444, - 444, 444, 444, 444, 444, 460, 461, 444, 444, 462, - 463, 444, 444, 444, 444, 444, 444, 464, 444, 444, - 444, 444, 444, 465, 465, 465, 444, 444, 444, 466, - 444, 444, 444, 444, 444, 444, 444, 444, 451, 451, - 451, 451, 451, 444, 451, 451, 451, 451, 444, 444, - 444, 453, 453, 444, 444, 444, 453, 444, 454, 444, - 454, 454, 454, 454, 454, 454, 455, 444, 444, 455, - 455, 455, 444, 455, 444, 444, 444, 444, 444, 444, - 467, 444, 444, 444, 86, 86, 86, 86, 86, 86, + 460, 460, 461, 461, 462, 462, 463, 463, 464, 464, + 465, 465, 460, 460, 459, 15, 459, 17, 459, 19, + 17, 21, 459, 23, 459, 25, 459, 27, 460, 460, + 459, 31, 459, 459, 459, 459, 459, 459, 459, 466, + 466, 466, 459, 466, 467, 466, 466, 459, 459, 459, + 459, 459, 459, 459, 468, 468, 468, 459, 459, 468, + 459, 469, 459, 469, 469, 469, 469, 470, 459, 470, + 459, 470, 470, 470, 459, 459, 459, 459, 471, 459, + 459, 459, 459, 459, 472, 472, 86, 86, 86, 86, + 86, 86, 86, 86, 86, 86, 86, 86, 86, 459, + + 459, 473, 459, 459, 459, 459, 459, 474, 459, 459, + 459, 459, 459, 471, 459, 459, 475, 476, 459, 459, + 477, 478, 459, 459, 459, 459, 459, 459, 479, 459, + 459, 459, 459, 459, 480, 480, 480, 459, 459, 459, + 481, 459, 459, 459, 459, 459, 459, 459, 459, 466, + 466, 466, 466, 466, 459, 466, 466, 466, 466, 459, + 459, 459, 468, 468, 459, 459, 459, 468, 459, 469, + 459, 469, 469, 469, 469, 469, 469, 470, 459, 459, + 470, 470, 470, 459, 470, 459, 459, 459, 459, 471, + 459, 459, 482, 459, 459, 459, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, - 86, 86, 86, 86, 86, 458, 468, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 459, 469, 444, - 444, 444, 470, 444, 444, 460, 461, 471, 444, 444, - 444, 444, 444, 462, 463, 444, 444, 444, 444, 444, - 444, 444, 464, 444, 444, 444, 465, 465, 465, 465, - 444, 444, 466, 472, 444, 444, 473, 474, 444, 444, - 475, 476, 451, 451, 477, 478, 451, 451, 479, 480, - 481, 482, 454, 454, 483, 484, 444, 444, 485, 455, - 486, 444, 467, 86, 458, 86, 86, 86, 86, 86, - - 86, 86, 86, 444, 444, 444, 86, 86, 86, 86, - 86, 86, 86, 86, 86, 86, 444, 444, 468, 444, - 470, 460, 461, 444, 471, 465, 465, 465, 465, 472, - 487, 488, 444, 474, 444, 489, 490, 444, 476, 444, - 491, 492, 451, 478, 451, 493, 494, 451, 480, 451, - 454, 444, 482, 444, 495, 496, 454, 444, 484, 444, - 444, 444, 444, 485, 497, 486, 86, 86, 86, 86, - 86, 86, 444, 86, 86, 86, 86, 86, 86, 86, - 444, 465, 465, 465, 465, 444, 488, 444, 444, 490, - 444, 451, 492, 451, 451, 494, 451, 454, 444, 496, - - 444, 444, 497, 86, 86, 86, 86, 86, 86, 86, - 86, 444, 465, 465, 465, 465, 444, 444, 451, 451, - 498, 444, 444, 86, 86, 86, 444, 465, 465, 465, - 465, 444, 86, 444, 465, 465, 465, 444, 465, 444, - 465, 444, 444, 0, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444 - + 86, 86, 86, 86, 86, 86, 86, 473, 483, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 474, + 484, 459, 459, 459, 485, 459, 459, 475, 476, 486, + 459, 459, 459, 459, 459, 477, 478, 459, 459, 459, + 459, 459, 459, 459, 479, 459, 459, 459, 480, 480, + 480, 480, 459, 459, 481, 487, 459, 459, 488, 488, + 489, 459, 459, 490, 490, 491, 466, 466, 492, 492, + 493, 466, 466, 494, 494, 495, 496, 496, 497, 469, + 469, 498, 498, 499, 459, 459, 500, 470, 501, 459, + + 459, 482, 86, 473, 86, 86, 86, 86, 86, 86, + 86, 86, 459, 459, 459, 86, 86, 86, 86, 86, + 86, 86, 86, 86, 86, 459, 459, 483, 459, 485, + 475, 476, 459, 486, 480, 480, 480, 480, 487, 502, + 503, 459, 459, 459, 489, 459, 504, 505, 459, 491, + 459, 506, 507, 466, 466, 466, 493, 466, 508, 509, + 466, 495, 466, 469, 459, 469, 469, 497, 459, 510, + 511, 469, 459, 499, 459, 459, 459, 459, 500, 512, + 501, 86, 86, 86, 86, 86, 86, 459, 86, 86, + 86, 86, 86, 86, 86, 459, 480, 480, 480, 480, + + 459, 503, 459, 459, 505, 459, 466, 507, 466, 466, + 509, 466, 469, 459, 511, 459, 459, 512, 86, 86, + 86, 86, 86, 86, 86, 86, 459, 480, 480, 480, + 480, 459, 459, 466, 466, 513, 459, 459, 86, 86, + 86, 459, 480, 480, 480, 480, 459, 86, 459, 480, + 480, 480, 459, 480, 459, 480, 459, 459, 0, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459 } ; -static yyconst short int yy_nxt[2068] = +static yyconst short int yy_nxt[2087] = { 0, - 444, 324, 35, 36, 38, 35, 36, 41, 42, 235, - 43, 38, 46, 41, 42, 37, 43, 143, 39, 103, - 44, 144, 49, 50, 104, 39, 47, 441, 45, 440, + 459, 333, 35, 36, 38, 35, 36, 41, 42, 237, + 43, 38, 46, 41, 42, 37, 43, 144, 39, 103, + 44, 145, 49, 50, 104, 39, 47, 456, 45, 455, 53, 49, 50, 39, 45, 51, 56, 35, 57, 60, - 35, 57, 335, 52, 54, 118, 58, 63, 64, 58, - 59, 334, 52, 61, 66, 63, 64, 69, 70, 119, + 35, 57, 346, 52, 54, 119, 58, 63, 64, 58, + 59, 345, 52, 61, 66, 63, 64, 69, 70, 120, 65, 73, 69, 70, 35, 36, 71, 38, 67, 38, - 72, 71, 38, 35, 36, 74, 147, 37, 152, 439, - 148, 39, 153, 39, 252, 252, 39, 34, 75, 76, + 72, 71, 38, 35, 36, 74, 148, 37, 153, 454, + 149, 39, 154, 39, 254, 254, 39, 34, 75, 76, 77, 34, 78, 34, 34, 79, 34, 34, 34, 80, 81, 82, 37, 83, 84, 80, 34, 80, 34, 85, 34, 86, 87, 88, 89, 90, 91, 92, 85, 93, 85, 85, 85, 94, 85, 85, 95, 96, 97, 98, 85, 99, 85, 100, 101, 102, 34, 34, 35, 36, - 34, 78, 34, 34, 34, 105, 106, 34, 107, 34, + 34, 78, 34, 34, 79, 105, 106, 34, 107, 34, 34, 37, 34, 34, 34, 34, 34, 34, 108, 34, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 34, 34, 34, 109, 110, 111, 112, 109, - 113, 109, 109, 109, 34, 109, 109, 109, 109, 109, - - 114, 34, 115, 109, 109, 109, 109, 116, 109, 116, - 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, - 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, - 116, 109, 109, 117, 34, 130, 137, 157, 38, 143, - 147, 158, 143, 159, 161, 258, 166, 438, 259, 39, - 39, 120, 39, 120, 120, 120, 120, 120, 120, 120, - 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, - 120, 120, 120, 120, 120, 34, 34, 35, 36, 34, - 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, - 37, 34, 34, 34, 34, 34, 34, 121, 34, 121, - - 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, + 113, 109, 109, 114, 34, 109, 109, 109, 109, 109, + + 115, 34, 116, 109, 109, 109, 109, 117, 109, 117, + 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, + 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, + 117, 109, 109, 118, 34, 131, 138, 158, 38, 144, + 148, 159, 144, 160, 162, 260, 167, 453, 261, 39, + 39, 121, 39, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, - 121, 122, 34, 34, 34, 123, 124, 36, 34, 34, - 34, 125, 34, 34, 34, 125, 34, 34, 34, 37, - 34, 126, 127, 34, 34, 34, 128, 34, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 129, 34, 34, 34, 131, 35, 36, 34, 34, 34, - 34, 34, 34, 34, 34, 132, 34, 34, 37, 34, - 34, 34, 133, 34, 34, 134, 34, 134, 134, 134, - - 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, - 134, 135, 134, 134, 134, 134, 136, 134, 134, 129, - 34, 34, 35, 36, 38, 35, 36, 163, 147, 141, - 179, 195, 168, 195, 180, 37, 183, 164, 39, 138, - 184, 139, 138, 142, 139, 34, 34, 35, 36, 34, - 34, 34, 34, 34, 34, 34, 34, 34, 34, 140, - 37, 140, 34, 34, 34, 34, 34, 140, 34, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 34, 34, 34, 145, 150, 155, 141, 145, 256, - - 141, 287, 288, 167, 173, 170, 170, 170, 146, 151, - 156, 142, 146, 164, 142, 171, 175, 146, 174, 172, - 176, 141, 181, 185, 185, 185, 187, 185, 185, 185, - 185, 185, 216, 216, 216, 142, 182, 437, 205, 186, - 142, 195, 186, 195, 249, 186, 192, 193, 185, 192, - 193, 185, 198, 195, 194, 195, 199, 194, 206, 202, - 436, 195, 186, 195, 203, 186, 200, 207, 203, 201, - 204, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 208, 195, 195, 209, 195, 214, 210, 211, 196, 195, - 197, 195, 195, 215, 195, 212, 195, 141, 195, 221, - - 221, 213, 195, 435, 195, 218, 185, 185, 143, 225, - 219, 142, 144, 226, 227, 222, 223, 229, 163, 146, - 434, 186, 230, 230, 230, 232, 230, 230, 164, 230, - 230, 230, 234, 230, 230, 237, 237, 237, 231, 142, - 235, 231, 147, 251, 224, 231, 148, 251, 231, 239, - 230, 230, 246, 247, 240, 240, 274, 250, 247, 262, - 255, 247, 241, 146, 261, 231, 242, 243, 248, 264, - 229, 142, 267, 248, 146, 262, 248, 265, 146, 267, - 268, 266, 145, 269, 272, 271, 150, 270, 276, 273, - 155, 268, 271, 274, 275, 272, 146, 249, 277, 276, - - 151, 275, 278, 279, 156, 249, 280, 268, 272, 249, - 279, 268, 256, 167, 272, 173, 170, 280, 268, 272, - 252, 252, 268, 164, 170, 272, 281, 146, 170, 174, - 282, 170, 267, 281, 170, 170, 285, 286, 289, 267, - 283, 282, 181, 285, 284, 271, 269, 291, 286, 289, - 290, 266, 271, 185, 185, 185, 182, 249, 291, 187, - 185, 185, 293, 293, 293, 297, 192, 193, 185, 186, - 193, 193, 185, 142, 194, 186, 203, 195, 186, 195, - 300, 195, 186, 195, 252, 252, 186, 195, 296, 195, - 298, 299, 195, 301, 331, 302, 195, 195, 195, 195, - - 303, 331, 304, 305, 340, 307, 195, 195, 195, 295, - 306, 203, 195, 339, 195, 195, 308, 195, 195, 195, - 195, 195, 203, 195, 309, 195, 310, 195, 311, 195, - 251, 314, 312, 195, 251, 195, 195, 315, 195, 313, - 195, 195, 195, 195, 195, 195, 195, 195, 316, 203, - 216, 216, 216, 317, 318, 431, 195, 332, 195, 246, - 247, 194, 218, 185, 185, 221, 221, 219, 332, 225, - 230, 230, 230, 226, 227, 248, 146, 229, 186, 287, - 288, 222, 223, 232, 230, 230, 231, 321, 321, 321, - 234, 230, 230, 234, 230, 230, 430, 142, 235, 231, - - 326, 235, 429, 231, 249, 327, 231, 247, 247, 231, - 224, 237, 237, 237, 239, 230, 230, 336, 428, 240, - 240, 318, 318, 248, 336, 240, 240, 241, 146, 261, - 231, 242, 243, 241, 323, 250, 247, 242, 243, 255, - 247, 229, 262, 146, 427, 337, 342, 341, 369, 142, - 195, 248, 264, 146, 341, 248, 337, 342, 262, 333, - 345, 346, 347, 334, 350, 149, 352, 339, 346, 149, - 338, 401, 365, 347, 249, 169, 149, 333, 324, 169, - 149, 334, 358, 365, 249, 339, 235, 170, 338, 355, - 170, 169, 356, 361, 362, 169, 355, 293, 293, 293, - - 216, 216, 216, 356, 367, 203, 170, 363, 195, 203, - 195, 368, 371, 186, 195, 370, 195, 372, 391, 388, - 195, 195, 195, 195, 195, 195, 374, 195, 195, 195, - 195, 195, 304, 305, 185, 305, 305, 185, 203, 195, - 306, 375, 203, 373, 295, 195, 416, 195, 186, 378, - 195, 186, 195, 195, 376, 195, 203, 377, 195, 399, - 195, 195, 195, 195, 379, 380, 415, 195, 169, 195, - 414, 195, 169, 195, 317, 318, 317, 318, 321, 321, - 321, 413, 194, 324, 194, 234, 230, 230, 237, 237, - 237, 235, 262, 235, 231, 394, 345, 386, 387, 334, - - 389, 231, 264, 149, 335, 412, 149, 149, 262, 397, - 149, 350, 390, 334, 339, 386, 387, 334, 389, 361, - 362, 361, 362, 402, 404, 323, 195, 391, 340, 360, - 390, 203, 339, 363, 203, 363, 390, 339, 195, 405, - 195, 409, 195, 195, 406, 195, 410, 195, 170, 195, - 195, 407, 195, 408, 195, 195, 195, 195, 411, 195, - 195, 195, 195, 203, 404, 203, 417, 419, 195, 394, - 195, 195, 387, 195, 401, 397, 421, 195, 390, 195, - 418, 420, 391, 421, 422, 423, 203, 425, 424, 354, - 387, 390, 195, 195, 195, 195, 390, 203, 195, 203, - - 195, 195, 426, 195, 195, 404, 195, 417, 195, 195, - 195, 433, 419, 170, 195, 340, 195, 423, 423, 185, - 391, 418, 335, 195, 203, 195, 420, 422, 423, 185, - 195, 203, 195, 186, 203, 194, 195, 442, 195, 245, - 442, 443, 245, 186, 443, 195, 253, 195, 257, 253, - 388, 257, 385, 384, 383, 443, 382, 381, 443, 34, + 121, 121, 121, 121, 121, 34, 34, 35, 36, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, - 34, 34, 34, 34, 34, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 37, 34, 34, 34, 34, 34, 34, 122, 34, 122, + + 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 122, 123, 34, 34, 34, 124, 125, 36, 34, 34, + 34, 126, 34, 34, 34, 126, 34, 34, 34, 37, + 34, 127, 128, 34, 34, 34, 129, 34, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 130, 34, 34, 34, 132, 35, 36, 34, 34, 34, + 34, 34, 34, 34, 34, 133, 34, 34, 37, 34, + 34, 34, 134, 34, 34, 135, 34, 135, 135, 135, + + 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, + 135, 136, 135, 135, 135, 135, 137, 135, 135, 130, + 34, 34, 35, 36, 38, 35, 36, 164, 148, 142, + 180, 197, 169, 197, 181, 37, 184, 165, 39, 139, + 185, 140, 139, 143, 140, 34, 34, 35, 36, 34, + 34, 34, 34, 34, 34, 34, 34, 34, 34, 141, + 37, 141, 34, 34, 34, 34, 34, 141, 34, 141, + 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, + 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, + 141, 34, 34, 34, 146, 151, 156, 142, 146, 258, + + 142, 295, 296, 168, 174, 171, 171, 171, 147, 152, + 157, 143, 147, 165, 143, 172, 176, 147, 175, 173, + 177, 142, 182, 186, 186, 186, 188, 186, 186, 186, + 186, 186, 218, 218, 218, 143, 183, 452, 207, 187, + 143, 197, 187, 197, 251, 187, 194, 195, 186, 194, + 195, 186, 200, 197, 196, 197, 201, 196, 208, 204, + 451, 197, 187, 197, 205, 187, 202, 209, 205, 203, + 206, 197, 197, 197, 197, 197, 197, 197, 197, 197, + 210, 197, 197, 211, 197, 216, 212, 213, 198, 197, + 199, 197, 197, 217, 197, 214, 197, 142, 197, 223, + + 223, 215, 197, 450, 197, 220, 186, 186, 144, 227, + 221, 143, 145, 228, 229, 224, 225, 231, 164, 147, + 449, 187, 232, 232, 232, 234, 232, 232, 165, 232, + 232, 232, 236, 232, 232, 239, 239, 239, 233, 143, + 237, 233, 148, 253, 226, 233, 149, 253, 233, 241, + 232, 232, 248, 249, 242, 242, 278, 252, 249, 264, + 257, 249, 243, 147, 263, 233, 244, 245, 250, 266, + 231, 143, 269, 250, 147, 264, 250, 267, 147, 270, + 271, 268, 146, 272, 276, 274, 151, 273, 281, 277, + 156, 271, 275, 278, 279, 276, 147, 251, 282, 281, + + 152, 280, 283, 284, 157, 251, 286, 271, 276, 251, + 285, 271, 258, 168, 276, 174, 171, 286, 271, 276, + 254, 254, 271, 165, 171, 276, 287, 147, 171, 175, + 289, 171, 269, 288, 171, 171, 292, 294, 297, 270, + 290, 289, 182, 293, 291, 274, 272, 299, 294, 297, + 298, 268, 275, 186, 186, 186, 183, 251, 299, 188, + 186, 186, 302, 302, 302, 306, 194, 195, 186, 187, + 195, 195, 186, 143, 196, 187, 205, 197, 187, 197, + 309, 197, 187, 197, 254, 254, 187, 197, 305, 197, + 307, 308, 197, 310, 340, 311, 197, 197, 197, 197, + + 312, 340, 313, 314, 351, 316, 197, 197, 197, 304, + 315, 205, 197, 350, 197, 197, 317, 197, 197, 197, + 197, 197, 205, 197, 318, 197, 319, 197, 320, 197, + 253, 323, 321, 197, 253, 197, 197, 324, 197, 322, + 197, 197, 197, 197, 197, 197, 197, 197, 325, 205, + 218, 218, 218, 326, 327, 446, 197, 341, 197, 248, + 249, 196, 220, 186, 186, 223, 223, 221, 341, 227, + 232, 232, 232, 228, 229, 250, 147, 231, 187, 295, + 296, 224, 225, 234, 232, 232, 233, 330, 330, 330, + 236, 232, 232, 236, 232, 232, 445, 143, 237, 233, + + 335, 237, 444, 233, 251, 336, 233, 249, 249, 233, + 226, 239, 239, 239, 241, 232, 232, 459, 459, 242, + 242, 344, 344, 250, 443, 242, 242, 243, 147, 263, + 233, 244, 245, 243, 332, 252, 249, 244, 245, 257, + 249, 231, 264, 147, 384, 348, 197, 347, 353, 143, + 352, 250, 266, 147, 347, 250, 348, 352, 264, 353, + 342, 342, 358, 346, 365, 345, 355, 150, 359, 360, + 150, 356, 345, 366, 251, 359, 349, 170, 342, 342, + 360, 349, 355, 345, 251, 363, 150, 150, 350, 365, + 171, 356, 371, 442, 349, 171, 373, 370, 170, 349, + + 380, 373, 367, 371, 370, 366, 350, 376, 377, 170, + 170, 380, 382, 416, 367, 302, 302, 302, 218, 218, + 218, 378, 205, 205, 383, 197, 386, 197, 197, 387, + 197, 187, 197, 385, 197, 197, 247, 197, 197, 247, + 197, 197, 197, 197, 197, 313, 314, 186, 314, 314, + 186, 205, 205, 315, 171, 197, 388, 197, 197, 406, + 389, 187, 304, 197, 187, 197, 197, 393, 390, 197, + 391, 197, 205, 392, 197, 171, 197, 394, 197, 197, + 197, 197, 197, 395, 326, 327, 327, 327, 367, 197, + 403, 197, 196, 326, 327, 330, 330, 330, 236, 232, + + 232, 196, 239, 239, 239, 333, 237, 333, 264, 409, + 401, 233, 402, 237, 233, 237, 150, 404, 266, 358, + 150, 431, 345, 150, 264, 430, 412, 150, 401, 405, + 402, 363, 414, 429, 350, 404, 376, 377, 428, 406, + 345, 170, 332, 376, 377, 170, 351, 405, 405, 205, + 378, 205, 350, 427, 417, 350, 197, 378, 197, 419, + 197, 197, 197, 420, 197, 424, 421, 197, 422, 197, + 425, 197, 426, 197, 423, 197, 197, 197, 197, 197, + 205, 197, 432, 205, 197, 197, 197, 197, 419, 434, + 409, 406, 197, 402, 197, 197, 433, 197, 412, 436, + + 405, 405, 375, 435, 437, 438, 436, 440, 439, 205, + 171, 402, 197, 197, 197, 197, 205, 432, 205, 405, + 197, 197, 197, 197, 197, 419, 197, 197, 441, 197, + 434, 433, 416, 437, 438, 186, 438, 438, 186, 369, + 197, 196, 197, 197, 435, 197, 197, 205, 448, 187, + 205, 171, 187, 197, 205, 197, 171, 457, 197, 457, + 197, 458, 197, 458, 197, 255, 259, 356, 255, 259, + 351, 406, 346, 344, 403, 458, 400, 458, 34, 34, + 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, + 34, 34, 34, 34, 40, 40, 40, 40, 40, 40, - 48, 48, 48, 48, 48, 48, 48, 55, 55, 55, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, - 55, 55, 55, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 62, 68, + 55, 55, 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, - 68, 68, 68, 68, 68, 149, 149, 149, 149, 360, - 149, 149, 149, 149, 149, 149, 149, 149, 149, 354, - 149, 154, 154, 340, 154, 154, 154, 154, 154, 154, - 154, 154, 154, 154, 154, 154, 154, 162, 162, 335, - 162, 162, 162, 329, 162, 162, 328, 162, 162, 162, - - 162, 162, 162, 169, 169, 169, 169, 169, 169, 169, - 169, 169, 169, 169, 169, 169, 169, 169, 169, 177, - 177, 254, 177, 177, 177, 254, 177, 177, 177, 177, - 177, 177, 177, 177, 177, 188, 188, 243, 188, 188, - 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, - 188, 195, 195, 195, 233, 195, 227, 320, 220, 190, - 195, 195, 292, 195, 217, 217, 217, 191, 170, 165, - 260, 254, 233, 220, 191, 190, 217, 228, 189, 228, - 228, 178, 228, 228, 170, 228, 236, 236, 236, 170, - 236, 165, 160, 444, 444, 236, 236, 444, 236, 238, - - 238, 238, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 238, 244, 244, 444, 444, 244, 444, 244, 244, - 444, 244, 244, 444, 244, 263, 444, 444, 444, 263, - 263, 263, 444, 263, 263, 294, 294, 294, 444, 444, - 444, 444, 444, 444, 444, 294, 444, 294, 444, 294, - 319, 319, 444, 444, 319, 444, 444, 444, 444, 319, - 444, 444, 319, 229, 229, 444, 229, 322, 322, 322, - 444, 444, 444, 444, 444, 444, 444, 322, 444, 322, - 444, 322, 325, 444, 444, 444, 325, 444, 444, 444, - 444, 325, 444, 444, 325, 330, 444, 330, 444, 444, - - 330, 333, 333, 333, 333, 333, 333, 444, 333, 333, - 444, 333, 333, 333, 333, 333, 333, 334, 334, 334, - 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, - 334, 334, 334, 338, 338, 338, 338, 338, 338, 444, - 338, 338, 444, 338, 338, 338, 338, 338, 338, 339, - 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, - 339, 339, 339, 339, 339, 343, 343, 343, 343, 343, - 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, - 343, 344, 344, 344, 344, 344, 344, 344, 344, 344, - 344, 344, 344, 344, 344, 344, 344, 348, 348, 348, - - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 349, 349, 349, 349, 349, 349, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 349, 351, - 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, - 351, 351, 351, 351, 351, 353, 353, 353, 353, 353, - 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, - 353, 357, 357, 357, 357, 357, 357, 357, 357, 357, - 357, 357, 357, 357, 357, 357, 357, 359, 359, 359, - 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, - 359, 359, 359, 364, 364, 364, 364, 364, 364, 364, - - 364, 364, 364, 364, 364, 364, 364, 364, 364, 366, - 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, - 366, 366, 366, 366, 366, 386, 386, 386, 386, 386, - 386, 444, 386, 386, 444, 386, 386, 386, 386, 386, - 386, 387, 387, 387, 387, 387, 387, 387, 387, 387, - 387, 387, 387, 387, 387, 387, 387, 389, 389, 389, - 389, 389, 389, 444, 389, 389, 444, 389, 389, 389, - 389, 389, 389, 390, 390, 390, 390, 390, 390, 390, - 390, 390, 390, 390, 390, 390, 390, 390, 390, 392, - 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, - - 392, 392, 392, 392, 392, 393, 393, 393, 393, 393, - 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, - 393, 395, 395, 395, 395, 395, 395, 395, 395, 395, - 395, 395, 395, 395, 395, 395, 395, 396, 396, 396, - 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, - 396, 396, 396, 398, 398, 398, 398, 398, 398, 398, - 398, 398, 398, 398, 398, 398, 398, 398, 398, 400, - 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - 400, 400, 400, 400, 400, 403, 403, 403, 403, 403, - 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, - - 403, 432, 432, 432, 432, 432, 432, 444, 432, 432, - 444, 432, 432, 432, 432, 432, 432, 33, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444 + 68, 68, 68, 68, 150, 150, 150, 150, 399, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 398, 150, + 155, 155, 397, 155, 155, 155, 155, 155, 155, 155, + + 155, 155, 155, 155, 155, 155, 163, 163, 396, 163, + 163, 163, 300, 163, 163, 375, 163, 163, 163, 163, + 163, 163, 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 170, 178, 178, + 369, 178, 178, 178, 351, 178, 178, 178, 178, 178, + 178, 178, 178, 178, 189, 189, 343, 189, 189, 189, + 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, + 197, 197, 197, 346, 197, 343, 338, 337, 256, 197, + 197, 256, 197, 219, 219, 219, 245, 235, 229, 329, + 222, 192, 301, 300, 193, 219, 230, 171, 230, 230, + + 166, 230, 230, 262, 230, 238, 238, 238, 256, 238, + 235, 190, 222, 193, 238, 238, 192, 238, 240, 240, + 240, 191, 190, 179, 171, 171, 166, 161, 459, 459, + 240, 246, 246, 459, 459, 246, 459, 246, 246, 459, + 246, 246, 459, 246, 265, 459, 459, 459, 265, 265, + 265, 459, 265, 265, 303, 303, 303, 459, 459, 459, + 459, 459, 459, 459, 303, 459, 303, 459, 303, 328, + 328, 459, 459, 328, 459, 459, 459, 459, 328, 459, + 459, 328, 231, 231, 459, 231, 331, 331, 331, 459, + 459, 459, 459, 459, 459, 459, 331, 459, 331, 459, + + 331, 334, 459, 459, 459, 334, 459, 459, 459, 459, + 334, 459, 459, 334, 339, 459, 339, 459, 459, 339, + 342, 342, 342, 342, 342, 342, 342, 342, 342, 459, + 342, 342, 342, 342, 342, 342, 345, 345, 345, 345, + 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, + 345, 345, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 459, 349, 349, 349, 349, 349, 349, 350, 350, + 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, + 350, 350, 350, 350, 354, 354, 354, 354, 354, 354, + 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, + + 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, + 357, 357, 357, 357, 357, 357, 361, 361, 361, 361, + 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, + 361, 361, 362, 362, 362, 362, 362, 362, 362, 362, + 362, 362, 362, 362, 362, 362, 362, 362, 364, 364, + 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, + 364, 364, 364, 364, 368, 368, 368, 368, 368, 368, + 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, + 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, + 372, 372, 372, 372, 372, 372, 374, 374, 374, 374, + + 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, + 374, 374, 379, 379, 379, 379, 379, 379, 379, 379, + 379, 379, 379, 379, 379, 379, 379, 379, 381, 381, + 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, + 381, 381, 381, 381, 401, 401, 401, 401, 401, 401, + 459, 401, 401, 459, 401, 401, 401, 401, 401, 401, + 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, + 402, 402, 402, 402, 402, 402, 404, 404, 404, 404, + 404, 404, 459, 404, 404, 459, 404, 404, 404, 404, + 404, 404, 405, 405, 405, 405, 405, 405, 405, 405, + + 405, 405, 405, 405, 405, 405, 405, 405, 407, 407, + 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, + 407, 407, 407, 407, 408, 408, 408, 408, 408, 408, + 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, + 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, + 410, 410, 410, 410, 410, 410, 411, 411, 411, 411, + 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, + 411, 411, 413, 413, 413, 413, 413, 413, 413, 413, + 413, 413, 413, 413, 413, 413, 413, 413, 415, 415, + 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, + + 415, 415, 415, 415, 418, 418, 418, 418, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, + 447, 447, 447, 447, 447, 447, 459, 447, 447, 459, + 447, 447, 447, 447, 447, 447, 33, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459 } ; -static yyconst short int yy_chk[2068] = +static yyconst short int yy_chk[2087] = { 0, - 0, 238, 1, 1, 2, 2, 2, 3, 3, 238, + 0, 240, 1, 1, 2, 2, 2, 3, 3, 240, 3, 18, 4, 4, 4, 1, 4, 37, 2, 16, - 3, 37, 5, 5, 16, 18, 4, 439, 3, 438, + 3, 37, 5, 5, 16, 18, 4, 454, 3, 453, 6, 6, 6, 16, 4, 5, 7, 7, 7, 8, - 8, 8, 289, 5, 6, 20, 7, 9, 9, 8, - 7, 289, 6, 8, 10, 10, 10, 11, 11, 20, + 8, 8, 297, 5, 6, 20, 7, 9, 9, 8, + 7, 297, 6, 8, 10, 10, 10, 11, 11, 20, 9, 12, 12, 12, 13, 13, 11, 22, 10, 24, - 11, 12, 14, 14, 14, 12, 39, 13, 44, 436, - 39, 22, 44, 24, 126, 126, 14, 15, 15, 15, + 11, 12, 14, 14, 14, 12, 39, 13, 44, 451, + 39, 22, 44, 24, 127, 127, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, @@ -864,7 +872,7 @@ static yyconst short int yy_chk[2068] = 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 21, 26, 28, 47, 32, 51, - 54, 47, 59, 51, 54, 135, 59, 434, 135, 26, + 54, 47, 59, 51, 54, 136, 59, 449, 136, 26, 28, 21, 32, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 23, 23, 23, 23, 23, @@ -885,186 +893,188 @@ static yyconst short int yy_chk[2068] = 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 29, 29, 30, 30, 30, 56, 61, 35, - 72, 195, 61, 195, 72, 29, 74, 56, 30, 29, + 72, 197, 61, 197, 72, 29, 74, 56, 30, 29, 74, 29, 30, 35, 30, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 38, 41, 46, 49, 53, 131, + 31, 31, 31, 31, 38, 41, 46, 49, 53, 132, - 63, 178, 178, 60, 66, 66, 65, 67, 38, 41, + 63, 179, 179, 60, 66, 66, 65, 67, 38, 41, 46, 49, 53, 60, 63, 65, 67, 60, 66, 65, 67, 69, 73, 75, 75, 75, 76, 76, 76, 77, - 77, 77, 102, 102, 102, 69, 73, 431, 91, 75, - 76, 91, 76, 91, 131, 77, 85, 85, 85, 86, + 77, 77, 102, 102, 102, 69, 73, 446, 91, 75, + 76, 91, 76, 91, 132, 77, 85, 85, 85, 86, 86, 86, 87, 87, 85, 87, 88, 86, 92, 89, - 429, 92, 85, 92, 93, 86, 88, 94, 89, 88, + 444, 92, 85, 92, 93, 86, 88, 94, 89, 88, 90, 89, 88, 89, 88, 93, 90, 93, 90, 94, 95, 94, 96, 96, 96, 98, 96, 97, 86, 98, - 86, 98, 95, 99, 95, 97, 97, 141, 97, 106, - - 106, 97, 99, 428, 99, 103, 103, 103, 114, 108, - 103, 141, 114, 108, 108, 106, 106, 108, 163, 103, - 427, 103, 110, 110, 110, 111, 111, 111, 163, 112, - 112, 112, 116, 116, 116, 117, 117, 117, 110, 111, - 116, 111, 119, 125, 106, 112, 119, 125, 116, 118, - 118, 118, 123, 123, 120, 120, 420, 124, 124, 140, - 130, 130, 120, 118, 137, 118, 120, 120, 123, 140, - 120, 124, 143, 124, 130, 140, 130, 142, 137, 143, - 144, 142, 145, 146, 148, 147, 150, 146, 153, 151, - 155, 144, 147, 151, 152, 148, 145, 123, 156, 153, - - 150, 152, 156, 157, 155, 130, 158, 159, 161, 137, - 157, 166, 256, 167, 168, 173, 173, 158, 159, 161, - 248, 248, 166, 167, 171, 168, 171, 167, 172, 173, - 172, 174, 179, 171, 175, 176, 175, 176, 180, 179, - 174, 172, 181, 175, 174, 183, 182, 184, 176, 180, - 182, 418, 183, 185, 185, 185, 181, 256, 184, 187, - 187, 187, 191, 191, 191, 198, 192, 192, 192, 185, - 193, 193, 193, 187, 192, 187, 196, 198, 191, 198, - 200, 196, 192, 196, 252, 252, 193, 197, 197, 197, - 199, 199, 199, 201, 265, 202, 200, 201, 200, 201, - - 202, 265, 203, 203, 291, 204, 202, 204, 202, 191, - 203, 205, 205, 291, 205, 206, 206, 206, 207, 294, - 207, 294, 207, 208, 208, 208, 209, 209, 210, 209, - 251, 213, 211, 213, 251, 213, 210, 214, 210, 211, - 211, 203, 211, 203, 212, 214, 212, 214, 215, 212, - 216, 216, 216, 217, 217, 416, 215, 266, 215, 246, - 246, 217, 218, 218, 218, 221, 221, 218, 266, 228, - 230, 230, 230, 228, 228, 246, 218, 228, 218, 287, - 287, 221, 221, 232, 232, 232, 230, 233, 233, 233, - 234, 234, 234, 236, 236, 236, 415, 232, 234, 232, - - 258, 236, 414, 233, 246, 258, 234, 247, 247, 236, - 221, 237, 237, 237, 239, 239, 239, 269, 413, 240, - 240, 318, 318, 247, 269, 244, 244, 240, 239, 261, - 239, 240, 240, 244, 233, 250, 250, 244, 244, 255, - 255, 244, 263, 261, 412, 270, 274, 273, 300, 250, - 300, 250, 263, 255, 273, 255, 270, 274, 263, 275, - 276, 277, 278, 276, 280, 275, 281, 280, 277, 275, - 279, 400, 290, 278, 261, 281, 279, 275, 324, 281, - 279, 276, 285, 290, 255, 280, 324, 283, 279, 283, - 284, 285, 284, 288, 288, 285, 283, 293, 293, 293, - - 295, 295, 295, 284, 297, 296, 398, 288, 296, 298, - 296, 299, 302, 293, 301, 301, 301, 303, 390, 387, - 297, 298, 297, 298, 309, 299, 309, 299, 302, 303, - 302, 303, 304, 304, 304, 305, 305, 305, 307, 310, - 304, 310, 308, 305, 293, 308, 385, 308, 304, 314, - 307, 305, 307, 311, 311, 311, 312, 313, 312, 355, - 313, 314, 313, 314, 315, 316, 384, 315, 355, 315, - 383, 316, 355, 316, 317, 317, 319, 319, 321, 321, - 321, 382, 317, 325, 319, 322, 322, 322, 323, 323, - 323, 325, 330, 322, 321, 342, 344, 341, 342, 344, - - 346, 322, 330, 341, 364, 381, 346, 341, 330, 347, - 346, 349, 347, 364, 349, 341, 342, 344, 346, 361, - 361, 362, 362, 363, 369, 321, 369, 365, 366, 359, - 347, 367, 349, 361, 368, 362, 365, 366, 367, 370, - 367, 375, 371, 368, 371, 368, 376, 370, 357, 370, - 372, 372, 372, 374, 374, 375, 374, 375, 378, 377, - 376, 377, 376, 377, 379, 380, 388, 394, 379, 393, - 379, 378, 393, 378, 356, 396, 402, 380, 396, 380, - 388, 394, 403, 402, 404, 404, 407, 406, 405, 353, - 393, 403, 405, 406, 405, 406, 396, 408, 407, 410, - - 407, 408, 411, 408, 409, 409, 409, 417, 410, 424, - 410, 424, 419, 351, 411, 339, 411, 423, 423, 423, - 337, 417, 334, 404, 433, 404, 419, 422, 422, 422, - 425, 425, 425, 423, 426, 422, 433, 440, 433, 463, - 442, 440, 463, 422, 442, 426, 464, 426, 465, 464, - 332, 465, 329, 328, 327, 440, 326, 320, 442, 445, - 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, - 445, 445, 445, 445, 445, 446, 446, 446, 446, 446, - 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, - 446, 447, 447, 447, 447, 447, 447, 447, 447, 447, - - 447, 447, 447, 447, 447, 447, 447, 448, 448, 448, - 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, - 448, 448, 448, 449, 449, 449, 449, 449, 449, 449, - 449, 449, 449, 449, 449, 449, 449, 449, 449, 450, - 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, - 450, 450, 450, 450, 450, 451, 451, 451, 451, 286, - 451, 451, 451, 451, 451, 451, 451, 451, 451, 282, - 451, 452, 452, 272, 452, 452, 452, 452, 452, 452, - 452, 452, 452, 452, 452, 452, 452, 453, 453, 268, - 453, 453, 453, 260, 453, 453, 259, 453, 453, 453, - - 453, 453, 453, 454, 454, 454, 454, 454, 454, 454, - 454, 454, 454, 454, 454, 454, 454, 454, 454, 455, - 455, 254, 455, 455, 455, 249, 455, 455, 455, 455, - 455, 455, 455, 455, 455, 456, 456, 242, 456, 456, - 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, - 456, 457, 457, 457, 231, 457, 226, 220, 219, 190, - 457, 457, 188, 457, 458, 458, 458, 186, 169, 164, - 136, 129, 115, 104, 84, 83, 458, 459, 81, 459, - 459, 71, 459, 459, 64, 459, 460, 460, 460, 62, - 460, 58, 52, 33, 0, 460, 460, 0, 460, 461, - - 461, 461, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 461, 462, 462, 0, 0, 462, 0, 462, 462, - 0, 462, 462, 0, 462, 466, 0, 0, 0, 466, - 466, 466, 0, 466, 466, 467, 467, 467, 0, 0, - 0, 0, 0, 0, 0, 467, 0, 467, 0, 467, - 468, 468, 0, 0, 468, 0, 0, 0, 0, 468, - 0, 0, 468, 469, 469, 0, 469, 470, 470, 470, - 0, 0, 0, 0, 0, 0, 0, 470, 0, 470, - 0, 470, 471, 0, 0, 0, 471, 0, 0, 0, - 0, 471, 0, 0, 471, 472, 0, 472, 0, 0, - - 472, 473, 473, 473, 473, 473, 473, 0, 473, 473, - 0, 473, 473, 473, 473, 473, 473, 474, 474, 474, - 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, - 474, 474, 474, 475, 475, 475, 475, 475, 475, 0, - 475, 475, 0, 475, 475, 475, 475, 475, 475, 476, - 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, - 476, 476, 476, 476, 476, 477, 477, 477, 477, 477, - 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, - 477, 478, 478, 478, 478, 478, 478, 478, 478, 478, - 478, 478, 478, 478, 478, 478, 478, 479, 479, 479, - - 479, 479, 479, 479, 479, 479, 479, 479, 479, 479, - 479, 479, 479, 480, 480, 480, 480, 480, 480, 480, - 480, 480, 480, 480, 480, 480, 480, 480, 480, 481, - 481, 481, 481, 481, 481, 481, 481, 481, 481, 481, - 481, 481, 481, 481, 481, 482, 482, 482, 482, 482, - 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, - 482, 483, 483, 483, 483, 483, 483, 483, 483, 483, - 483, 483, 483, 483, 483, 483, 483, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 485, 485, 485, 485, 485, 485, 485, - - 485, 485, 485, 485, 485, 485, 485, 485, 485, 486, - 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, - 486, 486, 486, 486, 486, 487, 487, 487, 487, 487, - 487, 0, 487, 487, 0, 487, 487, 487, 487, 487, - 487, 488, 488, 488, 488, 488, 488, 488, 488, 488, - 488, 488, 488, 488, 488, 488, 488, 489, 489, 489, - 489, 489, 489, 0, 489, 489, 0, 489, 489, 489, - 489, 489, 489, 490, 490, 490, 490, 490, 490, 490, - 490, 490, 490, 490, 490, 490, 490, 490, 490, 491, + 86, 98, 95, 99, 95, 97, 97, 142, 97, 106, + + 106, 97, 99, 443, 99, 103, 103, 103, 115, 108, + 103, 142, 115, 108, 108, 106, 106, 108, 164, 103, + 442, 103, 110, 110, 110, 111, 111, 111, 164, 112, + 112, 112, 117, 117, 117, 118, 118, 118, 110, 111, + 117, 111, 120, 126, 106, 112, 120, 126, 117, 119, + 119, 119, 124, 124, 121, 121, 435, 125, 125, 141, + 131, 131, 121, 119, 138, 119, 121, 121, 124, 141, + 121, 125, 144, 125, 131, 141, 131, 143, 138, 144, + 145, 143, 146, 147, 149, 148, 151, 147, 154, 152, + 156, 145, 148, 152, 153, 149, 146, 124, 157, 154, + + 151, 153, 157, 158, 156, 131, 159, 160, 162, 138, + 158, 167, 258, 168, 169, 174, 174, 159, 160, 162, + 250, 250, 167, 168, 172, 169, 172, 168, 173, 174, + 173, 175, 180, 172, 176, 177, 176, 177, 181, 180, + 175, 173, 182, 176, 175, 184, 183, 185, 177, 181, + 183, 433, 184, 186, 186, 186, 182, 258, 185, 188, + 188, 188, 193, 193, 193, 200, 194, 194, 194, 186, + 195, 195, 195, 188, 194, 188, 198, 200, 193, 200, + 202, 198, 194, 198, 254, 254, 195, 199, 199, 199, + 201, 201, 201, 203, 267, 204, 202, 203, 202, 203, + + 204, 267, 205, 205, 299, 206, 204, 206, 204, 193, + 205, 207, 207, 299, 207, 208, 208, 208, 209, 303, + 209, 303, 209, 210, 210, 210, 211, 211, 212, 211, + 253, 215, 213, 215, 253, 215, 212, 216, 212, 213, + 213, 205, 213, 205, 214, 216, 214, 216, 217, 214, + 218, 218, 218, 219, 219, 431, 217, 268, 217, 248, + 248, 219, 220, 220, 220, 223, 223, 220, 268, 230, + 232, 232, 232, 230, 230, 248, 220, 230, 220, 295, + 295, 223, 223, 234, 234, 234, 232, 235, 235, 235, + 236, 236, 236, 238, 238, 238, 430, 234, 236, 234, + + 260, 238, 429, 235, 248, 260, 236, 249, 249, 238, + 223, 239, 239, 239, 241, 241, 241, 270, 275, 242, + 242, 270, 275, 249, 428, 246, 246, 242, 241, 263, + 241, 242, 242, 246, 235, 252, 252, 246, 246, 257, + 257, 246, 265, 263, 309, 273, 309, 272, 278, 252, + 277, 252, 265, 257, 272, 257, 273, 277, 265, 278, + 279, 280, 281, 379, 287, 281, 279, 280, 282, 283, + 279, 280, 379, 287, 263, 282, 284, 287, 279, 280, + 283, 285, 284, 281, 257, 286, 284, 285, 286, 288, + 291, 285, 291, 427, 284, 290, 292, 290, 288, 285, + + 298, 293, 288, 291, 290, 292, 286, 296, 296, 292, + 293, 298, 306, 415, 293, 302, 302, 302, 304, 304, + 304, 296, 305, 307, 308, 305, 311, 305, 306, 312, + 306, 302, 310, 310, 310, 307, 478, 307, 308, 478, + 308, 312, 311, 312, 311, 313, 313, 313, 314, 314, + 314, 316, 317, 313, 413, 317, 314, 317, 318, 405, + 318, 313, 302, 316, 314, 316, 319, 323, 319, 320, + 320, 320, 321, 322, 321, 366, 322, 324, 322, 323, + 324, 323, 324, 325, 326, 326, 327, 327, 366, 325, + 402, 325, 326, 328, 328, 330, 330, 330, 331, 331, + + 331, 328, 332, 332, 332, 333, 331, 334, 339, 353, + 352, 330, 353, 333, 331, 334, 352, 359, 339, 357, + 352, 400, 357, 359, 339, 399, 360, 359, 352, 360, + 353, 362, 370, 398, 362, 359, 376, 376, 397, 380, + 357, 370, 330, 377, 377, 370, 381, 360, 380, 382, + 376, 383, 362, 396, 378, 381, 382, 377, 382, 384, + 383, 384, 383, 385, 386, 390, 386, 387, 387, 387, + 391, 385, 393, 385, 389, 389, 392, 389, 392, 390, + 392, 390, 403, 395, 391, 393, 391, 393, 394, 409, + 408, 418, 394, 408, 394, 395, 403, 395, 411, 417, + + 418, 411, 374, 409, 419, 419, 417, 421, 420, 422, + 372, 408, 420, 421, 420, 421, 423, 432, 425, 411, + 423, 422, 423, 422, 424, 424, 424, 425, 426, 425, + 434, 432, 371, 437, 437, 437, 438, 438, 438, 368, + 426, 437, 426, 419, 434, 419, 439, 441, 439, 437, + 448, 367, 438, 440, 440, 440, 364, 455, 441, 457, + 441, 455, 448, 457, 448, 479, 480, 355, 479, 480, + 350, 348, 345, 343, 341, 455, 338, 457, 460, 460, + 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, + 460, 460, 460, 460, 461, 461, 461, 461, 461, 461, + + 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, + 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, + 462, 462, 462, 462, 462, 462, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 465, 465, + 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, + 465, 465, 465, 465, 466, 466, 466, 466, 337, 466, + 466, 466, 466, 466, 466, 466, 466, 466, 336, 466, + 467, 467, 335, 467, 467, 467, 467, 467, 467, 467, + + 467, 467, 467, 467, 467, 467, 468, 468, 329, 468, + 468, 468, 301, 468, 468, 294, 468, 468, 468, 468, + 468, 468, 469, 469, 469, 469, 469, 469, 469, 469, + 469, 469, 469, 469, 469, 469, 469, 469, 470, 470, + 289, 470, 470, 470, 276, 470, 470, 470, 470, 470, + 470, 470, 470, 470, 471, 471, 274, 471, 471, 471, + 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, + 472, 472, 472, 271, 472, 269, 262, 261, 256, 472, + 472, 251, 472, 473, 473, 473, 244, 233, 228, 222, + 221, 192, 190, 189, 187, 473, 474, 170, 474, 474, + + 165, 474, 474, 137, 474, 475, 475, 475, 130, 475, + 116, 114, 104, 84, 475, 475, 83, 475, 476, 476, + 476, 81, 79, 71, 64, 62, 58, 52, 33, 0, + 476, 477, 477, 0, 0, 477, 0, 477, 477, 0, + 477, 477, 0, 477, 481, 0, 0, 0, 481, 481, + 481, 0, 481, 481, 482, 482, 482, 0, 0, 0, + 0, 0, 0, 0, 482, 0, 482, 0, 482, 483, + 483, 0, 0, 483, 0, 0, 0, 0, 483, 0, + 0, 483, 484, 484, 0, 484, 485, 485, 485, 0, + 0, 0, 0, 0, 0, 0, 485, 0, 485, 0, + + 485, 486, 0, 0, 0, 486, 0, 0, 0, 0, + 486, 0, 0, 486, 487, 0, 487, 0, 0, 487, + 488, 488, 488, 488, 488, 488, 488, 488, 488, 0, + 488, 488, 488, 488, 488, 488, 489, 489, 489, 489, + 489, 489, 489, 489, 489, 489, 489, 489, 489, 489, + 489, 489, 490, 490, 490, 490, 490, 490, 490, 490, + 490, 0, 490, 490, 490, 490, 490, 490, 491, 491, 491, 491, 491, 491, 491, 491, 491, 491, 491, 491, - - 491, 491, 491, 491, 491, 492, 492, 492, 492, 492, + 491, 491, 491, 491, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, - 492, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 494, 494, 494, + + 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, + 493, 493, 493, 493, 493, 493, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, - 494, 494, 494, 495, 495, 495, 495, 495, 495, 495, - 495, 495, 495, 495, 495, 495, 495, 495, 495, 496, + 494, 494, 495, 495, 495, 495, 495, 495, 495, 495, + 495, 495, 495, 495, 495, 495, 495, 495, 496, 496, 496, 496, 496, 496, 496, 496, 496, 496, 496, 496, - 496, 496, 496, 496, 496, 497, 497, 497, 497, 497, + 496, 496, 496, 496, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, 497, - - 497, 498, 498, 498, 498, 498, 498, 0, 498, 498, - 0, 498, 498, 498, 498, 498, 498, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, - 444, 444, 444, 444, 444, 444, 444 + 498, 498, 498, 498, 498, 498, 498, 498, 498, 498, + 498, 498, 498, 498, 498, 498, 499, 499, 499, 499, + + 499, 499, 499, 499, 499, 499, 499, 499, 499, 499, + 499, 499, 500, 500, 500, 500, 500, 500, 500, 500, + 500, 500, 500, 500, 500, 500, 500, 500, 501, 501, + 501, 501, 501, 501, 501, 501, 501, 501, 501, 501, + 501, 501, 501, 501, 502, 502, 502, 502, 502, 502, + 0, 502, 502, 0, 502, 502, 502, 502, 502, 502, + 503, 503, 503, 503, 503, 503, 503, 503, 503, 503, + 503, 503, 503, 503, 503, 503, 504, 504, 504, 504, + 504, 504, 0, 504, 504, 0, 504, 504, 504, 504, + 504, 504, 505, 505, 505, 505, 505, 505, 505, 505, + + 505, 505, 505, 505, 505, 505, 505, 505, 506, 506, + 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, + 506, 506, 506, 506, 507, 507, 507, 507, 507, 507, + 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, + 508, 508, 508, 508, 508, 508, 508, 508, 508, 508, + 508, 508, 508, 508, 508, 508, 509, 509, 509, 509, + 509, 509, 509, 509, 509, 509, 509, 509, 509, 509, + 509, 509, 510, 510, 510, 510, 510, 510, 510, 510, + 510, 510, 510, 510, 510, 510, 510, 510, 511, 511, + 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, + + 511, 511, 511, 511, 512, 512, 512, 512, 512, 512, + 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, + 513, 513, 513, 513, 513, 513, 0, 513, 513, 0, + 513, 513, 513, 513, 513, 513, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 459 } ; static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; @@ -1164,65 +1174,65 @@ typedef QList<CodeClassDef> CodeClassList; typedef QDict<CodeClassDef> CodeClassDict; typedef QList<CodeVarDef> CodeVarList; -static CodeClassList codeClassList; -static CodeClassDict codeClassDict(17); -static CodeVarList codeVarList; -static CodeVarList codeParmList; - /* ----------------------------------------------------------------- - * * statics */ -static const char * inputString; //!< the code fragment as text -static int inputPosition; //!< read offset during parsing -static int inputLines; //!< number of line in the code fragment -static int yyLineNr; //!< current line number -static int lastCContext; -static int lastSpecialCContext; -static int lastStringContext; -static int bracketCount = 0; -static int curlyCount = 0; -static int sharpCount = 0; -static QCString type; -static QCString name; -static QCString args; -static QCString parmType; -static QCString parmName; -static bool inClass; -static QCString classScope; -static OutputList *code; -static CodeClassDef ccd; -static CodeVarDef cvd; -static bool exampleBlock; -static QCString exampleName; -static QCString exampleFile; -static int anchorCount; -static FileDef *sourceFileDef; -static QCString lastVariable; - -// start a new line of code, inserting a line number if sourceFileDef +static CodeClassList g_codeClassList; +static CodeClassDict g_codeClassDict(17); +static CodeVarList g_codeVarList; +static CodeVarList g_codeParmList; +static const char * g_inputString; //!< the code fragment as text +static int g_inputPosition; //!< read offset during parsing +static int g_inputLines; //!< number of line in the code fragment +static int g_yyLineNr; //!< current line number +static int g_lastCContext; +static int g_lastSpecialCContext; +static int g_lastStringContext; +static int g_bracketCount = 0; +static int g_curlyCount = 0; +static int g_sharpCount = 0; +static QCString g_type; +static QCString g_name; +static QCString g_args; +static QCString g_parmType; +static QCString g_parmName; +static bool g_inClass; +static QCString g_classScope; +static OutputList * g_code; +static CodeClassDef g_ccd; +static CodeVarDef g_cvd; +static bool g_exampleBlock; +static QCString g_exampleName; +static QCString g_exampleFile; +static int g_anchorCount; +static FileDef * g_sourceFileDef; +static bool g_includeCodeFragment; + +// start a new line of code, inserting a line number if g_sourceFileDef // is TRUE. If a definition starts at the current line, then the line // number is linked to the documentation of that definition. static void startCodeLine(OutputList &ol) { - if (sourceFileDef) + if (g_sourceFileDef) { QCString lineNumber,lineAnchor; - lineNumber.sprintf("%05d ",yyLineNr); - lineAnchor.sprintf("l%05d",yyLineNr); - Definition *d = sourceFileDef->getSourceDefinition(yyLineNr); - QCString anchor = sourceFileDef->getSourceAnchor(yyLineNr); - if (d && d->isLinkableInProject()) + lineNumber.sprintf("%05d",g_yyLineNr); + lineAnchor.sprintf("l%05d",g_yyLineNr); + Definition *d = g_sourceFileDef->getSourceDefinition(g_yyLineNr); + QCString anchor = g_sourceFileDef->getSourceAnchor(g_yyLineNr); + if (!g_includeCodeFragment && d && d->isLinkableInProject()) { ol.startCodeAnchor(lineAnchor); ol.writeCodeLink(d->getReference(),d->getOutputFileBase(), - anchor,lineNumber); + anchor,lineNumber); ol.endCodeAnchor(); + ol.codify(" "); } else { ol.codify(lineNumber); + ol.codify(" "); } } ol.startCodeLine(); @@ -1241,18 +1251,18 @@ static void codifyLines(char *text) while ((c=*p++) && c!='\n'); if (c=='\n') { - yyLineNr++; + g_yyLineNr++; *(p-1)='\0'; - code->codify(sp); - code->endCodeLine(); - if (yyLineNr<inputLines) + g_code->codify(sp); + g_code->endCodeLine(); + if (g_yyLineNr<g_inputLines) { - startCodeLine(*code); + startCodeLine(*g_code); } } else { - code->codify(sp); + g_code->codify(sp); done=TRUE; } } @@ -1275,11 +1285,11 @@ static void writeMultiLineCodeLink(OutputList &ol, while ((c=*p++) && c!='\n'); if (c=='\n') { - yyLineNr++; + g_yyLineNr++; *(p-1)='\0'; ol.writeCodeLink(ref,file,anchor,sp); ol.endCodeLine(); - if (yyLineNr<inputLines) + if (g_yyLineNr<g_inputLines) { startCodeLine(ol); } @@ -1294,58 +1304,59 @@ static void writeMultiLineCodeLink(OutputList &ol, static void addType() { - if (name=="const") { name.resize(0); return; } - if (type.length()) type += ' ' ; - type += name ; - name.resize(0) ; - if (type.length()) type += ' ' ; - type += args ; - args.resize(0) ; + if (g_name=="const") { g_name.resize(0); return; } + if (g_type.length()) g_type += ' ' ; + g_type += g_name ; + g_name.resize(0) ; + if (g_type.length()) g_type += ' ' ; + g_type += g_args ; + g_args.resize(0) ; } static void addParmType() { - if (parmName=="const") { parmName.resize(0); return; } - if (parmType.length()) parmType += ' ' ; - parmType += parmName ; - parmName.resize(0) ; + if (g_parmName=="const") { g_parmName.resize(0); return; } + if (g_parmType.length()) g_parmType += ' ' ; + g_parmType += g_parmName ; + g_parmName.resize(0) ; } static void setClassScope(const QCString &name) { + //printf("setClassScope(%s)\n",name.data()); QCString n=name; n=n.simplifyWhiteSpace(); int index; if ((index=n.find("::"))!=-1) - classScope=n.left(index); + g_classScope=n.left(index); else - classScope.resize(0); - //printf("--->New class scope `%s'\n",classScope.data()); + g_classScope.resize(0); + //printf("--->New class scope `%s'\n",g_classScope.data()); } static void addVariable() { - cvd.name=name.copy().simplifyWhiteSpace(); - cvd.type=type.copy().simplifyWhiteSpace(); - if (type.length()==0) + g_cvd.name=g_name.copy().simplifyWhiteSpace(); + g_cvd.type=g_type.copy().simplifyWhiteSpace(); + if (g_type.length()==0) return; - else if ((getClass(cvd.type)) || (codeClassDict[cvd.type])) + else if ((getClass(g_cvd.type)) || (g_codeClassDict[g_cvd.type])) { - cvd.classScope=classScope; - codeVarList.append(new CodeVarDef(cvd)); // add it to a list + g_cvd.classScope=g_classScope; + g_codeVarList.append(new CodeVarDef(g_cvd)); // add it to a list } } static void addParameter() { - cvd.name=parmName.copy().simplifyWhiteSpace(); - cvd.type=parmType.copy().simplifyWhiteSpace(); - if (cvd.type.length()==0) + g_cvd.name=g_parmName.copy().simplifyWhiteSpace(); + g_cvd.type=g_parmType.copy().simplifyWhiteSpace(); + if (g_cvd.type.length()==0) return; - else if ((getClass(cvd.type)) || (codeClassDict[cvd.type])) + else if ((getClass(g_cvd.type)) || (g_codeClassDict[g_cvd.type])) { - cvd.classScope=classScope; - codeParmList.append(new CodeVarDef(cvd)); // add it to a list + g_cvd.classScope=g_classScope; + g_codeParmList.append(new CodeVarDef(g_cvd)); // add it to a list } } @@ -1356,19 +1367,19 @@ static void generateClassLink(OutputList &ol,char *clName) ClassDef *cd; if ((cd=getClass(className)) && cd->isLinkable()) { - if (exampleBlock) + if (g_exampleBlock) { QCString anchor; - anchor.sprintf("_a%d",anchorCount); - //printf("addExampleClass(%s,%s,%s)\n",anchor.data(),exampleName.data(), - // exampleFile.data()); - if (cd->addExample(anchor,exampleName,exampleFile)) + anchor.sprintf("_a%d",g_anchorCount); + //printf("addExampleClass(%s,%s,%s)\n",anchor.data(),g_exampleName.data(), + // g_exampleFile.data()); + if (cd->addExample(anchor,g_exampleName,g_exampleFile)) { bool latexOn = ol.isEnabled(OutputGenerator::Latex); if (latexOn) ol.disable(OutputGenerator::Latex); ol.writeAnchor(anchor); if (latexOn) ol.enable(OutputGenerator::Latex); - anchorCount++; + g_anchorCount++; } } //ol.writeCodeLink(cd->getReference(),cd->getOutputFileBase(),0,className); @@ -1394,19 +1405,19 @@ static bool getLink(const char *className, if (getDefs(c,m,"()",md,cd,fd,nd) && md->isLinkable()) { //printf("Found!\n"); - if (exampleBlock) + if (g_exampleBlock) { QCString anchor; - anchor.sprintf("a%d",anchorCount); - //printf("addExampleFile(%s,%s,%s)\n",anchor.data(),exampleName.data(), - // exampleFile.data()); - if (md->addExample(anchor,exampleName,exampleFile)) + anchor.sprintf("a%d",g_anchorCount); + //printf("addExampleFile(%s,%s,%s)\n",anchor.data(),g_exampleName.data(), + // g_exampleFile.data()); + if (md->addExample(anchor,g_exampleName,g_exampleFile)) { bool latexEnabled = result.isEnabled(OutputGenerator::Latex); if (latexEnabled) result.disable(OutputGenerator::Latex); result.writeAnchor(anchor); if (latexEnabled) result.enable(OutputGenerator::Latex); - anchorCount++; + g_anchorCount++; } } Definition *d=0; @@ -1444,17 +1455,17 @@ static void generateMemberLink(OutputList &ol,const char *varName, { //printf("generateMemberLink(object=%s,mem=%s) classScope=%s\n", // varName,memName,classScope.data()); - CodeVarDef *cvd=codeParmList.last(); - while (cvd && cvd->name!=varName) cvd=codeParmList.prev(); + CodeVarDef *cvd=g_codeParmList.last(); + while (cvd && cvd->name!=varName) cvd=g_codeParmList.prev(); if (!cvd) { - cvd=codeVarList.last(); - while (cvd && cvd->name!=varName) cvd=codeVarList.prev(); + cvd=g_codeVarList.last(); + while (cvd && cvd->name!=varName) cvd=g_codeVarList.prev(); } if (cvd) // variable found { //printf("variable found type=%s!\n",cvd->type.data()); - CodeClassDef *ccd=codeClassDict[cvd->type]; + CodeClassDef *ccd=g_codeClassDict[cvd->type]; if (ccd) { //printf("Class found!\n"); @@ -1494,7 +1505,7 @@ static void generateMemberLink(OutputList &ol,const char *varName, } else { - ClassDef *vcd = getClass(classScope); + ClassDef *vcd = getClass(g_classScope); if (vcd) { //printf("Found class for variable `%s'\n",varName); @@ -1557,7 +1568,7 @@ static void generateFunctionLink(OutputList &ol,char *funcName) { OutputList result(&ol); CodeClassDef *ccd=0; - QCString locScope=classScope.copy(); + QCString locScope=g_classScope.copy(); QCString locFunc=removeWhiteSpace(funcName); int i=locFunc.findRev("::"); if (i>0) @@ -1566,9 +1577,9 @@ static void generateFunctionLink(OutputList &ol,char *funcName) locFunc=locFunc.right(locFunc.length()-i-2); } //printf("generateFunctionLink(%s) classScope=%s\n",locFunc.data(),locScope.data()); - if (locScope.length()>0 && (ccd=codeClassDict[locScope])) + if (locScope.length()>0 && (ccd=g_codeClassDict[locScope])) { - //printf("using classScope %s\n",classScope.data()); + //printf("using classScope %s\n",g_classScope.data()); char *s=ccd->bases.first(); while (s) { @@ -1594,7 +1605,7 @@ static void generateFunctionLink(OutputList &ol,char *funcName) /*! counts the number of lines in the input */ static int countLines() { - const char *p=inputString; + const char *p=g_inputString; char c; int count=1; while ((c=*p++)) if (c=='\n') count++; @@ -1609,9 +1620,9 @@ static int countLines() static int yyread(char *buf,int max_size) { int c=0; - while( c < max_size && inputString[inputPosition] ) + while( c < max_size && g_inputString[g_inputPosition] ) { - *buf = inputString[inputPosition++] ; + *buf = g_inputString[g_inputPosition++] ; c++; buf++; } return c; @@ -1800,7 +1811,7 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 553 "code.l" +#line 554 "code.l" @@ -1851,14 +1862,14 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 445 ) + if ( yy_current_state >= 460 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; *yy_state_ptr++ = yy_current_state; ++yy_cp; } - while ( yy_base[yy_current_state] != 2018 ); + while ( yy_base[yy_current_state] != 2037 ); yy_find_action: yy_current_state = *--yy_state_ptr; @@ -1909,29 +1920,29 @@ do_action: /* This label is used only to access EOF actions. */ { /* beginning of action switch */ case 1: YY_RULE_SETUP -#line 555 "code.l" +#line 556 "code.l" YY_BREAK case 2: YY_RULE_SETUP -#line 556 "code.l" +#line 557 "code.l" { - code->codify(yytext); + g_code->codify(yytext); BEGIN( ReadInclude ); } YY_BREAK case 3: YY_RULE_SETUP -#line 560 "code.l" +#line 561 "code.l" { codifyLines(yytext); - //code->codify(yytext); + //g_code->codify(yytext); BEGIN( ClassName ); } YY_BREAK case 4: YY_RULE_SETUP -#line 565 "code.l" +#line 566 "code.l" { //FileInfo *f; bool ambig; @@ -1939,44 +1950,44 @@ YY_RULE_SETUP if ((fd=findFileDef(&inputNameDict,yytext,ambig)) && fd->isLinkable()) { - code->writeCodeLink(fd->getReference(),fd->getOutputFileBase(),0,yytext); + g_code->writeCodeLink(fd->getReference(),fd->getOutputFileBase(),0,yytext); } else { - code->codify(yytext); + g_code->codify(yytext); } char c=yyinput(); QCString text; text+=c; - code->codify(text); + g_code->codify(text); BEGIN( Body ); } YY_BREAK case 5: YY_RULE_SETUP -#line 584 "code.l" +#line 585 "code.l" { - code->codify(yytext); + g_code->codify(yytext); BEGIN( SkipCPP ) ; } YY_BREAK case 6: YY_RULE_SETUP -#line 588 "code.l" +#line 589 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 7: YY_RULE_SETUP -#line 591 "code.l" +#line 592 "code.l" { codifyLines(yytext); } YY_BREAK case 8: YY_RULE_SETUP -#line 594 "code.l" +#line 595 "code.l" { codifyLines(yytext); BEGIN( Body ) ; @@ -1984,61 +1995,62 @@ YY_RULE_SETUP YY_BREAK case 9: YY_RULE_SETUP -#line 598 "code.l" +#line 599 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 10: YY_RULE_SETUP -#line 601 "code.l" +#line 602 "code.l" { - code->codify(yytext); - curlyCount++; - type.resize(0); name.resize(0); + g_code->codify(yytext); + g_curlyCount++; + g_type.resize(0); + g_name.resize(0); } YY_BREAK case 11: YY_RULE_SETUP -#line 606 "code.l" +#line 608 "code.l" { - code->codify(yytext); - inClass=FALSE; - if (--curlyCount<=0) + g_code->codify(yytext); + g_inClass=FALSE; + if (--g_curlyCount<=0) { - classScope.resize(0); - codeParmList.clear(); + g_classScope.resize(0); + g_codeParmList.clear(); } } YY_BREAK case 12: YY_RULE_SETUP -#line 615 "code.l" +#line 617 "code.l" { - code->codify(yytext); + g_code->codify(yytext); BEGIN( Body ); } YY_BREAK case 13: YY_RULE_SETUP -#line 619 "code.l" +#line 621 "code.l" { addType(); - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 14: YY_RULE_SETUP -#line 623 "code.l" +#line 625 "code.l" { - ccd.name=yytext; + g_ccd.name=yytext; addType(); - generateClassLink(*code,yytext); + generateClassLink(*g_code,yytext); } YY_BREAK case 15: YY_RULE_SETUP -#line 628 "code.l" +#line 630 "code.l" { codifyLines(yytext); BEGIN( Bases ); @@ -2046,89 +2058,89 @@ YY_RULE_SETUP YY_BREAK case 16: YY_RULE_SETUP -#line 632 "code.l" +#line 634 "code.l" { - code->codify(yytext); - curlyCount++; - inClass=TRUE; - if (ccd.name.length()>0) + g_code->codify(yytext); + g_curlyCount++; + g_inClass=TRUE; + if (g_ccd.name.length()>0) { - classScope=ccd.name.copy(); - CodeClassDef *cd=new CodeClassDef(ccd); - codeClassList.append(cd); - codeClassDict.insert(cd->name,cd); + g_classScope=g_ccd.name.copy(); + CodeClassDef *cd=new CodeClassDef(g_ccd); + g_codeClassList.append(cd); + g_codeClassDict.insert(cd->name,cd); } BEGIN( Body ); } YY_BREAK case 17: YY_RULE_SETUP -#line 645 "code.l" +#line 647 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 18: YY_RULE_SETUP -#line 648 "code.l" +#line 650 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 19: YY_RULE_SETUP -#line 651 "code.l" +#line 653 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 20: YY_RULE_SETUP -#line 654 "code.l" +#line 656 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 21: YY_RULE_SETUP -#line 657 "code.l" +#line 659 "code.l" { - //printf("%s:addBase(%s)\n",ccd.name.data(),yytext); - ccd.bases.inSort(yytext); - generateClassLink(*code,yytext); + //printf("%s:addBase(%s)\n",g_ccd.name.data(),yytext); + g_ccd.bases.inSort(yytext); + generateClassLink(*g_code,yytext); } YY_BREAK case 22: YY_RULE_SETUP -#line 662 "code.l" +#line 664 "code.l" { - code->codify(yytext); - sharpCount=1; + g_code->codify(yytext); + g_sharpCount=1; BEGIN ( SkipSharp ); } YY_BREAK case 23: YY_RULE_SETUP -#line 667 "code.l" +#line 669 "code.l" { - code->codify(yytext); - ++sharpCount; + g_code->codify(yytext); + ++g_sharpCount; } YY_BREAK case 24: YY_RULE_SETUP -#line 671 "code.l" +#line 673 "code.l" { - code->codify(yytext); - if (--sharpCount<=0) + g_code->codify(yytext); + if (--g_sharpCount<=0) BEGIN ( Bases ); } YY_BREAK case 25: YY_RULE_SETUP -#line 676 "code.l" +#line 678 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 26: @@ -2136,245 +2148,245 @@ case 26: yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 681 "code.l" +#line 683 "code.l" { codifyLines(yytext); - name.resize(0);type.resize(0); + g_name.resize(0);g_type.resize(0); } YY_BREAK case 27: YY_RULE_SETUP -#line 685 "code.l" +#line 687 "code.l" { codifyLines(yytext); - name.resize(0);type.resize(0); + g_name.resize(0);g_type.resize(0); } YY_BREAK /* <Body>([a-z_A-Z~][a-z_A-Z0-9]*)/([ \t]*) { - generateClassLink(*code,yytext); + generateClassLink(*g_code,yytext); addType(); name+=yytext; } */ case 28: YY_RULE_SETUP -#line 696 "code.l" +#line 698 "code.l" { - generateClassLink(*code,yytext); + generateClassLink(*g_code,yytext); //codifyLines(yytext); addType(); - name+=yytext; + g_name+=yytext; } YY_BREAK case 29: YY_RULE_SETUP -#line 702 "code.l" +#line 704 "code.l" { addType(); //if (type.length()==0) QCString tmp=yytext; - generateFunctionLink(*code,yytext); + generateFunctionLink(*g_code,yytext); //else - // code->codify(yytext); - bracketCount=1; - args.resize(0); - name+=yytext; + // g_code->codify(yytext); + g_bracketCount=1; + g_args.resize(0); + g_name+=yytext; BEGIN( FuncCall ); } YY_BREAK case 30: YY_RULE_SETUP -#line 714 "code.l" +#line 716 "code.l" { - code->codify(yytext); - lastStringContext=YY_START; + g_code->codify(yytext); + g_lastStringContext=YY_START; BEGIN( SkipString ); } YY_BREAK case 31: YY_RULE_SETUP -#line 719 "code.l" +#line 721 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 32: YY_RULE_SETUP -#line 722 "code.l" +#line 724 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 33: YY_RULE_SETUP -#line 725 "code.l" +#line 727 "code.l" { - code->codify(yytext); - BEGIN( lastStringContext ); + g_code->codify(yytext); + BEGIN( g_lastStringContext ); } YY_BREAK case 34: YY_RULE_SETUP -#line 729 "code.l" +#line 731 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 35: YY_RULE_SETUP -#line 732 "code.l" +#line 734 "code.l" { - code->codify(yytext); - name.resize(0);type.resize(0); + g_code->codify(yytext); + g_name.resize(0);g_type.resize(0); } YY_BREAK case 36: YY_RULE_SETUP -#line 736 "code.l" +#line 738 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 37: YY_RULE_SETUP -#line 739 "code.l" +#line 741 "code.l" { - code->codify(yytext); + g_code->codify(yytext); BEGIN( MemberCall ); } YY_BREAK case 38: YY_RULE_SETUP -#line 743 "code.l" +#line 745 "code.l" { - if (name.length()>0) - generateMemberLink(*code,name,yytext); + if (g_name.length()>0) + generateMemberLink(*g_code,g_name,yytext); else - code->codify(yytext); - name.resize(0);type.resize(0); - bracketCount=0; + g_code->codify(yytext); + g_name.resize(0);g_type.resize(0); + g_bracketCount=0; BEGIN(FuncCall); } YY_BREAK case 39: YY_RULE_SETUP -#line 752 "code.l" +#line 754 "code.l" { - code->codify(yytext); - type.resize(0); - name.resize(0); + g_code->codify(yytext); + g_type.resize(0); + g_name.resize(0); BEGIN(Body); } YY_BREAK case 40: YY_RULE_SETUP -#line 758 "code.l" +#line 760 "code.l" { - code->codify(yytext); - if (type.length()>0) + g_code->codify(yytext); + if (g_type.length()>0) addVariable(); - name.resize(0); - if (*yytext!=',') type.resize(0); - args.resize(0); + g_name.resize(0); + if (*yytext!=',') g_type.resize(0); + g_args.resize(0); } YY_BREAK case 41: YY_RULE_SETUP -#line 766 "code.l" +#line 768 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 42: YY_RULE_SETUP -#line 769 "code.l" +#line 771 "code.l" { addParmType(); - parmName=yytext; - generateClassLink(*code,yytext); + g_parmName=yytext; + generateClassLink(*g_code,yytext); } YY_BREAK case 43: YY_RULE_SETUP -#line 774 "code.l" +#line 776 "code.l" { - code->codify(yytext); + g_code->codify(yytext); addParameter(); - parmType.resize(0);parmName.resize(0); + g_parmType.resize(0);g_parmName.resize(0); } YY_BREAK case 44: YY_RULE_SETUP -#line 779 "code.l" +#line 781 "code.l" { - code->codify(yytext); - bracketCount++; + g_code->codify(yytext); + g_bracketCount++; } YY_BREAK case 45: YY_RULE_SETUP -#line 783 "code.l" +#line 785 "code.l" { - code->codify(yytext); - if (--bracketCount<=0) - name.resize(0);args.resize(0); - parmType.resize(0);parmName.resize(0); + g_code->codify(yytext); + if (--g_bracketCount<=0) + g_name.resize(0);g_args.resize(0); + g_parmType.resize(0);g_parmName.resize(0); BEGIN( Body ); } YY_BREAK case 46: YY_RULE_SETUP -#line 790 "code.l" +#line 792 "code.l" { codifyLines(yytext); - bracketCount=0; - if (!inClass && type.length()>0) + g_bracketCount=0; + if (!g_inClass && g_type.length()>0) addVariable(); - name.resize(0);type.resize(0); - parmType.resize(0);parmName.resize(0); + g_name.resize(0);g_type.resize(0); + g_parmType.resize(0);g_parmName.resize(0); BEGIN( Body ); } YY_BREAK case 47: YY_RULE_SETUP -#line 799 "code.l" +#line 801 "code.l" { addParameter(); - parmType.resize(0);parmName.resize(0); - if (name.length()>0) setClassScope(name); + g_parmType.resize(0);g_parmName.resize(0); + if (g_name.find("::")!=-1) setClassScope(g_name); codifyLines(yytext); - curlyCount++; - type.resize(0); name.resize(0); + g_curlyCount++; + g_type.resize(0); g_name.resize(0); BEGIN( Body ); } YY_BREAK case 48: YY_RULE_SETUP -#line 808 "code.l" +#line 810 "code.l" { addParameter(); - parmType.resize(0);parmName.resize(0); - if (name.length()>0) setClassScope(name); + g_parmType.resize(0);g_parmName.resize(0); + if (g_name.find("::")!=-1) setClassScope(g_name); codifyLines(yytext); - type.resize(0); name.resize(0); + g_type.resize(0); g_name.resize(0); BEGIN( SkipInits ); } YY_BREAK case 49: YY_RULE_SETUP -#line 816 "code.l" +#line 818 "code.l" { - code->codify(yytext); - curlyCount++; + g_code->codify(yytext); + g_curlyCount++; BEGIN( Body ); } YY_BREAK case 50: YY_RULE_SETUP -#line 821 "code.l" +#line 823 "code.l" { - generateClassLink(*code,yytext); + generateClassLink(*g_code,yytext); } YY_BREAK case 51: @@ -2382,68 +2394,72 @@ case 51: yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 824 "code.l" +#line 826 "code.l" { - generateFunctionLink(*code,yytext); + generateFunctionLink(*g_code,yytext); } YY_BREAK case 52: YY_RULE_SETUP -#line 827 "code.l" +#line 829 "code.l" { - code->codify(yytext); - args=yytext; + g_code->codify(yytext); + g_args=yytext; BEGIN( MemberCall2 ); } YY_BREAK case 53: YY_RULE_SETUP -#line 832 "code.l" +#line 834 "code.l" { - if (args.length()>0) - generateMemberLink(*code,args,yytext); + if (g_args.length()>0) + generateMemberLink(*g_code,g_args,yytext); else - code->codify(yytext); - args.resize(0); + g_code->codify(yytext); + g_args.resize(0); BEGIN( FuncCall ); } YY_BREAK case 54: YY_RULE_SETUP -#line 840 "code.l" +#line 842 "code.l" { - code->codify(yytext); - args=yytext; + g_code->codify(yytext); + g_args=yytext; } YY_BREAK case 55: YY_RULE_SETUP -#line 844 "code.l" +#line 846 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 56: YY_RULE_SETUP -#line 847 "code.l" +#line 849 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK case 57: YY_RULE_SETUP -#line 850 "code.l" +#line 852 "code.l" { - code->codify(yytext); - BEGIN( lastCContext ) ; + g_code->codify(yytext); + BEGIN( g_lastCContext ) ; } YY_BREAK case 58: +*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ +yy_c_buf_p = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 854 "code.l" +#line 856 "code.l" { - codifyLines(yytext); - BEGIN( lastCContext ) ; + //codifyLines(yytext); + g_code->codify(yytext); + BEGIN( g_lastCContext ) ; } YY_BREAK case 59: @@ -2451,49 +2467,49 @@ case 59: yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 858 "code.l" +#line 861 "code.l" { - yyLineNr+=QCString(yytext).contains('\n'); + g_yyLineNr+=QCString(yytext).contains('\n'); } YY_BREAK case 60: YY_RULE_SETUP -#line 861 "code.l" +#line 864 "code.l" { - yyLineNr+=QCString(yytext).contains('\n'); - code->endCodeLine(); - if (yyLineNr<inputLines) + g_yyLineNr+=QCString(yytext).contains('\n'); + g_code->endCodeLine(); + if (g_yyLineNr<g_inputLines) { - startCodeLine(*code); + startCodeLine(*g_code); } - BEGIN(lastSpecialCContext); + BEGIN(g_lastSpecialCContext); } YY_BREAK case 61: YY_RULE_SETUP -#line 870 "code.l" +#line 873 "code.l" { - BEGIN(lastSpecialCContext); + BEGIN(g_lastSpecialCContext); } YY_BREAK case 62: YY_RULE_SETUP -#line 873 "code.l" +#line 876 "code.l" YY_BREAK case 63: YY_RULE_SETUP -#line 874 "code.l" +#line 877 "code.l" YY_BREAK case 64: YY_RULE_SETUP -#line 875 "code.l" -{ yyLineNr++; } +#line 878 "code.l" +{ g_yyLineNr++; } YY_BREAK case 65: YY_RULE_SETUP -#line 876 "code.l" +#line 879 "code.l" YY_BREAK /* @@ -2502,9 +2518,9 @@ YY_RULE_SETUP BEGIN( lastDContext ) ; } <SkipSpecialComment>[ \t]*"* /"[ \t\n]*"\n"/"/ *" { - //code->codify("\n"); + //g_code->codify("\n"); //QCString lineText=yytext; - //yyLineNr+=lineText.contains('\n'); + //g_yyLineNr+=lineText.contains('\n'); BEGIN( lastDContext ) ; } <SkipSpecialComment>. @@ -2522,31 +2538,31 @@ YY_RULE_SETUP */ case 66: YY_RULE_SETUP -#line 901 "code.l" +#line 904 "code.l" { // remove special one-line comment - yyLineNr+=((QCString)yytext).contains('\n'); - code->endCodeLine(); - if (yyLineNr<inputLines) + g_yyLineNr+=((QCString)yytext).contains('\n'); + g_code->endCodeLine(); + if (g_yyLineNr<g_inputLines) { - startCodeLine(*code); + startCodeLine(*g_code); } } YY_BREAK case 67: YY_RULE_SETUP -#line 909 "code.l" +#line 912 "code.l" { // remove special one-line comment - yyLineNr++; - code->endCodeLine(); - if (yyLineNr<inputLines) + g_yyLineNr++; + g_code->endCodeLine(); + if (g_yyLineNr<g_inputLines) { - startCodeLine(*code); + startCodeLine(*g_code); } } YY_BREAK case 68: YY_RULE_SETUP -#line 917 "code.l" +#line 920 "code.l" { // strip special one-line comment char c[2]; c[0]='\n'; c[1]=0; codifyLines(c); @@ -2557,10 +2573,10 @@ case 69: yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 921 "code.l" +#line 924 "code.l" { - lastSpecialCContext = YY_START; - yyLineNr++; + g_lastSpecialCContext = YY_START; + g_yyLineNr++; BEGIN(RemoveSpecialCComment); } YY_BREAK @@ -2569,9 +2585,9 @@ case 70: yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 926 "code.l" +#line 929 "code.l" { // special C comment block at a new line - lastSpecialCContext = YY_START; + g_lastSpecialCContext = YY_START; BEGIN(RemoveSpecialCComment); } YY_BREAK @@ -2580,56 +2596,61 @@ case 71: yy_c_buf_p = yy_cp = yy_bp + 3; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 930 "code.l" +#line 933 "code.l" { // special C comment block half way a line - lastSpecialCContext = YY_START; + g_lastSpecialCContext = YY_START; BEGIN(RemoveSpecialCComment); } YY_BREAK case 72: YY_RULE_SETUP -#line 934 "code.l" +#line 937 "code.l" +{} + YY_BREAK +case 73: +YY_RULE_SETUP +#line 938 "code.l" { - code->codify(yytext); - lastCContext = YY_START ; + g_code->codify(yytext); + g_lastCContext = YY_START ; BEGIN( SkipComment ) ; } YY_BREAK -case 73: +case 74: YY_RULE_SETUP -#line 939 "code.l" +#line 943 "code.l" { - code->codify(yytext); - lastCContext = YY_START ; + g_code->codify(yytext); + g_lastCContext = YY_START ; BEGIN( SkipCxxComment ) ; } YY_BREAK -case 74: +case 75: YY_RULE_SETUP -#line 944 "code.l" +#line 948 "code.l" { codifyLines(yytext); } YY_BREAK -case 75: +case 76: YY_RULE_SETUP -#line 947 "code.l" +#line 951 "code.l" { - code->codify(yytext); + g_code->codify(yytext); } YY_BREAK /* <*>([ \t\n]*"\n"){2,} { // combine multiple blank lines //QCString sepLine=yytext; - //code->codify("\n\n"); - //yyLineNr+=sepLine.contains('\n'); + //g_code->codify("\n\n"); + //g_yyLineNr+=sepLine.contains('\n'); //char sepLine[3]="\n\n"; codifyLines(yytext); } */ -case 76: +case 77: YY_RULE_SETUP -#line 960 "code.l" +#line 964 "code.l" ECHO; YY_BREAK case YY_STATE_EOF(INITIAL): @@ -2936,7 +2957,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 445 ) + if ( yy_current_state >= 460 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2966,11 +2987,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 445 ) + if ( yy_current_state >= 460 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 444); + yy_is_jam = (yy_current_state == 459); if ( ! yy_is_jam ) *yy_state_ptr++ = yy_current_state; @@ -3528,7 +3549,7 @@ int main() return 0; } #endif -#line 960 "code.l" +#line 964 "code.l" /*@ ---------------------------------------------------------------------------- @@ -3536,46 +3557,54 @@ int main() void initParseCodeContext() { - codeClassList.setAutoDelete(TRUE); - codeVarList.setAutoDelete(TRUE); - codeParmList.setAutoDelete(TRUE); - codeClassDict.clear(); - codeClassList.clear(); - codeVarList.clear(); - codeParmList.clear(); - ccd.bases.clear(); - anchorCount = 0; + g_codeClassList.setAutoDelete(TRUE); + g_codeVarList.setAutoDelete(TRUE); + g_codeParmList.setAutoDelete(TRUE); + g_codeClassDict.clear(); + g_codeClassList.clear(); + g_codeVarList.clear(); + g_codeParmList.clear(); + g_ccd.bases.clear(); + g_anchorCount = 0; } void parseCode(OutputList &ol,const char *className,const QCString &s, - bool exBlock, const char *exName,FileDef *fd) + bool exBlock, const char *exName,FileDef *fd, + int startLine,int endLine,bool inlineFragment) { - code = new OutputList(&ol); + g_code = new OutputList(&ol); if (s.isEmpty()) return; - inputString = s; - inputPosition = 0; - inputLines = countLines(); - yyLineNr = 1; - curlyCount = 0; - bracketCount = 0; - sharpCount = 0; - classScope = className; - exampleBlock = exBlock; - exampleName = exName; - sourceFileDef = fd; - exampleFile = convertSlashes(exampleName,TRUE)+"-example"; - startCodeLine(*code); - type.resize(0); - name.resize(0); - args.resize(0); - parmName.resize(0); - parmType.resize(0); + g_inputString = s; + g_inputPosition = 0; + if (endLine!=-1) + g_inputLines = endLine+1; + else + g_inputLines = countLines(); + if (startLine!=-1) + g_yyLineNr = startLine; + else + g_yyLineNr = 1; + g_curlyCount = 0; + g_bracketCount = 0; + g_sharpCount = 0; + g_classScope = className; + g_exampleBlock = exBlock; + g_exampleName = exName; + g_sourceFileDef = fd; + g_exampleFile = convertSlashes(g_exampleName,TRUE)+"-example"; + g_includeCodeFragment = inlineFragment; + startCodeLine(*g_code); + g_type.resize(0); + g_name.resize(0); + g_args.resize(0); + g_parmName.resize(0); + g_parmType.resize(0); codeYYrestart( codeYYin ); BEGIN( Body ); codeYYlex(); - //if (yyLineNr<=inputLines) code->endCodeLine(); - ol+=*code; - delete code; + //if (g_yyLineNr<=g_inputLines) code->endCodeLine(); + ol+=*g_code; + delete g_code; return; } |