From e3619768b1273cd532c87ca5948b85475a147f54 Mon Sep 17 00:00:00 2001 From: why Date: Sat, 7 Aug 2004 15:34:39 +0000 Subject: * lib/implicit.c: added sexagecimal float#base60. * ext/syck/rubyext.c (yaml_org_handler): ditto. * lib/token.c: indentation absolutely ignored when processing flow collections. plain scalars are trimmed if indentation follows in an ambiguous flow collection. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/syck/token.c | 536 ++++++++++++++++++++----------------------------------- 1 file changed, 189 insertions(+), 347 deletions(-) (limited to 'ext/syck/token.c') diff --git a/ext/syck/token.c b/ext/syck/token.c index 703f7fa0a1..1ce5bfb427 100644 --- a/ext/syck/token.c +++ b/ext/syck/token.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.9.3 on Fri Jul 30 13:48:10 2004 */ +/* Generated by re2c 0.5 on Fri Aug 6 11:22:27 2004 */ #line 1 "token.re" /* * token.re @@ -260,7 +260,7 @@ sycklex_yaml_utf8( YYSTYPE *sycklval, SyckParser *parser ) return t; } -#line 279 "token.re" +#line 279 if ( YYLINEPTR != YYCURSOR ) @@ -272,8 +272,6 @@ Header: YYTOKEN = YYCURSOR; - -#line 7 "" { YYCTYPE yych; unsigned int yyaccept; @@ -340,77 +338,64 @@ yy0: yy2: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == '-') goto yy28; - goto yy3; yy3: -#line 338 "token.re" -{ YYPOS(0); +#line 338 + { YYPOS(0); goto Document; } -#line 80 "" yy4: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == '.') goto yy21; goto yy3; -yy5: ++YYCURSOR; - goto yy6; +yy5: yych = *++YYCURSOR; yy6: -#line 320 "token.re" -{ eat_comments( parser ); +#line 320 + { eat_comments( parser ); goto Header; } -#line 92 "" -yy7: ++YYCURSOR; - goto yy8; +yy7: yych = *++YYCURSOR; yy8: -#line 324 "token.re" -{ SyckLevel *lvl = CURRENT_LEVEL(); +#line 324 + { SyckLevel *lvl = CURRENT_LEVEL(); ENSURE_YAML_IEND(lvl, -1); YYPOS(0); return 0; } -#line 102 "" yy9: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); goto yy18; yy10: -#line 330 "token.re" -{ GOBBLE_UP_YAML_INDENT( doc_level, YYTOKEN ); +#line 330 + { GOBBLE_UP_YAML_INDENT( doc_level, YYTOKEN ); goto Header; } -#line 111 "" yy11: yych = *++YYCURSOR; if(yych == '\n') goto yy17; goto yy3; -yy12: ++YYCURSOR; - yych = *YYCURSOR; +yy12: yych = *++YYCURSOR; goto yy16; yy13: -#line 334 "token.re" -{ doc_level = YYCURSOR - YYLINEPTR; +#line 334 + { doc_level = YYCURSOR - YYLINEPTR; goto Header; } -#line 122 "" yy14: yych = *++YYCURSOR; goto yy3; yy15: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy16; yy16: if(yybm[0+yych] & 64) goto yy15; goto yy13; yy17: yyaccept = 1; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy18; yy18: if(yybm[0+yych] & 128) goto yy17; if(yych != '\r') goto yy10; - goto yy19; yy19: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych == '\n') goto yy17; - goto yy20; yy20: YYCURSOR = YYMARKER; switch(yyaccept){ case 1: goto yy10; @@ -418,21 +403,18 @@ yy20: YYCURSOR = YYMARKER; } yy21: yych = *++YYCURSOR; if(yych != '.') goto yy20; - goto yy22; yy22: yych = *++YYCURSOR; if(yych <= '\f'){ if(yych != '\n') goto yy20; - goto yy23; } else { if(yych <= '\r') goto yy27; if(yych == ' ') goto yy25; goto yy20; } -yy23: ++YYCURSOR; - goto yy24; +yy23: yych = *++YYCURSOR; yy24: -#line 306 "token.re" -{ SyckLevel *lvl = CURRENT_LEVEL(); +#line 306 + { SyckLevel *lvl = CURRENT_LEVEL(); if ( lvl->status == syck_lvl_header ) { goto Header; @@ -445,11 +427,9 @@ yy24: } return 0; } -#line 180 "" yy25: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy26; yy26: if(yych == ' ') goto yy25; goto yy24; yy27: yych = *++YYCURSOR; @@ -457,21 +437,18 @@ yy27: yych = *++YYCURSOR; goto yy20; yy28: yych = *++YYCURSOR; if(yych != '-') goto yy20; - goto yy29; yy29: yych = *++YYCURSOR; if(yych <= '\f'){ if(yych != '\n') goto yy20; - goto yy30; } else { if(yych <= '\r') goto yy34; if(yych == ' ') goto yy32; goto yy20; } -yy30: ++YYCURSOR; - goto yy31; +yy30: yych = *++YYCURSOR; yy31: -#line 292 "token.re" -{ SyckLevel *lvl = CURRENT_LEVEL(); +#line 292 + { SyckLevel *lvl = CURRENT_LEVEL(); if ( lvl->status == syck_lvl_header ) { YYPOS(3); @@ -484,18 +461,16 @@ yy31: return 0; } } -#line 220 "" yy32: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy33; yy33: if(yych == ' ') goto yy32; goto yy31; -yy34: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy30; +yy34: yych = *++YYCURSOR; + if(yych == '\n') goto yy30; goto yy20; } -#line 342 "token.re" +#line 342 Document: @@ -508,8 +483,6 @@ Document: YYTOKEN = YYCURSOR; - -#line 234 "" { YYCTYPE yych; unsigned int yyaccept; @@ -557,7 +530,6 @@ yy35: if(yych <= '\f'){ if(yych <= '\000') goto yy60; if(yych != '\n') goto yy62; - goto yy37; } else { if(yych <= '\r') goto yy39; if(yych <= '\037') goto yy62; @@ -606,8 +578,8 @@ yy37: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy90; yy38: -#line 356 "token.re" -{ /* Isolate spaces */ +#line 356 + { /* Isolate spaces */ int indt_len; GOBBLE_UP_YAML_INDENT( indt_len, YYTOKEN ); lvl = CURRENT_LEVEL(); @@ -619,6 +591,12 @@ yy38: goto Document; } + /* Ignore indentation inside inlines */ + if ( lvl->status == syck_lvl_inline ) + { + goto Document; + } + /* Check for open indent */ ENSURE_YAML_IEND(lvl, indt_len); ENSURE_YAML_IOPEN(lvl, indt_len, 0); @@ -628,34 +606,27 @@ yy38: } return YAML_INDENT; } -#line 353 "" -yy39: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy89; - goto yy40; +yy39: yych = *++YYCURSOR; + if(yych == '\n') goto yy89; yy40: -#line 448 "token.re" -{ ENSURE_YAML_IOPEN(lvl, doc_level, 1); +#line 454 + { ENSURE_YAML_IOPEN(lvl, doc_level, 1); goto Plain; } -#line 362 "" -yy41: ++YYCURSOR; - goto yy42; +yy41: yych = *++YYCURSOR; yy42: -#line 378 "token.re" -{ ENSURE_YAML_IOPEN(lvl, doc_level, 1); +#line 384 + { ENSURE_YAML_IOPEN(lvl, doc_level, 1); lvl = CURRENT_LEVEL(); ADD_LEVEL(lvl->spaces + 1, syck_lvl_inline); return YYTOKEN[0]; } -#line 372 "" -yy43: ++YYCURSOR; - goto yy44; +yy43: yych = *++YYCURSOR; yy44: -#line 384 "token.re" -{ POP_LEVEL(); +#line 390 + { POP_LEVEL(); return YYTOKEN[0]; } -#line 380 "" yy45: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '\f'){ @@ -700,26 +671,20 @@ yy47: yych = *++YYCURSOR; yy48: yych = *++YYCURSOR; if(yybm[0+yych] & 64) goto yy73; goto yy40; -yy49: ++YYCURSOR; - goto yy50; +yy49: yych = *++YYCURSOR; yy50: -#line 422 "token.re" -{ goto TransferMethod; } -#line 430 "" -yy51: ++YYCURSOR; - goto yy52; +#line 428 + { goto TransferMethod; } +yy51: yych = *++YYCURSOR; yy52: -#line 424 "token.re" -{ ENSURE_YAML_IOPEN(lvl, doc_level, 1); +#line 430 + { ENSURE_YAML_IOPEN(lvl, doc_level, 1); goto SingleQuote; } -#line 437 "" -yy53: ++YYCURSOR; - goto yy54; +yy53: yych = *++YYCURSOR; yy54: -#line 427 "token.re" -{ ENSURE_YAML_IOPEN(lvl, doc_level, 1); +#line 433 + { ENSURE_YAML_IOPEN(lvl, doc_level, 1); goto DoubleQuote; } -#line 444 "" yy55: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 32) goto yy65; @@ -731,71 +696,58 @@ yy55: yyaccept = 1; if(yych == ' ') goto yy70; goto yy40; } -yy56: ++YYCURSOR; - goto yy57; +yy56: yych = *++YYCURSOR; yy57: -#line 437 "token.re" -{ eat_comments( parser ); +#line 443 + { eat_comments( parser ); goto Document; } -#line 463 "" -yy58: ++YYCURSOR; - yych = *YYCURSOR; +yy58: yych = *++YYCURSOR; goto yy64; yy59: -#line 441 "token.re" -{ goto Document; } -#line 469 "" -yy60: ++YYCURSOR; - goto yy61; +#line 447 + { goto Document; } +yy60: yych = *++YYCURSOR; yy61: -#line 443 "token.re" -{ ENSURE_YAML_IEND(lvl, -1); +#line 449 + { ENSURE_YAML_IEND(lvl, -1); YYPOS(0); return 0; } -#line 478 "" yy62: yych = *++YYCURSOR; goto yy40; yy63: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy64; yy64: if(yybm[0+yych] & 16) goto yy63; goto yy59; yy65: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy66; yy66: if(yybm[0+yych] & 32) goto yy65; if(yych <= '\f'){ if(yych == '\n') goto yy68; - goto yy67; } else { if(yych <= '\r') goto yy72; if(yych == ' ') goto yy70; - goto yy67; } yy67: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy38; case 1: goto yy40; } -yy68: ++YYCURSOR; - goto yy69; +yy68: yych = *++YYCURSOR; yy69: -#line 430 "token.re" -{ if ( is_newline( YYCURSOR - 1 ) ) +#line 436 + { if ( is_newline( YYCURSOR - 1 ) ) { YYCURSOR--; } goto ScalarBlock; } -#line 517 "" yy70: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy71; yy71: if(yych == ' ') goto yy70; goto yy69; yy72: yych = *++YYCURSOR; @@ -804,43 +756,35 @@ yy72: yych = *++YYCURSOR; yy73: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy74; yy74: if(yybm[0+yych] & 64) goto yy73; - goto yy75; yy75: -#line 417 "token.re" -{ ENSURE_YAML_IOPEN(lvl, doc_level, 1); +#line 423 + { ENSURE_YAML_IOPEN(lvl, doc_level, 1); sycklval->name = syck_strndup( YYTOKEN + 1, YYCURSOR - YYTOKEN - 1 ); return YAML_ALIAS; } -#line 541 "" yy76: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy77; yy77: if(yych <= '@'){ if(yych <= '-'){ if(yych >= '-') goto yy76; - goto yy78; } else { if(yych <= '/') goto yy78; if(yych <= '9') goto yy76; - goto yy78; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy76; if(yych >= '_') goto yy76; - goto yy78; } else { if(yych <= '`') goto yy78; if(yych <= 'z') goto yy76; - goto yy78; } } yy78: -#line 406 "token.re" -{ sycklval->name = syck_strndup( YYTOKEN + 1, YYCURSOR - YYTOKEN - 1 ); +#line 412 + { sycklval->name = syck_strndup( YYTOKEN + 1, YYCURSOR - YYTOKEN - 1 ); /* * Remove previous anchors of the same name. Since the parser will likely @@ -850,46 +794,39 @@ yy78: syck_hdlr_remove_anchor(parser, sycklval->name); return YAML_ANCHOR; } -#line 579 "" -yy79: ++YYCURSOR; - goto yy80; +yy79: yych = *++YYCURSOR; yy80: -#line 392 "token.re" -{ ENSURE_YAML_IOPEN(lvl, YYTOKEN - YYLINEPTR, 1); +#line 398 + { ENSURE_YAML_IOPEN(lvl, YYTOKEN - YYLINEPTR, 1); FORCE_NEXT_TOKEN(YAML_IOPEN); - if ( is_newline( YYCURSOR ) || is_newline( YYCURSOR - 1 ) ) + if ( *YYCURSOR == '#' || is_newline( YYCURSOR ) || is_newline( YYCURSOR - 1 ) ) { YYCURSOR--; ADD_LEVEL((YYTOKEN + 1) - YYLINEPTR, syck_lvl_doc); } - else + else /* spaces followed by content uses the space as indentation */ { ADD_LEVEL(YYCURSOR - YYLINEPTR, syck_lvl_doc); } return YYTOKEN[0]; } -#line 597 "" yy81: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy82; yy82: if(yych == ' ') goto yy81; goto yy80; yy83: yych = *++YYCURSOR; if(yych == '\n') goto yy79; goto yy67; -yy84: ++YYCURSOR; - goto yy85; +yy84: yych = *++YYCURSOR; yy85: -#line 388 "token.re" -{ YYPOS(1); +#line 394 + { YYPOS(1); return YYTOKEN[0]; } -#line 615 "" yy86: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy87; yy87: if(yych == ' ') goto yy86; goto yy85; yy88: yych = *++YYCURSOR; @@ -899,17 +836,15 @@ yy89: yyaccept = 0; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy90; yy90: if(yybm[0+yych] & 128) goto yy89; if(yych != '\r') goto yy38; - goto yy91; yy91: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych == '\n') goto yy89; goto yy67; } -#line 452 "token.re" +#line 458 } @@ -917,8 +852,6 @@ Directive: { YYTOKTMP = YYCURSOR; - -#line 643 "" { YYCTYPE yych; unsigned int yyaccept; @@ -978,50 +911,40 @@ yy95: yyaccept = 0; if(yych <= '-') goto yy96; if(yych == '`') goto yy96; if(yych <= 'z') goto yy102; - goto yy96; yy96: -#line 465 "token.re" -{ YYCURSOR = YYTOKTMP; +#line 471 + { YYCURSOR = YYTOKTMP; return YAML_DOCSEP; } -#line 709 "" -yy97: ++YYCURSOR; - yych = *YYCURSOR; +yy97: yych = *++YYCURSOR; goto yy101; yy98: -#line 463 "token.re" -{ goto Directive; } -#line 715 "" +#line 469 + { goto Directive; } yy99: yych = *++YYCURSOR; goto yy96; yy100: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy101; yy101: if(yybm[0+yych] & 32) goto yy100; goto yy98; yy102: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy103; yy103: if(yybm[0+yych] & 64) goto yy102; if(yych != ':') goto yy94; - goto yy104; yy104: yych = *++YYCURSOR; if(yybm[0+yych] & 128) goto yy105; goto yy94; yy105: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy106; yy106: if(yybm[0+yych] & 128) goto yy105; - goto yy107; yy107: -#line 461 "token.re" -{ goto Directive; } -#line 746 "" +#line 467 + { goto Directive; } } -#line 468 "token.re" +#line 474 } @@ -1043,8 +966,6 @@ Plain2: Plain3: - -#line 750 "" { YYCTYPE yych; unsigned int yyaccept; @@ -1091,7 +1012,6 @@ yy108: if(yych <= '\f'){ if(yych <= '\000') goto yy120; if(yych != '\n') goto yy122; - goto yy110; } else { if(yych <= '\r') goto yy112; if(yych == ' ') goto yy118; @@ -1112,8 +1032,8 @@ yy110: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy136; yy111: -#line 491 "token.re" -{ int indt_len, nl_count = 0; +#line 497 + { int indt_len, nl_count = 0; SyckLevel *lvl; char *tok = YYTOKEN; GOBBLE_UP_YAML_INDENT( indt_len, tok ); @@ -1148,16 +1068,13 @@ yy111: goto Plain2; } -#line 854 "" -yy112: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy135; - goto yy113; +yy112: yych = *++YYCURSOR; + if(yych == '\n') goto yy135; yy113: -#line 549 "token.re" -{ QUOTECATS(qstr, qcapa, qidx, YYTOKEN, YYCURSOR - YYTOKEN); +#line 566 + { QUOTECATS(qstr, qcapa, qidx, YYTOKEN, YYCURSOR - YYTOKEN); goto Plain2; } -#line 863 "" yy114: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '\f'){ @@ -1168,11 +1085,10 @@ yy114: yyaccept = 1; if(yych == ' ') goto yy132; goto yy113; } -yy115: ++YYCURSOR; - goto yy116; +yy115: yych = *++YYCURSOR; yy116: -#line 529 "token.re" -{ if ( plvl->status != syck_lvl_inline ) +#line 535 + { if ( plvl->status != syck_lvl_inline ) { if ( *(YYCURSOR - 1) == ' ' || is_newline( YYCURSOR - 1 ) ) { @@ -1181,64 +1097,63 @@ yy116: QUOTECATS(qstr, qcapa, qidx, YYTOKEN, YYCURSOR - YYTOKEN); goto Plain2; } + else + { + /* trim spaces off the end in case of indent */ + char *walker = qstr + qidx - 1; + while ( walker > qstr && ( *walker == '\n' || *walker == ' ' ) ) + { + qidx--; + walker[0] = '\0'; + walker--; + } + } RETURN_IMPLICIT(); } -#line 889 "" yy117: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy126; if(yych == '\n') goto yy125; if(yych == '\r') goto yy128; goto yy113; -yy118: ++YYCURSOR; - if((yych = *YYCURSOR) == '#') goto yy123; - goto yy119; +yy118: yych = *++YYCURSOR; + if(yych == '#') goto yy123; yy119: -#line 547 "token.re" -{ goto Plain3; } -#line 902 "" -yy120: ++YYCURSOR; - goto yy121; +#line 564 + { goto Plain3; } +yy120: yych = *++YYCURSOR; yy121: -#line 545 "token.re" -{ RETURN_IMPLICIT(); } -#line 908 "" +#line 562 + { RETURN_IMPLICIT(); } yy122: yych = *++YYCURSOR; goto yy113; -yy123: ++YYCURSOR; - goto yy124; +yy123: yych = *++YYCURSOR; yy124: -#line 541 "token.re" -{ eat_comments( parser ); +#line 558 + { eat_comments( parser ); RETURN_IMPLICIT(); } -#line 918 "" yy125: yych = *++YYCURSOR; goto yy116; yy126: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy127; yy127: if(yybm[0+yych] & 64) goto yy126; goto yy116; yy128: yych = *++YYCURSOR; if(yych == '\n') goto yy125; - goto yy129; yy129: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy111; case 1: goto yy113; } -yy130: ++YYCURSOR; - goto yy131; +yy130: yych = *++YYCURSOR; yy131: -#line 527 "token.re" -{ RETURN_IMPLICIT(); } -#line 941 "" +#line 533 + { RETURN_IMPLICIT(); } yy132: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy133; yy133: if(yych == ' ') goto yy132; goto yy131; yy134: yych = *++YYCURSOR; @@ -1248,17 +1163,15 @@ yy135: yyaccept = 0; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy136; yy136: if(yybm[0+yych] & 128) goto yy135; if(yych != '\r') goto yy111; - goto yy137; yy137: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych == '\n') goto yy135; goto yy129; } -#line 553 "token.re" +#line 570 } @@ -1271,8 +1184,6 @@ SingleQuote: SingleQuote2: YYTOKEN = YYCURSOR; - -#line 969 "" { YYCTYPE yych; unsigned int yyaccept; @@ -1318,7 +1229,6 @@ yy138: if(yych <= '\f'){ if(yych <= '\000') goto yy146; if(yych != '\n') goto yy147; - goto yy140; } else { if(yych <= '\r') goto yy142; if(yych == '\'') goto yy144; @@ -1328,8 +1238,8 @@ yy140: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy151; yy141: -#line 567 "token.re" -{ int indt_len; +#line 584 + { int indt_len; int nl_count = 0; SyckLevel *lvl; GOBBLE_UP_YAML_INDENT( indt_len, YYTOKEN ); @@ -1368,22 +1278,18 @@ yy141: goto SingleQuote2; } -#line 1065 "" -yy142: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy150; - goto yy143; +yy142: yych = *++YYCURSOR; + if(yych == '\n') goto yy150; yy143: -#line 627 "token.re" -{ QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1)); +#line 644 + { QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1)); goto SingleQuote2; } -#line 1074 "" -yy144: ++YYCURSOR; - if((yych = *YYCURSOR) == '\'') goto yy148; - goto yy145; +yy144: yych = *++YYCURSOR; + if(yych == '\'') goto yy148; yy145: -#line 611 "token.re" -{ SyckLevel *lvl; +#line 628 + { SyckLevel *lvl; SyckNode *n = syck_alloc_str(); lvl = CURRENT_LEVEL(); @@ -1398,38 +1304,32 @@ yy145: sycklval->nodeData = n; return YAML_PLAIN; } -#line 1095 "" yy146: yych = *++YYCURSOR; goto yy145; yy147: yych = *++YYCURSOR; goto yy143; -yy148: ++YYCURSOR; - goto yy149; +yy148: yych = *++YYCURSOR; yy149: -#line 607 "token.re" -{ QUOTECAT(qstr, qcapa, qidx, '\''); +#line 624 + { QUOTECAT(qstr, qcapa, qidx, '\''); goto SingleQuote2; } -#line 1107 "" yy150: yyaccept = 0; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy151; yy151: if(yybm[0+yych] & 128) goto yy150; if(yych != '\r') goto yy141; - goto yy152; yy152: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych == '\n') goto yy150; - goto yy153; yy153: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy141; } } -#line 631 "token.re" +#line 648 } @@ -1446,8 +1346,6 @@ DoubleQuote2: YYTOKEN = YYCURSOR; - -#line 1129 "" { YYCTYPE yych; unsigned int yyaccept; @@ -1512,8 +1410,8 @@ yy156: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy178; yy157: -#line 649 "token.re" -{ int indt_len; +#line 666 + { int indt_len; int nl_count = 0; SyckLevel *lvl; GOBBLE_UP_YAML_INDENT( indt_len, YYTOKEN ); @@ -1556,16 +1454,13 @@ yy157: keep_nl = 1; goto DoubleQuote2; } -#line 1238 "" -yy158: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy177; - goto yy159; +yy158: yych = *++YYCURSOR; + if(yych == '\n') goto yy177; yy159: -#line 728 "token.re" -{ QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1)); +#line 745 + { QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1)); goto DoubleQuote2; } -#line 1247 "" yy160: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy165; @@ -1611,11 +1506,10 @@ yy160: yyaccept = 1; } } } -yy161: ++YYCURSOR; - goto yy162; +yy161: yych = *++YYCURSOR; yy162: -#line 712 "token.re" -{ SyckLevel *lvl; +#line 729 + { SyckLevel *lvl; SyckNode *n = syck_alloc_str(); lvl = CURRENT_LEVEL(); @@ -1630,7 +1524,6 @@ yy162: sycklval->nodeData = n; return YAML_PLAIN; } -#line 1312 "" yy163: yych = *++YYCURSOR; goto yy162; yy164: yych = *++YYCURSOR; @@ -1638,25 +1531,21 @@ yy164: yych = *++YYCURSOR; yy165: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy166; yy166: if(yybm[0+yych] & 64) goto yy165; if(yych == '\n') goto yy168; if(yych == '\r') goto yy170; - goto yy167; yy167: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy157; case 1: goto yy159; } -yy168: ++YYCURSOR; - goto yy169; +yy168: yych = *++YYCURSOR; yy169: -#line 707 "token.re" -{ keep_nl = 0; +#line 724 + { keep_nl = 0; YYCURSOR--; goto DoubleQuote2; } -#line 1339 "" yy170: yych = *++YYCURSOR; if(yych == '\n') goto yy168; goto yy167; @@ -1671,31 +1560,26 @@ yy171: yych = *++YYCURSOR; if(yych <= 'f') goto yy174; goto yy167; } -yy172: ++YYCURSOR; - goto yy173; +yy172: yych = *++YYCURSOR; yy173: -#line 693 "token.re" -{ char ch = *( YYCURSOR - 1 ); +#line 710 + { char ch = *( YYCURSOR - 1 ); QUOTECAT(qstr, qcapa, qidx, escape_seq( ch )); goto DoubleQuote2; } -#line 1362 "" yy174: yych = *++YYCURSOR; if(yych <= '@'){ if(yych <= '/') goto yy167; if(yych >= ':') goto yy167; - goto yy175; } else { if(yych <= 'F') goto yy175; if(yych <= '`') goto yy167; if(yych >= 'g') goto yy167; - goto yy175; } -yy175: ++YYCURSOR; - goto yy176; +yy175: yych = *++YYCURSOR; yy176: -#line 698 "token.re" -{ long ch; +#line 715 + { long ch; char *chr_text = syck_strndup( YYTOKEN, 4 ); chr_text[0] = '0'; ch = strtol( chr_text, NULL, 16 ); @@ -1703,22 +1587,19 @@ yy176: QUOTECAT(qstr, qcapa, qidx, ch); goto DoubleQuote2; } -#line 1386 "" yy177: yyaccept = 0; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy178; yy178: if(yybm[0+yych] & 128) goto yy177; if(yych != '\r') goto yy157; - goto yy179; yy179: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych == '\n') goto yy177; goto yy167; } -#line 732 "token.re" +#line 749 } @@ -1731,8 +1612,6 @@ TransferMethod: TransferMethod2: YYTOKTMP = YYCURSOR; - -#line 1404 "" { YYCTYPE yych; unsigned int yyaccept; @@ -1778,7 +1657,6 @@ yy180: if(yych <= '\r'){ if(yych <= '\t'){ if(yych >= '\001') goto yy189; - goto yy182; } else { if(yych <= '\n') goto yy183; if(yych <= '\f') goto yy189; @@ -1797,11 +1675,10 @@ yy182: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy187; } -yy183: ++YYCURSOR; - goto yy184; +yy183: yych = *++YYCURSOR; yy184: -#line 746 "token.re" -{ SyckLevel *lvl; +#line 763 + { SyckLevel *lvl; YYCURSOR = YYTOKTMP; if ( YYCURSOR == YYTOKEN + 1 ) { @@ -1850,18 +1727,15 @@ yy184: return YAML_TRANSFER; } -#line 1522 "" yy185: yych = *++YYCURSOR; goto yy198; -yy186: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy196; - goto yy187; +yy186: yych = *++YYCURSOR; + if(yych == '\n') goto yy196; yy187: -#line 813 "token.re" -{ QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1)); +#line 830 + { QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1)); goto TransferMethod2; } -#line 1533 "" yy188: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= 'f'){ @@ -1915,31 +1789,26 @@ yy190: yych = *++YYCURSOR; if(yych <= 'f') goto yy193; goto yy182; } -yy191: ++YYCURSOR; - goto yy192; +yy191: yych = *++YYCURSOR; yy192: -#line 799 "token.re" -{ char ch = *( YYCURSOR - 1 ); +#line 816 + { char ch = *( YYCURSOR - 1 ); QUOTECAT(qstr, qcapa, qidx, escape_seq( ch )); goto TransferMethod2; } -#line 1595 "" yy193: yych = *++YYCURSOR; if(yych <= '@'){ if(yych <= '/') goto yy182; if(yych >= ':') goto yy182; - goto yy194; } else { if(yych <= 'F') goto yy194; if(yych <= '`') goto yy182; if(yych >= 'g') goto yy182; - goto yy194; } -yy194: ++YYCURSOR; - goto yy195; +yy194: yych = *++YYCURSOR; yy195: -#line 804 "token.re" -{ long ch; +#line 821 + { long ch; char *chr_text = syck_strndup( YYTOKTMP, 4 ); chr_text[0] = '0'; ch = strtol( chr_text, NULL, 16 ); @@ -1947,17 +1816,15 @@ yy195: QUOTECAT(qstr, qcapa, qidx, ch); goto TransferMethod2; } -#line 1619 "" yy196: yych = *++YYCURSOR; goto yy184; yy197: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy198; yy198: if(yybm[0+yych] & 128) goto yy197; goto yy184; } -#line 818 "token.re" +#line 835 } @@ -2003,8 +1870,6 @@ ScalarBlock: ScalarBlock2: YYTOKEN = YYCURSOR; - -#line 1632 "" { YYCTYPE yych; unsigned int yyaccept; @@ -2069,8 +1934,8 @@ yy201: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy220; yy202: -#line 865 "token.re" -{ char *pacer; +#line 882 + { char *pacer; char *tok = YYTOKEN; int indt_len = 0, nl_count = 0, fold_nl = 0, nl_begin = 0; GOBBLE_UP_YAML_INDENT( indt_len, tok ); @@ -2139,21 +2004,17 @@ yy202: } goto ScalarBlock2; } -#line 1767 "" -yy203: ++YYCURSOR; - if((yych = *YYCURSOR) == '\n') goto yy219; - goto yy204; +yy203: yych = *++YYCURSOR; + if(yych == '\n') goto yy219; yy204: -#line 974 "token.re" -{ QUOTECAT(qstr, qcapa, qidx, *YYTOKEN); +#line 991 + { QUOTECAT(qstr, qcapa, qidx, *YYTOKEN); goto ScalarBlock2; } -#line 1776 "" -yy205: ++YYCURSOR; - goto yy206; +yy205: yych = *++YYCURSOR; yy206: -#line 936 "token.re" -{ lvl = CURRENT_LEVEL(); +#line 953 + { lvl = CURRENT_LEVEL(); if ( lvl->status != syck_lvl_block ) { eat_comments( parser ); @@ -2165,16 +2026,13 @@ yy206: } goto ScalarBlock2; } -#line 1793 "" -yy207: ++YYCURSOR; - goto yy208; +yy207: yych = *++YYCURSOR; yy208: -#line 950 "token.re" -{ YYCURSOR--; +#line 967 + { YYCURSOR--; POP_LEVEL(); RETURN_YAML_BLOCK(); } -#line 1802 "" yy209: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if(yych == '-') goto yy211; @@ -2183,7 +2041,6 @@ yy210: yych = *++YYCURSOR; goto yy204; yy211: yych = *++YYCURSOR; if(yych == '-') goto yy213; - goto yy212; yy212: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy202; @@ -2194,11 +2051,10 @@ yy213: yych = *++YYCURSOR; if(yych == '\n') goto yy214; if(yych == '\r') goto yy218; goto yy212; -yy214: ++YYCURSOR; - goto yy215; +yy214: yych = *++YYCURSOR; yy215: -#line 955 "token.re" -{ if ( YYTOKEN == YYLINEPTR ) +#line 972 + { if ( YYTOKEN == YYLINEPTR ) { if ( blockType == BLOCK_FOLD && qidx > 0 ) { @@ -2216,11 +2072,9 @@ yy215: goto ScalarBlock2; } } -#line 1844 "" yy216: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy217; yy217: if(yybm[0+yych] & 64) goto yy216; goto yy215; yy218: yych = *++YYCURSOR; @@ -2230,17 +2084,15 @@ yy219: yyaccept = 0; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy220; yy220: if(yybm[0+yych] & 128) goto yy219; if(yych != '\r') goto yy202; - goto yy221; yy221: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych == '\n') goto yy219; goto yy212; } -#line 979 "token.re" +#line 996 } @@ -2255,8 +2107,6 @@ Comment: { YYTOKEN = YYCURSOR; - -#line 1872 "" { YYCTYPE yych; unsigned int yyaccept; @@ -2307,47 +2157,39 @@ yy222: if(yych == '\r') goto yy227; goto yy229; } -yy224: ++YYCURSOR; - goto yy225; +yy224: yych = *++YYCURSOR; yy225: -#line 995 "token.re" -{ YYCURSOR = YYTOKEN; +#line 1012 + { YYCURSOR = YYTOKEN; return; } -#line 1930 "" yy226: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy231; -yy227: ++YYCURSOR; - if(yybm[0+(yych = *YYCURSOR)] & 128) yych = *YYCURSOR; - goto yy230; - goto yy228; +yy227: yych = *++YYCURSOR; + if(yybm[0+yych] & 128) goto yy230; yy228: -#line 999 "token.re" -{ goto Comment; +#line 1016 + { goto Comment; } -#line 1941 "" yy229: yych = *++YYCURSOR; goto yy228; yy230: yyaccept = 0; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - goto yy231; yy231: if(yybm[0+yych] & 128) goto yy230; if(yych != '\r') goto yy225; - goto yy232; yy232: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yybm[0+yych] & 128) goto yy230; - goto yy233; yy233: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy225; } } -#line 1002 "token.re" +#line 1019 } -- cgit v1.2.3