20 #define YYCURSOR parser->cursor
21 #define YYMARKER parser->marker
22 #define YYLIMIT parser->limit
23 #define YYTOKEN parser->token
24 #define YYTOKTMP parser->toktmp
25 #define YYLINEPTR parser->lineptr
26 #define YYLINECTPTR parser->linectptr
27 #define YYLINE parser->linect
28 #define YYFILL(n) syck_parser_read(parser)
38 #define YYPOS(n) YYCURSOR = YYTOKEN + n
43 #define CHK_NL(ptr) if ( *( ptr - 1 ) == '\n' && ptr > YYLINECTPTR ) { YYLINEPTR = ptr; YYLINE++; YYLINECTPTR = YYLINEPTR; }
48 #define ADD_LEVEL(len, status) syck_parser_add_level( parser, len, status )
49 #define POP_LEVEL() syck_parser_pop_level( parser )
50 #define CURRENT_LEVEL() syck_parser_current_level( parser )
55 #define FORCE_NEXT_TOKEN(tok) parser->force_token = tok;
61 #define ADD_BYTE_LEVEL(lvl, len, s ) \
62 switch ( lvl->status ) \
66 ADD_LEVEL(len, syck_lvl_open); \
88 #define ENSURE_YAML_IOPEN(last_lvl, lvl_type, to_len, reset) \
89 if ( last_lvl->spaces < to_len ) \
91 if ( last_lvl->status == syck_lvl_iseq || last_lvl->status == syck_lvl_imap ) \
97 ADD_LEVEL( to_len, lvl_type ); \
98 if ( reset == 1 ) YYPOS(0); \
107 #define ENSURE_YAML_IEND(last_lvl, to_len) \
108 if ( last_lvl->spaces > to_len ) \
110 syck_parser_pop_level( parser ); \
119 #define CAT(s, c, i, l) \
124 S_REALLOC_N( s, char, c ); \
137 syck_parser_ptr = parser;
150 #line 172 "bytecode.re"
167 unsigned int yyaccept = 0;
190 #line 199 "bytecode.re"
200 #line 186 "bytecode.re"
220 #line 203 "bytecode.re"
243 case 0x00:
goto yy30;
244 case 0x0A:
goto yy27;
245 case 0x0D:
goto yy29;
260 case 0x0A:
goto yy41;
261 case 0x0D:
goto yy44;
266 case 0x0A:
goto yy41;
267 case 0x0D:
goto yy43;
272 case 0x0A:
goto yy38;
273 case 0x0D:
goto yy40;
278 case 0x0A:
goto yy35;
279 case 0x0D:
goto yy37;
284 case 0x0A:
goto yy32;
285 case 0x0D:
goto yy34;
291 #line 288 "bytecode.re"
299 #line 292 "bytecode.re"
310 #line 299 "bytecode.re"
321 #line 306 "bytecode.re"
326 if ( qstr[0] ==
'!' )
328 size_t qidx =
strlen( qstr );
329 if ( qstr[1] ==
'\0' )
340 if ( qstr[1] ==
'^' )
343 sycklval->
name[0] =
'\0';
345 strncat( sycklval->
name, qstr + 2, qidx - 2 );
350 char *carat = qstr + 1;
351 char *qend = qstr + qidx;
352 while ( (++carat) < qend )
363 sycklval->
name[0] =
'\0';
365 strncat( sycklval->
name, carat + 1, ( qend - carat ) - 1 );
371 sycklval->
name[0] =
'\0';
378 sycklval->
name = qstr;
385 #line 366 "bytecode.re"
391 #line 368 "bytecode.re"
399 if ( lvl->
ncount % 2 == 1 )
return ':';
407 case 0x0A:
goto yy27;
413 #line 381 "bytecode.re"
422 #line 252 "bytecode.re"
446 if ( lvl->
ncount % 2 == 1 )
461 case 0x0A:
goto yy32;
467 #line 237 "bytecode.re"
485 case 0x0A:
goto yy35;
491 #line 222 "bytecode.re"
509 case 0x0A:
goto yy38;
515 #line 217 "bytecode.re"
523 case 0x0A:
goto yy41;
528 case 0x0A:
goto yy41;
532 #line 386 "bytecode.re"
545 unsigned int yyaccept = 0;
552 case 0x00:
goto yy47;
641 #line 399 "bytecode.re"
813 case 0x0A:
goto yy56;
814 case 0x0D:
goto yy58;
895 #line 396 "bytecode.re"
901 case 0x0A:
goto yy56;
905 #line 402 "bytecode.re"
924 case 0x00:
goto yy61;
925 case 0x0A:
goto yy62;
926 case 0x0D:
goto yy64;
932 #line 412 "bytecode.re"
938 case 0x0A:
goto yy67;
942 #line 415 "bytecode.re"
951 #line 417 "bytecode.re"
978 case 0x00:
goto yy74;
979 case 0x0A:
goto yy70;
980 case 0x0D:
goto yy72;
991 #line 461 "bytecode.re"
998 case 0x0A:
goto yy77;
1002 #line 469 "bytecode.re"
1003 {
CAT(str, cap, idx, tok[0]);
1006 #line 1007 "<stdout>"
1010 #line 465 "bytecode.re"
1014 #line 1015 "<stdout>"
1019 case 'C':
goto yy78;
1020 case 'N':
goto yy80;
1021 case 'Z':
goto yy83;
1027 #line 435 "bytecode.re"
1030 #line 1031 "<stdout>"
1045 case '9':
goto yy80;
1049 #line 438 "bytecode.re"
1053 char *
count = tok + 2;
1056 for ( i = 0; i < total; i++ )
1058 CAT(str, cap, idx,
'\n');
1063 CAT(str, cap, idx,
'\n');
1067 #line 1068 "<stdout>"
1071 #line 456 "bytecode.re"
1073 CAT(str, cap, idx,
'\0');
1076 #line 1077 "<stdout>"
1078 #line 473 "bytecode.re"
1113 #line 1114 "<stdout>"
1122 case 0x00:
goto yy91;
1123 case 0x0A:
goto yy87;
1124 case 0x0D:
goto yy89;
1130 #line 508 "bytecode.re"
1133 #line 1134 "<stdout>"
1136 case 0x0A:
goto yy94;
1140 #line 515 "bytecode.re"
1141 {
CAT(str, cap, idx, tok[0]);
1144 #line 1145 "<stdout>"
1148 #line 511 "bytecode.re"
1152 #line 1153 "<stdout>"
1159 #line 519 "bytecode.re"