- Timestamp:
- 06/02/2008 05:58:39 (6 months ago)
- Location:
- trunk/lib
- Files:
-
- 3 modified
-
bytecode.c (modified) (25 diffs)
-
implicit.c (modified) (29 diffs)
-
token.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/lib/bytecode.c
r287 r320 1 /* Generated by re2c 0.12.3 on Wed Oct 24 23:52:49 2007 */ 2 #line 1 "bytecode.re" 1 /* Generated by re2c 0.13.5 on Mon Jun 2 14:42:51 2008 */ 3 2 /* 4 3 * bytecode.re … … 148 147 } 149 148 150 #line 172 "bytecode.re"151 149 152 150 … … 162 160 163 161 164 #line 165 "<stdout>"165 162 { 166 163 YYCTYPE yych; 167 164 168 if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 169 yych = *YYCURSOR; 170 switch(yych) { 171 case 0x00: goto yy2; 172 case 'D': goto yy3; 173 default: goto yy5; 174 } 165 if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 166 yych = *YYCURSOR; 167 if (yych <= 0x00) goto yy2; 168 if (yych == 'D') goto yy3; 169 goto yy5; 175 170 yy2: 176 171 YYCURSOR = YYMARKER; … … 178 173 yy3: 179 174 yych = *(YYMARKER = ++YYCURSOR); 180 switch(yych) { 181 case 0x0A: goto yy6; 182 case 0x0D: goto yy8; 183 default: goto yy4; 184 } 175 if (yych == '\n') goto yy6; 176 if (yych == '\r') goto yy8; 185 177 yy4: 186 #line 199 "bytecode.re"187 178 { YYPOS(0); 188 179 goto Document; 189 180 } 190 #line 191 "<stdout>"191 181 yy5: 192 182 yych = *++YYCURSOR; … … 194 184 yy6: 195 185 ++YYCURSOR; 196 #line 186 "bytecode.re"197 186 { if ( lvl->status == syck_lvl_header ) 198 187 { … … 207 196 } 208 197 } 209 #line 210 "<stdout>"210 198 yy8: 211 199 ++YYCURSOR; 212 switch((yych = *YYCURSOR)) { 213 case 0x0A: goto yy6; 214 default: goto yy2; 215 } 200 if ((yych = *YYCURSOR) == '\n') goto yy6; 201 goto yy2; 216 202 } 217 #line 203 "bytecode.re"218 203 219 204 … … 229 214 230 215 231 #line 232 "<stdout>"232 216 { 233 217 YYCTYPE yych; 234 if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 235 yych = *YYCURSOR; 236 switch(yych) { 237 case 0x00: goto yy30; 238 case 0x0A: goto yy27; 239 case 0x0D: goto yy29; 240 case 'A': goto yy19; 241 case 'D': goto yy12; 242 case 'E': goto yy16; 243 case 'M': goto yy14; 244 case 'P': goto yy13; 245 case 'Q': goto yy15; 246 case 'R': goto yy21; 247 case 'S': goto yy17; 248 case 'T': goto yy23; 249 case 'c': goto yy25; 250 default: goto yy11; 218 if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 219 yych = *YYCURSOR; 220 if (yych <= 'E') { 221 if (yych <= '\r') { 222 if (yych <= '\t') { 223 if (yych <= 0x00) goto yy30; 224 } else { 225 if (yych <= '\n') goto yy27; 226 if (yych >= '\r') goto yy29; 227 } 228 } else { 229 if (yych <= 'A') { 230 if (yych >= 'A') goto yy19; 231 } else { 232 if (yych <= 'C') goto yy11; 233 if (yych <= 'D') goto yy12; 234 goto yy16; 235 } 236 } 237 } else { 238 if (yych <= 'Q') { 239 if (yych <= 'M') { 240 if (yych >= 'M') goto yy14; 241 } else { 242 if (yych <= 'O') goto yy11; 243 if (yych <= 'P') goto yy13; 244 goto yy15; 245 } 246 } else { 247 if (yych <= 'T') { 248 if (yych <= 'R') goto yy21; 249 if (yych <= 'S') goto yy17; 250 goto yy23; 251 } else { 252 if (yych == 'c') goto yy25; 253 } 254 } 251 255 } 252 256 yy11: 253 257 yy12: 254 258 yych = *++YYCURSOR; 255 switch(yych) { 256 case 0x0A: goto yy41; 257 case 0x0D: goto yy44; 258 default: goto yy11; 259 } 259 if (yych == '\n') goto yy41; 260 if (yych == '\r') goto yy44; 261 goto yy11; 260 262 yy13: 261 263 yych = *++YYCURSOR; 262 switch(yych) { 263 case 0x0A: goto yy41; 264 case 0x0D: goto yy43; 265 default: goto yy11; 266 } 264 if (yych == '\n') goto yy41; 265 if (yych == '\r') goto yy43; 266 goto yy11; 267 267 yy14: 268 268 yych = *++YYCURSOR; 269 switch(yych) { 270 case 0x0A: goto yy38; 271 case 0x0D: goto yy40; 272 default: goto yy11; 273 } 269 if (yych == '\n') goto yy38; 270 if (yych == '\r') goto yy40; 271 goto yy11; 274 272 yy15: 275 273 yych = *++YYCURSOR; 276 switch(yych) { 277 case 0x0A: goto yy35; 278 case 0x0D: goto yy37; 279 default: goto yy11; 280 } 274 if (yych == '\n') goto yy35; 275 if (yych == '\r') goto yy37; 276 goto yy11; 281 277 yy16: 282 278 yych = *++YYCURSOR; 283 switch(yych) { 284 case 0x0A: goto yy32; 285 case 0x0D: goto yy34; 286 default: goto yy11; 287 } 279 if (yych == '\n') goto yy32; 280 if (yych == '\r') goto yy34; 281 goto yy11; 288 282 yy17: 289 283 ++YYCURSOR; 290 #line 288 "bytecode.re"291 284 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str); 292 285 goto Scalar; 293 286 } 294 #line 295 "<stdout>"295 287 yy19: 296 288 ++YYCURSOR; 297 #line 292 "bytecode.re"298 289 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_open); 299 290 sycklval->name = get_inline( parser ); … … 302 293 return YAML_ANCHOR; 303 294 } 304 #line 305 "<stdout>"305 295 yy21: 306 296 ++YYCURSOR; 307 #line 299 "bytecode.re"308 297 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str); 309 298 sycklval->name = get_inline( parser ); … … 312 301 return YAML_ALIAS; 313 302 } 314 #line 315 "<stdout>"315 303 yy23: 316 304 ++YYCURSOR; 317 #line 306 "bytecode.re"318 305 { char *qstr; 319 306 ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_open); … … 375 362 return YAML_TAGURI; 376 363 } 377 #line 378 "<stdout>"378 364 yy25: 379 365 ++YYCURSOR; 380 #line 366 "bytecode.re"381 366 { goto Comment; } 382 #line 383 "<stdout>"383 367 yy27: 384 368 ++YYCURSOR; 385 #line 368 "bytecode.re"386 369 { CHK_NL(YYCURSOR); 387 370 if ( lvl->status == syck_lvl_seq ) … … 396 379 goto Document; 397 380 } 398 #line 399 "<stdout>"399 381 yy29: 400 382 yych = *++YYCURSOR; 401 switch(yych) { 402 case 0x0A: goto yy27; 403 default: goto yy11; 404 } 383 if (yych == '\n') goto yy27; 384 goto yy11; 405 385 yy30: 406 386 ++YYCURSOR; 407 #line 381 "bytecode.re"408 387 { ENSURE_YAML_IEND(lvl, -1); 409 388 YYPOS(0); 410 389 return 0; 411 390 } 412 #line 413 "<stdout>"413 391 yy32: 414 392 ++YYCURSOR; 415 #line 252 "bytecode.re"416 393 { if ( lvl->status == syck_lvl_seq && lvl->ncount == 0 ) 417 394 { … … 449 426 return YAML_IEND; 450 427 } 451 #line 452 "<stdout>"452 428 yy34: 453 429 yych = *++YYCURSOR; 454 switch(yych) { 455 case 0x0A: goto yy32; 456 default: goto yy11; 457 } 430 if (yych == '\n') goto yy32; 431 goto yy11; 458 432 yy35: 459 433 ++YYCURSOR; 460 #line 237 "bytecode.re"461 434 { int complex = 0; 462 435 if ( lvl->ncount % 2 == 0 && ( lvl->status == syck_lvl_map || lvl->status == syck_lvl_seq ) ) … … 473 446 return YAML_IOPEN; 474 447 } 475 #line 476 "<stdout>"476 448 yy37: 477 449 yych = *++YYCURSOR; 478 switch(yych) { 479 case 0x0A: goto yy35; 480 default: goto yy11; 481 } 450 if (yych == '\n') goto yy35; 451 goto yy11; 482 452 yy38: 483 453 ++YYCURSOR; 484 #line 222 "bytecode.re"485 454 { int complex = 0; 486 455 if ( lvl->ncount % 2 == 0 && ( lvl->status == syck_lvl_map || lvl->status == syck_lvl_seq ) ) … … 497 466 return YAML_IOPEN; 498 467 } 499 #line 500 "<stdout>"500 468 yy40: 501 469 yych = *++YYCURSOR; 502 switch(yych) { 503 case 0x0A: goto yy38; 504 default: goto yy11; 505 } 470 if (yych == '\n') goto yy38; 471 goto yy11; 506 472 yy41: 507 473 ++YYCURSOR; 508 #line 217 "bytecode.re"509 474 { ENSURE_YAML_IEND(lvl, -1); 510 475 YYPOS(0); 511 476 return 0; 512 477 } 513 #line 514 "<stdout>"514 478 yy43: 515 479 yych = *++YYCURSOR; 516 switch(yych) { 517 case 0x0A: goto yy41; 518 default: goto yy11; 519 } 480 if (yych == '\n') goto yy41; 481 goto yy11; 520 482 yy44: 521 483 ++YYCURSOR; 522 switch((yych = *YYCURSOR)) { 523 case 0x0A: goto yy41; 524 default: goto yy11; 525 } 484 if ((yych = *YYCURSOR) == '\n') goto yy41; 485 goto yy11; 526 486 } 527 #line 386 "bytecode.re"528 487 529 488 … … 535 494 536 495 537 #line 538 "<stdout>"538 496 { 539 497 YYCTYPE yych; 540 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 541 yych = *YYCURSOR; 542 switch(yych) { 543 case 0x00: goto yy47; 544 case 'V': goto yy48; 545 default: goto yy50; 546 } 498 static const unsigned char yybm[] = { 499 0, 0, 0, 0, 0, 0, 0, 0, 500 0, 0, 0, 0, 0, 0, 0, 0, 501 0, 0, 0, 0, 0, 0, 0, 0, 502 0, 0, 0, 0, 0, 0, 0, 0, 503 0, 0, 0, 0, 0, 0, 0, 0, 504 0, 0, 0, 0, 0, 0, 192, 192, 505 192, 192, 192, 192, 192, 192, 192, 192, 506 192, 192, 128, 192, 192, 192, 192, 192, 507 192, 192, 192, 192, 192, 192, 192, 192, 508 192, 192, 192, 192, 192, 192, 192, 192, 509 192, 192, 192, 192, 192, 192, 192, 192, 510 192, 192, 192, 192, 192, 192, 192, 192, 511 0, 192, 192, 192, 192, 192, 192, 192, 512 192, 192, 192, 192, 192, 192, 192, 192, 513 192, 192, 192, 192, 192, 192, 192, 192, 514 192, 192, 192, 0, 0, 0, 0, 0, 515 0, 0, 0, 0, 0, 0, 0, 0, 516 0, 0, 0, 0, 0, 0, 0, 0, 517 0, 0, 0, 0, 0, 0, 0, 0, 518 0, 0, 0, 0, 0, 0, 0, 0, 519 0, 0, 0, 0, 0, 0, 0, 0, 520 0, 0, 0, 0, 0, 0, 0, 0, 521 0, 0, 0, 0, 0, 0, 0, 0, 522 0, 0, 0, 0, 0, 0, 0, 0, 523 0, 0, 0, 0, 0, 0, 0, 0, 524 0, 0, 0, 0, 0, 0, 0, 0, 525 0, 0, 0, 0, 0, 0, 0, 0, 526 0, 0, 0, 0, 0, 0, 0, 0, 527 0, 0, 0, 0, 0, 0, 0, 0, 528 0, 0, 0, 0, 0, 0, 0, 0, 529 0, 0, 0, 0, 0, 0, 0, 0, 530 0, 0, 0, 0, 0, 0, 0, 0, 531 }; 532 if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 533 yych = *YYCURSOR; 534 if (yych <= 0x00) goto yy47; 535 if (yych == 'V') goto yy48; 536 goto yy50; 547 537 yy47: 548 538 YYCURSOR = YYMARKER; … … 550 540 yy48: 551 541 yych = *(YYMARKER = ++YYCURSOR); 552 switch(yych) { 553 case '.': 554 case '/': 555 case '0': 556 case '1': 557 case '2': 558 case '3': 559 case '4': 560 case '5': 561 case '6': 562 case '7': 563 case '8': 564 case '9': 565 case ':': 566 case ';': 567 case '<': 568 case '=': 569 case '>': 570 case '?': 571 case '@': 572 case 'A': 573 case 'B': 574 case 'C': 575 case 'D': 576 case 'E': 577 case 'F': 578 case 'G': 579 case 'H': 580 case 'I': 581 case 'J': 582 case 'K': 583 case 'L': 584 case 'M': 585 case 'N': 586 case 'O': 587 case 'P': 588 case 'Q': 589 case 'R': 590 case 'S': 591 case 'T': 592 case 'U': 593 case 'V': 594 case 'W': 595 case 'X': 596 case 'Y': 597 case 'Z': 598 case '[': 599 case '\\': 600 case ']': 601 case '^': 602 case '_': 603 case 'a': 604 case 'b': 605 case 'c': 606 case 'd': 607 case 'e': 608 case 'f': 609 case 'g': 610 case 'h': 611 case 'i': 612 case 'j': 613 case 'k': 614 case 'l': 615 case 'm': 616 case 'n': 617 case 'o': 618 case 'p': 619 case 'q': 620 case 'r': 621 case 's': 622 case 't': 623 case 'u': 624 case 'v': 625 case 'w': 626 case 'x': 627 case 'y': 628 case 'z': goto yy51; 629 default: goto yy49; 630 } 542 if (yych <= '-') goto yy49; 543 if (yych == '`') goto yy49; 544 if (yych <= 'z') goto yy51; 631 545 yy49: 632 #line 399 "bytecode.re"633 546 { YYCURSOR = YYTOKEN; 634 547 return YAML_DOCSEP; 635 548 } 636 #line 637 "<stdout>"637 549 yy50: 638 550 yych = *++YYCURSOR; … … 640 552 yy51: 641 553 ++YYCURSOR; 642 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 643 yych = *YYCURSOR; 644 switch(yych) { 645 case '.': 646 case '/': 647 case '0': 648 case '1': 649 case '2': 650 case '3': 651 case '4': 652 case '5': 653 case '6': 654 case '7': 655 case '8': 656 case '9': 657 case ';': 658 case '<': 659 case '=': 660 case '>': 661 case '?': 662 case '@': 663 case 'A': 664 case 'B': 665 case 'C': 666 case 'D': 667 case 'E': 668 case 'F': 669 case 'G': 670 case 'H': 671 case 'I': 672 case 'J': 673 case 'K': 674 case 'L': 675 case 'M': 676 case 'N': 677 case 'O': 678 case 'P': 679 case 'Q': 680 case 'R': 681 case 'S': 682 case 'T': 683 case 'U': 684 case 'V': 685 case 'W': 686 case 'X': 687 case 'Y': 688 case 'Z': 689 case '[': 690 case '\\': 691 case ']': 692 case '^': 693 case '_': 694 case 'a': 695 case 'b': 696 case 'c': 697 case 'd': 698 case 'e': 699 case 'f': 700 case 'g': 701 case 'h': 702 case 'i': 703 case 'j': 704 case 'k': 705 case 'l': 706 case 'm': 707 case 'n': 708 case 'o': 709 case 'p': 710 case 'q': 711 case 'r': 712 case 's': 713 case 't': 714 case 'u': 715 case 'v': 716 case 'w': 717 case 'x': 718 case 'y': 719 case 'z': goto yy51; 720 case ':': goto yy53; 721 default: goto yy47; 722 } 723 yy53: 724 yych = *++YYCURSOR; 725 switch(yych) { 726 case '.': 727 case '/': 728 case '0': 729 case '1': 730 case '2': 731 case '3': 732 case '4': 733 case '5': 734 case '6': 735 case '7': 736 case '8': 737 case '9': 738 case ':': 739 case ';': 740 case '<': 741 case '=': 742 case '>': 743 case '?': 744 case '@': 745 case 'A': 746 case 'B': 747 case 'C': 748 case 'D': 749 case 'E': 750 case 'F': 751 case 'G': 752 case 'H': 753 case 'I': 754 case 'J': 755 case 'K': 756 case 'L': 757 case 'M': 758 case 'N': 759 case 'O': 760 case 'P': 761 case 'Q': 762 case 'R': 763 case 'S': 764 case 'T': 765 case 'U': 766 case 'V': 767 case 'W': 768 case 'X': 769 case 'Y': 770 case 'Z': 771 case '[': 772 case '\\': 773 case ']': 774 case '^': 775 case '_': 776 case 'a': 777 case 'b': 778 case 'c': 779 case 'd': 780 case 'e': 781 case 'f': 782 case 'g': 783 case 'h': 784 case 'i': 785 case 'j': 786 case 'k': 787 case 'l': 788 case 'm': 789 case 'n': 790 case 'o': 791 case 'p': 792 case 'q': 793 case 'r': 794 case 's': 795 case 't': 796 case 'u': 797 case 'v': 798 case 'w': 799 case 'x': 800 case 'y': 801 case 'z': goto yy54; 802 default: goto yy47; 803 } 554 if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 555 yych = *YYCURSOR; 556 if (yybm[0+yych] & 64) { 557 goto yy51; 558 } 559 if (yych != ':') goto yy47; 560 yych = *++YYCURSOR; 561 if (yybm[0+yych] & 128) { 562 goto yy54; 563 } 564 goto yy47; 804 565 yy54: 805 566 ++YYCURSOR; 806 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 807 yych = *YYCURSOR; 808 switch(yych) { 809 case 0x0A: goto yy56; 810 case 0x0D: goto yy58; 811 case '.': 812 case '/': 813 case '0': 814 case '1': 815 case '2': 816 case '3': 817 case '4': 818 &