- Timestamp:
- 10/24/2007 14:56:48 (13 months ago)
- Location:
- trunk
- Files:
-
- 12 modified
-
ext/php/phpext.c (modified) (4 diffs)
-
lib/bytecode.c (modified) (36 diffs)
-
lib/emitter.c (modified) (12 diffs)
-
lib/implicit.c (modified) (134 diffs)
-
lib/implicit.re (modified) (1 diff)
-
lib/node.c (modified) (2 diffs)
-
lib/syck.c (modified) (5 diffs)
-
lib/syck.h (modified) (11 diffs)
-
lib/token.c (modified) (90 diffs)
-
lib/token.re (modified) (1 diff)
-
lib/yaml2byte.c (modified) (1 diff)
-
tests/Emit.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ext/php/phpext.c
r281 r287 107 107 } 108 108 109 void psex_add_output(php_syck_emitter_xtra *ptr, c har *data, size_t len)109 void psex_add_output(php_syck_emitter_xtra *ptr, const char *data, size_t len) 110 110 { 111 111 while (ptr->output_size + len > ptr->output_alloc) { … … 565 565 } 566 566 567 SyckNode * php_syck_badanchor_handler(SyckParser *p, c har *str)567 SyckNode * php_syck_badanchor_handler(SyckParser *p, const char *str) 568 568 { 569 569 SyckNode *res; … … 583 583 } 584 584 585 void php_syck_ehandler(SyckParser *p, c har *str)585 void php_syck_ehandler(SyckParser *p, const char *str) 586 586 { 587 587 char *endl = p->cursor; … … 782 782 } 783 783 784 void php_syck_output_handler(SyckEmitter *e, c har *str, long len)784 void php_syck_output_handler(SyckEmitter *e, const char *str, long len) 785 785 { 786 786 php_syck_emitter_xtra *bonus = (php_syck_emitter_xtra *) e->bonus; -
trunk/lib/bytecode.c
r237 r287 1 /* Generated by re2c 0. 9.12 on Sat Oct 14 00:53:59 2006*/1 /* Generated by re2c 0.12.3 on Wed Oct 24 23:52:49 2007 */ 2 2 #line 1 "bytecode.re" 3 3 /* … … 165 165 { 166 166 YYCTYPE yych; 167 unsigned int yyaccept = 0; 168 goto yy0; 169 ++YYCURSOR; 170 yy0: 167 171 168 if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 172 169 yych = *YYCURSOR; 173 switch(yych) {170 switch(yych) { 174 171 case 0x00: goto yy2; 175 172 case 'D': goto yy3; 176 173 default: goto yy5; 177 174 } 178 yy2: YYCURSOR = YYMARKER; 179 switch(yyaccept){ 180 case 0: goto yy4; 181 } 182 yy3: yyaccept = 0; 175 yy2: 176 YYCURSOR = YYMARKER; 177 goto yy4; 178 yy3: 183 179 yych = *(YYMARKER = ++YYCURSOR); 184 switch(yych) {180 switch(yych) { 185 181 case 0x0A: goto yy6; 186 182 case 0x0D: goto yy8; … … 189 185 yy4: 190 186 #line 199 "bytecode.re" 191 { YYPOS(0);187 { YYPOS(0); 192 188 goto Document; 193 189 } 194 #line 195 "<stdout>" 195 yy5: yych = *++YYCURSOR; 190 #line 191 "<stdout>" 191 yy5: 192 yych = *++YYCURSOR; 196 193 goto yy4; 197 yy6: ++YYCURSOR; 198 goto yy7; 199 yy7: 194 yy6: 195 ++YYCURSOR; 200 196 #line 186 "bytecode.re" 201 { if ( lvl->status == syck_lvl_header )197 { if ( lvl->status == syck_lvl_header ) 202 198 { 203 199 CHK_NL(YYCURSOR); … … 211 207 } 212 208 } 213 #line 214 "<stdout>" 214 yy8: ++YYCURSOR; 209 #line 210 "<stdout>" 210 yy8: 211 ++YYCURSOR; 215 212 switch((yych = *YYCURSOR)) { 216 213 case 0x0A: goto yy6; … … 232 229 233 230 234 #line 23 5"<stdout>"231 #line 232 "<stdout>" 235 232 { 236 233 YYCTYPE yych; 237 goto yy9;238 ++YYCURSOR;239 yy9:240 234 if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 241 235 yych = *YYCURSOR; 242 switch(yych) {236 switch(yych) { 243 237 case 0x00: goto yy30; 244 238 case 0x0A: goto yy27; … … 256 250 default: goto yy11; 257 251 } 258 yy11:yy12: yych = *++YYCURSOR; 259 switch(yych){ 252 yy11: 253 yy12: 254 yych = *++YYCURSOR; 255 switch(yych) { 260 256 case 0x0A: goto yy41; 261 257 case 0x0D: goto yy44; 262 258 default: goto yy11; 263 259 } 264 yy13: yych = *++YYCURSOR; 265 switch(yych){ 260 yy13: 261 yych = *++YYCURSOR; 262 switch(yych) { 266 263 case 0x0A: goto yy41; 267 264 case 0x0D: goto yy43; 268 265 default: goto yy11; 269 266 } 270 yy14: yych = *++YYCURSOR; 271 switch(yych){ 267 yy14: 268 yych = *++YYCURSOR; 269 switch(yych) { 272 270 case 0x0A: goto yy38; 273 271 case 0x0D: goto yy40; 274 272 default: goto yy11; 275 273 } 276 yy15: yych = *++YYCURSOR; 277 switch(yych){ 274 yy15: 275 yych = *++YYCURSOR; 276 switch(yych) { 278 277 case 0x0A: goto yy35; 279 278 case 0x0D: goto yy37; 280 279 default: goto yy11; 281 280 } 282 yy16: yych = *++YYCURSOR; 283 switch(yych){ 281 yy16: 282 yych = *++YYCURSOR; 283 switch(yych) { 284 284 case 0x0A: goto yy32; 285 285 case 0x0D: goto yy34; 286 286 default: goto yy11; 287 287 } 288 yy17: ++YYCURSOR; 289 goto yy18; 290 yy18: 288 yy17: 289 ++YYCURSOR; 291 290 #line 288 "bytecode.re" 292 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str);291 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str); 293 292 goto Scalar; 294 293 } 295 #line 296 "<stdout>" 296 yy19: ++YYCURSOR; 297 goto yy20; 298 yy20: 294 #line 295 "<stdout>" 295 yy19: 296 ++YYCURSOR; 299 297 #line 292 "bytecode.re" 300 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_open);298 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_open); 301 299 sycklval->name = get_inline( parser ); 302 300 syck_hdlr_remove_anchor( parser, sycklval->name ); … … 304 302 return YAML_ANCHOR; 305 303 } 306 #line 307 "<stdout>" 307 yy21: ++YYCURSOR; 308 goto yy22; 309 yy22: 304 #line 305 "<stdout>" 305 yy21: 306 ++YYCURSOR; 310 307 #line 299 "bytecode.re" 311 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str);308 { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str); 312 309 sycklval->name = get_inline( parser ); 313 310 POP_LEVEL(); … … 315 312 return YAML_ALIAS; 316 313 } 317 #line 318 "<stdout>" 318 yy23: ++YYCURSOR; 319 goto yy24; 320 yy24: 314 #line 315 "<stdout>" 315 yy23: 316 ++YYCURSOR; 321 317 #line 306 "bytecode.re" 322 { char *qstr;318 { char *qstr; 323 319 ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_open); 324 320 qstr = get_inline( parser ); … … 379 375 return YAML_TAGURI; 380 376 } 381 #line 382 "<stdout>" 382 yy25: ++YYCURSOR; 383 goto yy26; 384 yy26: 377 #line 378 "<stdout>" 378 yy25: 379 ++YYCURSOR; 385 380 #line 366 "bytecode.re" 386 { goto Comment; } 387 #line 388 "<stdout>" 388 yy27: ++YYCURSOR; 389 goto yy28; 390 yy28: 381 { goto Comment; } 382 #line 383 "<stdout>" 383 yy27: 384 ++YYCURSOR; 391 385 #line 368 "bytecode.re" 392 { CHK_NL(YYCURSOR);386 { CHK_NL(YYCURSOR); 393 387 if ( lvl->status == syck_lvl_seq ) 394 388 { … … 402 396 goto Document; 403 397 } 404 #line 405 "<stdout>" 405 yy29: yych = *++YYCURSOR; 406 switch(yych){ 398 #line 399 "<stdout>" 399 yy29: 400 yych = *++YYCURSOR; 401 switch(yych) { 407 402 case 0x0A: goto yy27; 408 403 default: goto yy11; 409 404 } 410 yy30: ++YYCURSOR; 411 goto yy31; 412 yy31: 405 yy30: 406 ++YYCURSOR; 413 407 #line 381 "bytecode.re" 414 { ENSURE_YAML_IEND(lvl, -1);408 { ENSURE_YAML_IEND(lvl, -1); 415 409 YYPOS(0); 416 410 return 0; 417 411 } 418 #line 419 "<stdout>" 419 yy32: ++YYCURSOR; 420 goto yy33; 421 yy33: 412 #line 413 "<stdout>" 413 yy32: 414 ++YYCURSOR; 422 415 #line 252 "bytecode.re" 423 { if ( lvl->status == syck_lvl_seq && lvl->ncount == 0 )416 { if ( lvl->status == syck_lvl_seq && lvl->ncount == 0 ) 424 417 { 425 418 lvl->ncount++; … … 456 449 return YAML_IEND; 457 450 } 458 #line 459 "<stdout>" 459 yy34: yych = *++YYCURSOR; 460 switch(yych){ 451 #line 452 "<stdout>" 452 yy34: 453 yych = *++YYCURSOR; 454 switch(yych) { 461 455 case 0x0A: goto yy32; 462 456 default: goto yy11; 463 457 } 464 yy35: ++YYCURSOR; 465 goto yy36; 466 yy36: 458 yy35: 459 ++YYCURSOR; 467 460 #line 237 "bytecode.re" 468 { int complex = 0;461 { int complex = 0; 469 462 if ( lvl->ncount % 2 == 0 && ( lvl->status == syck_lvl_map || lvl->status == syck_lvl_seq ) ) 470 463 { … … 480 473 return YAML_IOPEN; 481 474 } 482 #line 483 "<stdout>" 483 yy37: yych = *++YYCURSOR; 484 switch(yych){ 475 #line 476 "<stdout>" 476 yy37: 477 yych = *++YYCURSOR; 478 switch(yych) { 485 479 case 0x0A: goto yy35; 486 480 default: goto yy11; 487 481 } 488 yy38: ++YYCURSOR; 489 goto yy39; 490 yy39: 482 yy38: 483 ++YYCURSOR; 491 484 #line 222 "bytecode.re" 492 { int complex = 0;485 { int complex = 0; 493 486 if ( lvl->ncount % 2 == 0 && ( lvl->status == syck_lvl_map || lvl->status == syck_lvl_seq ) ) 494 487 { … … 504 497 return YAML_IOPEN; 505 498 } 506 #line 507 "<stdout>" 507 yy40: yych = *++YYCURSOR; 508 switch(yych){ 499 #line 500 "<stdout>" 500 yy40: 501 yych = *++YYCURSOR; 502 switch(yych) { 509 503 case 0x0A: goto yy38; 510 504 default: goto yy11; 511 505 } 512 yy41: ++YYCURSOR; 513 goto yy42; 514 yy42: 506 yy41: 507 ++YYCURSOR; 515 508 #line 217 "bytecode.re" 516 { ENSURE_YAML_IEND(lvl, -1);509 { ENSURE_YAML_IEND(lvl, -1); 517 510 YYPOS(0); 518 511 return 0; 519 512 } 520 #line 521 "<stdout>" 521 yy43: yych = *++YYCURSOR; 522 switch(yych){ 513 #line 514 "<stdout>" 514 yy43: 515 yych = *++YYCURSOR; 516 switch(yych) { 523 517 case 0x0A: goto yy41; 524 518 default: goto yy11; 525 519 } 526 yy44: ++YYCURSOR; 520 yy44: 521 ++YYCURSOR; 527 522 switch((yych = *YYCURSOR)) { 528 523 case 0x0A: goto yy41; … … 540 535 541 536 542 #line 5 43"<stdout>"537 #line 538 "<stdout>" 543 538 { 544 539 YYCTYPE yych; 545 unsigned int yyaccept = 0;546 goto yy45;547 ++YYCURSOR;548 yy45:549 540 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 550 541 yych = *YYCURSOR; 551 switch(yych) {542 switch(yych) { 552 543 case 0x00: goto yy47; 553 544 case 'V': goto yy48; 554 545 default: goto yy50; 555 546 } 556 yy47: YYCURSOR = YYMARKER; 557 switch(yyaccept){ 558 case 0: goto yy49; 559 } 560 yy48: yyaccept = 0; 547 yy47: 548 YYCURSOR = YYMARKER; 549 goto yy49; 550 yy48: 561 551 yych = *(YYMARKER = ++YYCURSOR); 562 switch(yych) {552 switch(yych) { 563 553 case '.': 564 554 case '/': … … 610 600 case ']': 611 601 case '^': 612 case '_': case 'a': 602 case '_': 603 case 'a': 613 604 case 'b': 614 605 case 'c': … … 640 631 yy49: 641 632 #line 399 "bytecode.re" 642 { YYCURSOR = YYTOKEN;633 { YYCURSOR = YYTOKEN; 643 634 return YAML_DOCSEP; 644 635 } 645 #line 646 "<stdout>" 646 yy50: yych = *++YYCURSOR; 636 #line 637 "<stdout>" 637 yy50: 638 yych = *++YYCURSOR; 647 639 goto yy49; 648 yy51: ++YYCURSOR; 640 yy51: 641 ++YYCURSOR; 649 642 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 650 643 yych = *YYCURSOR; 651 goto yy52; 652 yy52: switch(yych){ 644 switch(yych) { 653 645 case '.': 654 646 case '/': … … 662 654 case '7': 663 655 case '8': 664 case '9': case ';': 656 case '9': 657 case ';': 665 658 case '<': 666 659 case '=': … … 698 691 case ']': 699 692 case '^': 700 case '_': case 'a': 693 case '_': 694 case 'a': 701 695 case 'b': 702 696 case 'c': … … 727 721 default: goto yy47; 728 722 } 729 yy53: yych = *++YYCURSOR; 730 switch(yych){ 723 yy53: 724 yych = *++YYCURSOR; 725 switch(yych) { 731 726 case '.': 732 727 case '/': … … 778 773 case ']': 779 774 case '^': 780 case '_': case 'a': 775 case '_': 776 case 'a': 781 777 case 'b': 782 778 case 'c': … … 806 802 default: goto yy47; 807 803 } 808 yy54: ++YYCURSOR; 804 yy54: 805 ++YYCURSOR; 809 806 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 810 807 yych = *YYCURSOR; 811 goto yy55; 812 yy55: switch(yych){ 808 switch(yych) { 813 809 case 0x0A: goto yy56; 814 810 case 0x0D: goto yy58; … … 862 858 case ']': 863 859 case '^': 864 case '_': case 'a': 860 case '_': 861 case 'a': 865 862 case 'b': 866 863 case 'c': … … 890 887 default: goto yy47; 891 888 } 892 yy56: ++YYCURSOR; 893 goto yy57; 894 yy57: 889 yy56: 890 ++YYCURSOR; 895 891 #line 396 "bytecode.re" 896 { CHK_NL(YYCURSOR);892 { CHK_NL(YYCURSOR); 897 893 goto Directive; } 898 #line 899 "<stdout>" 899 yy58: ++YYCURSOR; 894 #line 895 "<stdout>" 895 yy58: 896 ++YYCURSOR; 900 897 switch((yych = *YYCURSOR)) { 901 898 case 0x0A: goto yy56; … … 913 910 914 911 915 #line 91 6"<stdout>"912 #line 913 "<stdout>" 916 913 { 917 914 YYCTYPE yych; 918 goto yy59;919 ++YYCURSOR;920 yy59:921 915 if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); 922 916 yych = *YYCURSOR; 923 switch(yych) {917 switch(yych) { 924 918 case 0x00: goto yy61; 925 919 case 0x0A: goto yy62; … … 927 921 default: goto yy66; 928 922 } 929 yy61:yy62: ++YYCURSOR; 930 goto yy63; 923 yy61: 924 yy62: 925 ++YYCURSOR; 931 926 yy63: 932 927 #line 412 "bytecode.re" 933 { CHK_NL(YYCURSOR);928 { CHK_NL(YYCURSOR); 934 929 goto Document; } 935 #line 936 "<stdout>" 936 yy64: ++YYCURSOR; 930 #line 931 "<stdout>" 931 yy64: 932 ++YYCURSOR; 937 933 switch((yych = *YYCURSOR)) { 938 934 case 0x0A: goto yy67; … … 941 937 yy65: 942 938 #line 415 "bytecode.re" 943 { goto Comment; } 944 #line 945 "<stdout>" 945 yy66: yych = *++YYCURSOR; 939 { goto Comment; } 940 #line 941 "<stdout>" 941 yy66: 942 yych = *++YYCURSOR; 946 943 goto yy65; 947 yy67: ++YYCURSOR; 944 yy67: 945 ++YYCURSOR; 948 946 yych = *YYCURSOR; 949 947 goto yy63; … … 967 965 968 966 969 #line 9 70"<stdout>"967 #line 968 "<stdout>" 970 968 { 971 969 YYCTYPE yych; 972 goto yy68;973 ++YYCURSOR;974 yy68:975 970 if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); 976 971 yych = *YYCURSOR; 977 switch(yych) {972 switch(yych) { 978 973 case 0x00: goto yy74; 979 974 case 0x0A: goto yy70; … … 981 976 default: goto yy76; 982 977 } 983 yy70: ++YYCURSOR; 978 yy70: 979 ++YYCURSOR; 984 980 switch((yych = *YYCURSOR)) { 985 981 case 'C': goto yy78; … … 990 986 yy71: 991 987 #line 461 "bytecode.re" 992 { YYCURSOR = tok;988 { YYCURSOR = tok; 993 989 goto ScalarEnd; 994 990 } 995 #line 996 "<stdout>" 996 yy72: ++YYCURSOR; 991 #line 992 "<stdout>" 992 yy72: 993 ++YYCURSOR; 997 994 switch((yych = *YYCURSOR)) { 998 995 case 0x0A: goto yy77; … … 1001 998 yy73: 1002 999 #line 469 "bytecode.re" 1003 { CAT(str, cap, idx, tok[0]);1000 { CAT(str, cap, idx, tok[0]); 1004 1001 goto Scalar2; 1005 1002 } 1006 #line 1007 "<stdout>" 1007 yy74: ++YYCURSOR; 1008 goto yy75; 1009 yy75: 1003 #line 1004 "<stdout>" 1004 yy74: 1005 ++YYCURSOR; 1010 1006 #line 465 "bytecode.re" 1011 { YYCURSOR = tok;1007 { YYCURSOR = tok; 1012 1008 goto ScalarEnd; 1013 1009 } 1014 #line 1015 "<stdout>" 1015 yy76: yych = *++YYCURSOR; 1010 #line 1011 "<stdout>" 1011 yy76: 1012 yych = *++YYCURSOR; 1016 1013 goto yy73; 1017 yy77: yych = *++YYCURSOR;