summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwhy <why@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-10-14 23:15:19 +0000
committerwhy <why@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-10-14 23:15:19 +0000
commitc76c3349e4d5cfc3d1452d32491647294c102a8b (patch)
tree8e4ffb887b591097de3f8f5b080276bb62f7648c
parentb215f2fdb93fba83199168e50c28adc458844a26 (diff)
* ext/syck/bytecode.c: Checkin of YAML bytecode support.
* ext/syck/gram.c: Ditto. * ext/syck/syck.c: Ditto. * ext/syck/token.c: Ditto. * ext/syck/handler.c: Ditto. * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs. * ext/syck/rubyext.c: Ditto (on both counts). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog16
-rw-r--r--ext/syck/MANIFEST3
-rw-r--r--ext/syck/bytecode.c735
-rw-r--r--ext/syck/emitter.c2
-rw-r--r--ext/syck/gram.c552
-rw-r--r--ext/syck/gram.h36
-rw-r--r--ext/syck/handler.c4
-rw-r--r--ext/syck/implicit.c3223
-rw-r--r--ext/syck/rubyext.c42
-rw-r--r--ext/syck/syck.c12
-rw-r--r--ext/syck/syck.h18
-rw-r--r--ext/syck/token.c1633
12 files changed, 2629 insertions, 3647 deletions
diff --git a/ChangeLog b/ChangeLog
index 7b4e867..e42f7f6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+Wed Oct 15 08:09:07 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
+
+ * ext/syck/bytecode.c: Checkin of YAML bytecode support.
+
+ * ext/syck/gram.c: Ditto.
+
+ * ext/syck/syck.c: Ditto.
+
+ * ext/syck/token.c: Ditto.
+
+ * ext/syck/handler.c: Ditto.
+
+ * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
+
+ * ext/syck/rubyext.c: Ditto (on both counts).
+
Wed Oct 15 05:05:53 2003 Akinori MUSHA <knu@iDaemons.org>
* lib/generator.rb: A new library which converts an internal
diff --git a/ext/syck/MANIFEST b/ext/syck/MANIFEST
index 666e9c0..c7079e5 100644
--- a/ext/syck/MANIFEST
+++ b/ext/syck/MANIFEST
@@ -1,5 +1,7 @@
MANIFEST
extconf.rb
+bytecode.c
+emitter.c
gram.c
gram.h
handler.c
@@ -9,4 +11,3 @@ rubyext.c
syck.c
syck.h
token.c
-emitter.c
diff --git a/ext/syck/bytecode.c b/ext/syck/bytecode.c
new file mode 100644
index 0000000..efc9890
--- /dev/null
+++ b/ext/syck/bytecode.c
@@ -0,0 +1,735 @@
+/* Generated by re2c 0.5 on Tue Oct 14 15:44:30 2003 */
+#line 1 "bytecode.re"
+/*
+ * bytecode.re
+ *
+ * $Author$
+ * $Date$
+ *
+ * Copyright (C) 2003 why the lucky stiff
+ */
+#include "syck.h"
+#include "ruby.h"
+#include "gram.h"
+
+#define QUOTELEN 128
+
+/*
+ * They do my bidding...
+ */
+#define YYCTYPE char
+#define YYCURSOR parser->cursor
+#define YYMARKER parser->marker
+#define YYLIMIT parser->limit
+#define YYTOKEN parser->token
+#define YYTOKTMP parser->toktmp
+#define YYLINEPTR parser->lineptr
+#define YYLINECTPTR parser->linectptr
+#define YYLINE parser->linect
+#define YYFILL(n) syck_parser_read(parser)
+
+extern SyckParser *syck_parser_ptr;
+
+char *get_inline( SyckParser *parser );
+
+/*
+ * Repositions the cursor at `n' offset from the token start.
+ * Only works in `Header' and `Document' sections.
+ */
+#define YYPOS(n) YYCURSOR = YYTOKEN + n
+
+/*
+ * I like seeing the level operations as macros...
+ */
+#define ADD_LEVEL(len, status) syck_parser_add_level( parser, len, status )
+#define POP_LEVEL() syck_parser_pop_level( parser )
+#define CURRENT_LEVEL() syck_parser_current_level( parser )
+
+/*
+ * Force a token next time around sycklex()
+ */
+#define FORCE_NEXT_TOKEN(tok) parser->force_token = tok;
+
+/*
+ * Adding levels in bytecode requires us to make sure
+ * we've got all our tokens worked out.
+ */
+#define ADD_BYTE_LEVEL(lvl, len, s ) \
+ switch ( lvl->status ) \
+ { \
+ case syck_lvl_seq: \
+ lvl->ncount++; \
+ ADD_LEVEL(len, syck_lvl_open); \
+ YYPOS(0); \
+ return '-'; \
+ \
+ case syck_lvl_open: \
+ lvl->status = s; \
+ break; \
+ \
+ default: \
+ ADD_LEVEL(len, s); \
+ break; \
+ }
+
+/*
+ * Nice little macro to ensure we're YAML_IOPENed to the current level.
+ * * Only use this macro in the "Document" section *
+ */
+#define ENSURE_YAML_IOPEN(last_lvl, lvl_type, to_len, reset) \
+ if ( last_lvl->spaces < to_len ) \
+ { \
+ if ( last_lvl->status == syck_lvl_inline ) \
+ { \
+ goto Document; \
+ } \
+ else \
+ { \
+ ADD_LEVEL( to_len, lvl_type ); \
+ if ( reset == 1 ) YYPOS(0); \
+ return YAML_IOPEN; \
+ } \
+ }
+
+/*
+ * Nice little macro to ensure closure of levels.
+ * * Only use this macro in the "Document" section *
+ */
+#define ENSURE_YAML_IEND(last_lvl, to_len) \
+ if ( last_lvl->spaces > to_len ) \
+ { \
+ syck_parser_pop_level( parser ); \
+ YYPOS(0); \
+ return YAML_IEND; \
+ }
+
+/*
+ * Concatenates string items and manages allocation
+ * to the string
+ */
+#define CAT(s, c, i, l) \
+ { \
+ if ( i + 1 >= c ) \
+ { \
+ c += QUOTELEN; \
+ S_REALLOC_N( s, char, c ); \
+ } \
+ s[i++] = l; \
+ s[i] = '\0'; \
+ }
+
+/*
+ * Parser for standard YAML Bytecode [UTF-8]
+ */
+int
+sycklex_bytecode_utf8( YYSTYPE *sycklval, SyckParser *parser )
+{
+ SyckLevel *lvl;
+ int doc_level = 0;
+ syck_parser_ptr = parser;
+ if ( YYCURSOR == NULL )
+ {
+ syck_parser_read( parser );
+ }
+
+ if ( parser->force_token != 0 )
+ {
+ int t = parser->force_token;
+ parser->force_token = 0;
+ return t;
+ }
+
+#line 163
+
+
+ lvl = CURRENT_LEVEL();
+ if ( lvl->status == syck_lvl_doc )
+ {
+ goto Document;
+ }
+
+Header:
+
+ YYTOKEN = YYCURSOR;
+
+{
+ YYCTYPE yych;
+ unsigned int yyaccept;
+ goto yy0;
+yy1: ++YYCURSOR;
+yy0:
+ if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if(yych <= '\000') goto yy2;
+ if(yych == 'D') goto yy3;
+ goto yy5;
+yy2: YYCURSOR = YYMARKER;
+ switch(yyaccept){
+ case 0: goto yy4;
+ }
+yy3: yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if(yych == '\n') goto yy6;
+ if(yych == '\r') goto yy8;
+yy4:
+#line 189
+ { YYPOS(0);
+ goto Document;
+ }
+yy5: yych = *++YYCURSOR;
+ goto yy4;
+yy6: yych = *++YYCURSOR;
+yy7:
+#line 177
+ { if ( lvl->status == syck_lvl_header )
+ {
+ goto Directive;
+ }
+ else
+ {
+ ENSURE_YAML_IEND(lvl, -1);
+ YYPOS(0);
+ return 0;
+ }
+ }
+yy8: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy6;
+ goto yy2;
+}
+#line 193
+
+
+ lvl->status = syck_lvl_doc;
+
+Document:
+ {
+ lvl = CURRENT_LEVEL();
+ if ( lvl->status == syck_lvl_header )
+ {
+ lvl->status = syck_lvl_doc;
+ }
+
+ YYTOKEN = YYCURSOR;
+
+{
+ YYCTYPE yych;
+ unsigned int yyaccept;
+ goto yy9;
+yy10: ++YYCURSOR;
+yy9:
+ if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if(yych <= 'E'){
+ if(yych <= '\r'){
+ if(yych <= '\t'){
+ if(yych <= '\000') goto yy30;
+ } else {
+ if(yych <= '\n') goto yy27;
+ if(yych >= '\r') goto yy29;
+ }
+ } else {
+ if(yych <= 'A'){
+ if(yych >= 'A') goto yy19;
+ } else {
+ if(yych <= 'C') goto yy11;
+ if(yych <= 'D') goto yy12;
+ goto yy16;
+ }
+ }
+ } else {
+ if(yych <= 'Q'){
+ if(yych <= 'M'){
+ if(yych >= 'M') goto yy14;
+ } else {
+ if(yych <= 'O') goto yy11;
+ if(yych <= 'P') goto yy13;
+ goto yy15;
+ }
+ } else {
+ if(yych <= 'T'){
+ if(yych <= 'R') goto yy21;
+ if(yych <= 'S') goto yy17;
+ goto yy23;
+ } else {
+ if(yych == 'c') goto yy25;
+ }
+ }
+ }
+yy11:yy12: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy41;
+ if(yych == '\r') goto yy44;
+ goto yy11;
+yy13: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy41;
+ if(yych == '\r') goto yy43;
+ goto yy11;
+yy14: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy38;
+ if(yych == '\r') goto yy40;
+ goto yy11;
+yy15: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy35;
+ if(yych == '\r') goto yy37;
+ goto yy11;
+yy16: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy32;
+ if(yych == '\r') goto yy34;
+ goto yy11;
+yy17: yych = *++YYCURSOR;
+yy18:
+#line 243
+ { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str);
+ goto Scalar;
+ }
+yy19: yych = *++YYCURSOR;
+yy20:
+#line 247
+ { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_open);
+ sycklval->name = get_inline( parser );
+ syck_hdlr_remove_anchor( parser, sycklval->name );
+ return YAML_ANCHOR;
+ }
+yy21: yych = *++YYCURSOR;
+yy22:
+#line 253
+ { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_str);
+ sycklval->name = get_inline( parser );
+ POP_LEVEL();
+ if ( *( YYCURSOR - 1 ) == '\n' ) YYCURSOR--;
+ return YAML_ALIAS;
+ }
+yy23: yych = *++YYCURSOR;
+yy24:
+#line 260
+ { char *qstr = get_inline( parser );
+ if ( qstr[0] == '!' )
+ {
+ int qidx = strlen( qstr );
+ if ( qstr[1] == '\0' )
+ {
+ free( qstr );
+ return YAML_ITRANSFER;
+ }
+
+ lvl = CURRENT_LEVEL();
+
+ /*
+ * URL Prefixing
+ */
+ if ( qstr[1] == '^' )
+ {
+ sycklval->name = S_ALLOC_N( char, qidx + strlen( lvl->domain ) );
+ sycklval->name[0] = '\0';
+ strcat( sycklval->name, lvl->domain );
+ strncat( sycklval->name, qstr + 2, qidx - 2 );
+ free( qstr );
+ }
+ else
+ {
+ char *carat = qstr + 1;
+ char *qend = qstr + qidx;
+ while ( (++carat) < qend )
+ {
+ if ( *carat == '^' )
+ break;
+ }
+
+ if ( carat < qend )
+ {
+ free( lvl->domain );
+ lvl->domain = syck_strndup( qstr + 1, carat - ( qstr + 1 ) );
+ sycklval->name = S_ALLOC_N( char, ( qend - carat ) + strlen( lvl->domain ) );
+ sycklval->name[0] = '\0';
+ strcat( sycklval->name, lvl->domain );
+ strncat( sycklval->name, carat + 1, ( qend - carat ) - 1 );
+ free( qstr );
+ }
+ else
+ {
+ sycklval->name = S_ALLOC_N( char, strlen( qstr ) );
+ S_MEMCPY( sycklval->name, qstr + 1, char, strlen( qstr ) );
+ free( qstr );
+ }
+ }
+ return YAML_TRANSFER;
+ }
+ sycklval->name = qstr;
+ return YAML_TAGURI;
+ }
+yy25: yych = *++YYCURSOR;
+yy26:
+#line 316
+ { goto Comment; }
+yy27: yych = *++YYCURSOR;
+yy28:
+#line 318
+ { if ( lvl->status == syck_lvl_seq )
+ {
+ return YAML_INDENT;
+ }
+ else if ( lvl->status == syck_lvl_map )
+ {
+ lvl->ncount++;
+ if ( lvl->ncount % 2 == 1 ) return ':';
+ else return YAML_INDENT;
+ }
+ goto Document;
+ }
+yy29: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy27;
+ goto yy11;
+yy30: yych = *++YYCURSOR;
+yy31:
+#line 331
+ { ENSURE_YAML_IEND(lvl, -1);
+ YYPOS(0);
+ return 0;
+ }
+yy32: yych = *++YYCURSOR;
+yy33:
+#line 222
+ { POP_LEVEL();
+ lvl = CURRENT_LEVEL();
+ if ( lvl->status == syck_lvl_seq )
+ {
+ FORCE_NEXT_TOKEN(YAML_INDENT);
+ }
+ else if ( lvl->status == syck_lvl_map )
+ {
+ lvl->ncount++;
+ if ( lvl->ncount % 2 == 1 )
+ {
+ FORCE_NEXT_TOKEN(':');
+ }
+ else
+ {
+ FORCE_NEXT_TOKEN(YAML_INDENT);
+ }
+ }
+ return YAML_IEND;
+ }
+yy34: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy32;
+ goto yy11;
+yy35: yych = *++YYCURSOR;
+yy36:
+#line 218
+ { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_seq);
+ return YAML_IOPEN;
+ }
+yy37: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy35;
+ goto yy11;
+yy38: yych = *++YYCURSOR;
+yy39:
+#line 214
+ { ADD_BYTE_LEVEL(lvl, lvl->spaces + 1, syck_lvl_map);
+ return YAML_IOPEN;
+ }
+yy40: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy38;
+ goto yy11;
+yy41: yych = *++YYCURSOR;
+yy42:
+#line 209
+ { ENSURE_YAML_IEND(lvl, -1);
+ YYPOS(0);
+ return 0;
+ }
+yy43: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy41;
+ goto yy11;
+yy44: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy41;
+ goto yy11;
+}
+#line 336
+
+
+ }
+
+Directive:
+ {
+ YYTOKTMP = YYCURSOR;
+
+{
+ YYCTYPE yych;
+ unsigned int yyaccept;
+ goto yy45;
+yy46: ++YYCURSOR;
+yy45:
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if(yych <= '\000') goto yy47;
+ if(yych == 'V') goto yy48;
+ goto yy50;
+yy47: YYCURSOR = YYMARKER;
+ switch(yyaccept){
+ case 0: goto yy49;
+ }
+yy48: yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if(yych <= '-') goto yy49;
+ if(yych == '`') goto yy49;
+ if(yych <= 'z') goto yy51;
+yy49:
+#line 348
+ { YYCURSOR = YYTOKTMP;
+ return YAML_DOCSEP;
+ }
+yy50: yych = *++YYCURSOR;
+ goto yy49;
+yy51: ++YYCURSOR;
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy52: if(yych <= ':'){
+ if(yych <= '-') goto yy47;
+ if(yych <= '9') goto yy51;
+ } else {
+ if(yych == '`') goto yy47;
+ if(yych <= 'z') goto yy51;
+ goto yy47;
+ }
+yy53: yych = *++YYCURSOR;
+ if(yych <= '-') goto yy47;
+ if(yych == '`') goto yy47;
+ if(yych >= '{') goto yy47;
+yy54: ++YYCURSOR;
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy55: if(yych <= '\r'){
+ if(yych == '\n') goto yy56;
+ if(yych <= '\f') goto yy47;
+ goto yy58;
+ } else {
+ if(yych <= '_'){
+ if(yych <= '-') goto yy47;
+ goto yy54;
+ } else {
+ if(yych <= '`') goto yy47;
+ if(yych <= 'z') goto yy54;
+ goto yy47;
+ }
+ }
+yy56: yych = *++YYCURSOR;
+yy57:
+#line 346
+ { goto Directive; }
+yy58: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy56;
+ goto yy47;
+}
+#line 351
+
+
+ }
+
+Comment:
+ {
+ YYTOKTMP = YYCURSOR;
+
+{
+ YYCTYPE yych;
+ unsigned int yyaccept;
+ goto yy59;
+yy60: ++YYCURSOR;
+yy59:
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if(yych <= '\n'){
+ if(yych <= '\000') goto yy61;
+ if(yych <= '\t') goto yy66;
+ goto yy62;
+ } else {
+ if(yych == '\r') goto yy64;
+ goto yy66;
+ }
+yy61:yy62: yych = *++YYCURSOR;
+yy63:
+#line 361
+ { goto Document; }
+yy64: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy67;
+yy65:
+#line 363
+ { goto Comment; }
+yy66: yych = *++YYCURSOR;
+ goto yy65;
+yy67: yych = *++YYCURSOR;
+ goto yy63;
+}
+#line 365
+
+
+ }
+
+Scalar:
+ {
+ int idx = 0;
+ int cap = 100;
+ char *str = S_ALLOC_N( char, cap );
+ char *tok;
+
+Scalar2:
+ tok = YYCURSOR;
+
+{
+ YYCTYPE yych;
+ unsigned int yyaccept;
+ goto yy68;
+yy69: ++YYCURSOR;
+yy68:
+ if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if(yych <= '\n'){
+ if(yych <= '\000') goto yy74;
+ if(yych <= '\t') goto yy76;
+ } else {
+ if(yych == '\r') goto yy72;
+ goto yy76;
+ }
+yy70: yych = *++YYCURSOR;
+ if(yych <= 'M'){
+ if(yych == 'C') goto yy78;
+ } else {
+ if(yych <= 'N') goto yy80;
+ if(yych == 'Z') goto yy83;
+ }
+yy71:
+#line 404
+ { YYCURSOR = tok;
+ goto ScalarEnd;
+ }
+yy72: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy77;
+yy73:
+#line 412
+ { CAT(str, cap, idx, tok[0]);
+ goto Scalar2;
+ }
+yy74: yych = *++YYCURSOR;
+yy75:
+#line 408
+ { YYCURSOR = tok;
+ goto ScalarEnd;
+ }
+yy76: yych = *++YYCURSOR;
+ goto yy73;
+yy77: yych = *++YYCURSOR;
+ if(yych <= 'M'){
+ if(yych != 'C') goto yy71;
+ } else {
+ if(yych <= 'N') goto yy80;
+ if(yych == 'Z') goto yy83;
+ goto yy71;
+ }
+yy78: yych = *++YYCURSOR;
+yy79:
+#line 381
+ { goto Scalar2; }
+yy80: ++YYCURSOR;
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy81: if(yych <= '/') goto yy82;
+ if(yych <= '9') goto yy80;
+yy82:
+#line 383
+ { if ( tok + 2 < YYCURSOR )
+ {
+ char *count = tok + 2;
+ int total = strtod( count, NULL );
+ int i;
+ for ( i = 0; i < total; i++ )
+ {
+ CAT(str, cap, idx, '\n');
+ }
+ }
+ else
+ {
+ CAT(str, cap, idx, '\n');
+ }
+ goto Scalar2;
+ }
+yy83: yych = *++YYCURSOR;
+yy84:
+#line 400
+ { CAT(str, cap, idx, '\0');
+ goto Scalar2;
+ }
+}
+#line 416
+
+
+ScalarEnd:
+ {
+ SyckNode *n = syck_alloc_str();
+ n->data.str->ptr = str;
+ n->data.str->len = idx;
+ sycklval->nodeData = n;
+ POP_LEVEL();
+ if ( parser->implicit_typing == 1 )
+ {
+ try_tag_implicit( sycklval->nodeData, parser->taguri_expansion );
+ }
+ return YAML_PLAIN;
+ }
+ }
+
+}
+
+char *
+get_inline( SyckParser *parser )
+{
+ int idx = 0;
+ int cap = 100;
+ char *str = S_ALLOC_N( char, cap );
+ char *tok;
+
+Inline:
+ {
+ tok = YYCURSOR;
+
+{
+ YYCTYPE yych;
+ unsigned int yyaccept;
+ goto yy85;
+yy86: ++YYCURSOR;
+yy85:
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if(yych <= '\n'){
+ if(yych <= '\000') goto yy91;
+ if(yych <= '\t') goto yy93;
+ } else {
+ if(yych == '\r') goto yy89;
+ goto yy93;
+ }
+yy87: yych = *++YYCURSOR;
+yy88:
+#line 449
+ { return str; }
+yy89: yych = *++YYCURSOR;
+ if(yych == '\n') goto yy94;
+yy90:
+#line 455
+ { CAT(str, cap, idx, tok[0]);
+ goto Inline;
+ }
+yy91: yych = *++YYCURSOR;
+yy92:
+#line 451
+ { YYCURSOR = tok;
+ return str;
+ }
+yy93: yych = *++YYCURSOR;
+ goto yy90;
+yy94: yych = *++YYCURSOR;
+ goto yy88;
+}
+#line 459
+
+
+ }
+
+}
+
diff --git a/ext/syck/emitter.c b/ext/syck/emitter.c
index 2be1a68..62f1b57 100644
--- a/ext/syck/emitter.c
+++ b/ext/syck/emitter.c
@@ -102,7 +102,7 @@ syck_base64dec( char *s, long len )
}
}
*end = '\0';
- /* RSTRING(buf)->len = ptr - RSTRING(buf)->ptr; */
+ //RSTRING(buf)->len = ptr - RSTRING(buf)->ptr;
return ptr;
}
diff --git a/ext/syck/gram.c b/ext/syck/gram.c
index edc6da3..5bdd025 100644
--- a/ext/syck/gram.c
+++ b/ext/syck/gram.c
@@ -62,27 +62,29 @@
YAML_ANCHOR = 258,
YAML_ALIAS = 259,
YAML_TRANSFER = 260,
- YAML_ITRANSFER = 261,
- YAML_WORD = 262,
- YAML_PLAIN = 263,
- YAML_BLOCK = 264,
- YAML_DOCSEP = 265,
- YAML_IOPEN = 266,
- YAML_INDENT = 267,
- YAML_IEND = 268
+ YAML_TAGURI = 261,
+ YAML_ITRANSFER = 262,
+ YAML_WORD = 263,
+ YAML_PLAIN = 264,
+ YAML_BLOCK = 265,
+ YAML_DOCSEP = 266,
+ YAML_IOPEN = 267,
+ YAML_INDENT = 268,
+ YAML_IEND = 269
};
#endif
#define YAML_ANCHOR 258
#define YAML_ALIAS 259
#define YAML_TRANSFER 260
-#define YAML_ITRANSFER 261
-#define YAML_WORD 262
-#define YAML_PLAIN 263
-#define YAML_BLOCK 264
-#define YAML_DOCSEP 265
-#define YAML_IOPEN 266
-#define YAML_INDENT 267
-#define YAML_IEND 268
+#define YAML_TAGURI 261
+#define YAML_ITRANSFER 262
+#define YAML_WORD 263
+#define YAML_PLAIN 264
+#define YAML_BLOCK 265
+#define YAML_DOCSEP 266
+#define YAML_IOPEN 267
+#define YAML_INDENT 268
+#define YAML_IEND 269
@@ -119,7 +121,7 @@ typedef union {
char *name;
} yystype;
/* Line 193 of /usr/local/share/bison/yacc.c. */
-#line 123 "y.tab.c"
+#line 125 "y.tab.c"
# define YYSTYPE yystype
# define YYSTYPE_IS_TRIVIAL 1
#endif
@@ -141,7 +143,7 @@ int sycklex( YYSTYPE *, SyckParser * );
/* Line 213 of /usr/local/share/bison/yacc.c. */
-#line 144 "y.tab.c"
+#line 146 "y.tab.c"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
@@ -238,21 +240,21 @@ union yyalloc
#endif
/* YYFINAL -- State number of the termination state. */
-#define YYFINAL 35
-#define YYLAST 333
+#define YYFINAL 38
+#define YYLAST 414
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 23
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 25
/* YYNRULES -- Number of rules. */
-#define YYNRULES 63
+#define YYNRULES 69
/* YYNRULES -- Number of states. */
-#define YYNSTATES 106
+#define YYNSTATES 121
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 268
+#define YYMAXUTOK 269
#define YYTRANSLATE(X) \
((unsigned)(X) <= YYMAXUTOK ? yytranslate[X] : YYUNDEFTOK)
@@ -264,8 +266,8 @@ static const unsigned char yytranslate[] =
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 16, 21, 14, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 15, 2,
+ 2, 2, 2, 2, 21, 15, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 16, 2,
2, 2, 2, 22, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@@ -286,7 +288,7 @@ static const unsigned char yytranslate[] =
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
- 5, 6, 7, 8, 9, 10, 11, 12, 13
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
};
#if YYDEBUG
@@ -296,33 +298,35 @@ static const unsigned char yyprhs[] =
{
0, 0, 3, 5, 8, 9, 11, 13, 15, 18,
22, 26, 28, 31, 32, 34, 37, 39, 41, 43,
- 46, 49, 52, 55, 57, 59, 61, 64, 66, 68,
- 70, 72, 74, 78, 81, 83, 87, 90, 94, 97,
- 99, 103, 106, 110, 113, 115, 119, 123, 127, 131,
- 134, 138, 141, 145, 147, 153, 155, 159, 163, 166,
- 170, 174, 177, 179
+ 46, 49, 52, 55, 58, 60, 62, 64, 67, 70,
+ 72, 74, 76, 78, 80, 84, 87, 89, 93, 96,
+ 100, 103, 107, 110, 112, 116, 119, 123, 126, 128,
+ 132, 136, 140, 144, 147, 151, 154, 158, 161, 165,
+ 167, 173, 175, 179, 183, 186, 190, 194, 197, 199
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yysigned_char yyrhs[] =
{
- 24, 0, -1, 33, -1, 10, 27, -1, -1, 32,
+ 24, 0, -1, 33, -1, 11, 27, -1, -1, 32,
-1, 26, -1, 33, -1, 3, 26, -1, 28, 32,
31, -1, 28, 26, 31, -1, 25, -1, 28, 29,
- -1, -1, 11, -1, 28, 12, -1, 13, -1, 12,
- -1, 13, -1, 30, 31, -1, 5, 32, -1, 6,
- 32, -1, 3, 32, -1, 4, -1, 7, -1, 8,
- -1, 5, 33, -1, 9, -1, 34, -1, 38, -1,
- 40, -1, 46, -1, 28, 36, 29, -1, 14, 27,
- -1, 37, -1, 5, 30, 36, -1, 5, 36, -1,
- 3, 30, 36, -1, 3, 36, -1, 35, -1, 37,
- 30, 35, -1, 37, 30, -1, 17, 39, 18, -1,
- 17, 18, -1, 25, -1, 39, 21, 25, -1, 28,
- 41, 29, -1, 28, 44, 29, -1, 5, 30, 44,
- -1, 5, 41, -1, 3, 30, 44, -1, 3, 41,
- -1, 32, 15, 27, -1, 42, -1, 22, 25, 30,
- 15, 27, -1, 43, -1, 44, 30, 35, -1, 44,
- 30, 43, -1, 44, 30, -1, 25, 15, 27, -1,
+ -1, -1, 12, -1, 28, 13, -1, 14, -1, 13,
+ -1, 14, -1, 30, 31, -1, 5, 32, -1, 6,
+ 32, -1, 7, 32, -1, 3, 32, -1, 4, -1,
+ 8, -1, 9, -1, 5, 33, -1, 6, 33, -1,
+ 10, -1, 34, -1, 38, -1, 40, -1, 46, -1,
+ 28, 36, 29, -1, 15, 27, -1, 37, -1, 5,
+ 30, 36, -1, 5, 36, -1, 6, 30, 36, -1,
+ 6, 36, -1, 3, 30, 36, -1, 3, 36, -1,
+ 35, -1, 37, 30, 35, -1, 37, 30, -1, 17,
+ 39, 18, -1, 17, 18, -1, 25, -1, 39, 21,
+ 25, -1, 28, 41, 29, -1, 28, 44, 29, -1,
+ 5, 30, 44, -1, 5, 41, -1, 6, 30, 44,
+ -1, 6, 41, -1, 3, 30, 44, -1, 3, 41,
+ -1, 32, 16, 27, -1, 42, -1, 22, 25, 30,
+ 16, 27, -1, 43, -1, 44, 30, 35, -1, 44,
+ 30, 43, -1, 44, 30, -1, 25, 16, 27, -1,
19, 47, 20, -1, 19, 20, -1, 45, -1, 47,
21, 45, -1
};
@@ -332,11 +336,11 @@ static const unsigned short yyrline[] =
{
0, 44, 44, 48, 52, 58, 59, 62, 63, 72,
76, 82, 83, 96, 114, 115, 118, 121, 124, 125,
- 133, 138, 146, 150, 158, 171, 178, 183, 184, 185,
- 186, 187, 193, 199, 205, 206, 211, 216, 220, 226,
- 230, 235, 244, 248, 254, 258, 268, 273, 280, 285,
- 290, 294, 300, 315, 316, 324, 325, 337, 344, 353,
- 361, 365, 371, 372
+ 133, 138, 143, 151, 155, 163, 176, 183, 188, 193,
+ 194, 195, 196, 197, 203, 209, 215, 216, 221, 226,
+ 231, 236, 240, 246, 250, 255, 264, 268, 274, 278,
+ 288, 293, 300, 305, 310, 315, 320, 324, 330, 345,
+ 346, 354, 355, 367, 374, 383, 391, 395, 401, 402
};
#endif
@@ -346,9 +350,9 @@ static const unsigned short yyrline[] =
static const char *const yytname[] =
{
"$end", "error", "$undefined", "YAML_ANCHOR", "YAML_ALIAS",
- "YAML_TRANSFER", "YAML_ITRANSFER", "YAML_WORD", "YAML_PLAIN",
- "YAML_BLOCK", "YAML_DOCSEP", "YAML_IOPEN", "YAML_INDENT", "YAML_IEND",
- "'-'", "':'", "'+'", "'['", "']'", "'{'", "'}'", "','", "'?'",
+ "YAML_TRANSFER", "YAML_TAGURI", "YAML_ITRANSFER", "YAML_WORD",
+ "YAML_PLAIN", "YAML_BLOCK", "YAML_DOCSEP", "YAML_IOPEN", "YAML_INDENT",
+ "YAML_IEND", "'-'", "':'", "'['", "']'", "'{'", "'}'", "','", "'?'",
"$accept", "doc", "atom", "ind_rep", "atom_or_empty", "indent_open",
"indent_end", "indent_sep", "indent_flex_end", "word_rep", "struct_rep",
"implicit_seq", "basic_seq", "top_imp_seq", "in_implicit_seq",
@@ -364,7 +368,7 @@ static const char *const yytname[] =
static const unsigned short yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
- 265, 266, 267, 268, 45, 58, 43, 91, 93, 123,
+ 265, 266, 267, 268, 269, 45, 58, 91, 93, 123,
125, 44, 63
};
# endif
@@ -374,11 +378,11 @@ static const unsigned char yyr1[] =
{
0, 23, 24, 24, 24, 25, 25, 26, 26, 26,
26, 27, 27, 27, 28, 28, 29, 30, 31, 31,
- 32, 32, 32, 32, 32, 32, 33, 33, 33, 33,
- 33, 33, 34, 35, 36, 36, 36, 36, 36, 37,
- 37, 37, 38, 38, 39, 39, 40, 40, 41, 41,
- 41, 41, 42, 43, 43, 44, 44, 44, 44, 45,
- 46, 46, 47, 47
+ 32, 32, 32, 32, 32, 32, 32, 33, 33, 33,
+ 33, 33, 33, 33, 34, 35, 36, 36, 36, 36,
+ 36, 36, 36, 37, 37, 37, 38, 38, 39, 39,
+ 40, 40, 41, 41, 41, 41, 41, 41, 42, 43,
+ 43, 44, 44, 44, 44, 45, 46, 46, 47, 47
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
@@ -386,11 +390,11 @@ static const unsigned char yyr2[] =
{
0, 2, 1, 2, 0, 1, 1, 1, 2, 3,
3, 1, 2, 0, 1, 2, 1, 1, 1, 2,
- 2, 2, 2, 1, 1, 1, 2, 1, 1, 1,
- 1, 1, 3, 2, 1, 3, 2, 3, 2, 1,
- 3, 2, 3, 2, 1, 3, 3, 3, 3, 2,
- 3, 2, 3, 1, 5, 1, 3, 3, 2, 3,
- 3, 2, 1, 3
+ 2, 2, 2, 2, 1, 1, 1, 2, 2, 1,
+ 1, 1, 1, 1, 3, 2, 1, 3, 2, 3,
+ 2, 3, 2, 1, 3, 2, 3, 2, 1, 3,
+ 3, 3, 3, 2, 3, 2, 3, 2, 3, 1,
+ 5, 1, 3, 3, 2, 3, 3, 2, 1, 3
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -398,51 +402,55 @@ static const unsigned char yyr2[] =
means the default is an error. */
static const unsigned char yydefact[] =
{
- 4, 0, 27, 13, 14, 0, 0, 0, 0, 2,
- 28, 29, 30, 31, 26, 0, 23, 0, 0, 24,
- 25, 11, 6, 3, 0, 5, 7, 43, 44, 0,
- 0, 61, 0, 62, 0, 1, 0, 0, 15, 13,
- 0, 0, 39, 0, 34, 0, 53, 55, 0, 8,
- 22, 0, 20, 0, 21, 0, 0, 16, 0, 12,
- 0, 42, 0, 13, 60, 0, 17, 0, 38, 51,
- 0, 36, 49, 33, 0, 13, 32, 41, 46, 47,
- 58, 18, 0, 10, 9, 45, 59, 63, 0, 0,
- 37, 50, 35, 48, 0, 52, 40, 56, 57, 19,
- 0, 0, 13, 0, 0, 54
+ 4, 0, 0, 29, 13, 14, 0, 0, 0, 0,
+ 2, 30, 31, 32, 33, 27, 28, 0, 24, 0,
+ 0, 0, 25, 26, 11, 6, 3, 0, 5, 7,
+ 47, 48, 0, 0, 67, 0, 68, 0, 1, 0,
+ 0, 0, 15, 13, 0, 0, 43, 0, 36, 0,
+ 59, 61, 0, 8, 23, 0, 20, 21, 0, 0,
+ 22, 0, 0, 0, 16, 0, 12, 0, 46, 0,
+ 13, 66, 0, 17, 0, 42, 57, 0, 38, 53,
+ 0, 40, 55, 35, 0, 13, 34, 45, 50, 51,
+ 64, 18, 0, 10, 9, 49, 65, 69, 0, 0,
+ 0, 41, 56, 37, 52, 39, 54, 0, 58, 44,
+ 62, 63, 19, 0, 0, 0, 13, 0, 0, 0,
+ 60
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yysigned_char yydefgoto[] =
{
- -1, 7, 21, 22, 23, 29, 59, 80, 83, 25,
- 26, 10, 42, 68, 44, 11, 30, 12, 45, 46,
- 47, 48, 33, 13, 34
+ -1, 8, 24, 25, 26, 32, 66, 90, 93, 28,
+ 29, 11, 46, 75, 48, 12, 33, 13, 49, 50,
+ 51, 52, 36, 14, 37
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -54
+#define YYPACT_NINF -68
static const short yypact[] =
{
- 267, 278, -54, 245, -54, 228, 176, 8, 140, -54,
- -54, -54, -54, -54, -54, 245, -54, 262, 325, -54,
- -54, -54, -54, -54, 100, -54, -54, -54, -54, 120,
- 48, -54, -5, -54, 52, -54, 295, 295, -54, 245,
- 245, -3, -54, 13, 9, 13, -54, -54, 76, -54,
- -54, 325, -54, 325, -54, 194, 211, -54, 108, -54,
- 103, -54, 245, 245, -54, 245, -54, 152, -54, -54,
- 152, -54, -54, -54, 9, 245, -54, 24, -54, -54,
- 164, -54, 108, -54, -54, -54, -54, -54, 307, 307,
- -54, 9, -54, 9, 32, -54, -54, -54, -54, -54,
- 6, 6, 245, 313, 313, -54
+ 133, 177, 177, -68, 352, -68, 335, 283, 27, 223,
+ -68, -68, -68, -68, -68, -68, -68, 352, -68, 369,
+ 369, 97, -68, -68, -68, -68, -68, 154, -68, -68,
+ -68, -68, 203, -12, -68, 17, -68, 46, -68, 386,
+ 386, 386, -68, 352, 352, 25, -68, 30, 33, 30,
+ -68, -68, 67, -68, -68, 97, -68, -68, 97, 97,
+ -68, 301, 318, 318, -68, 107, -68, 37, -68, 352,
+ 352, -68, 352, -68, 243, -68, -68, 243, -68, -68,
+ 243, -68, -68, -68, 33, 352, -68, 40, -68, -68,
+ 263, -68, 107, -68, -68, -68, -68, -68, 399, 399,
+ 399, -68, 33, -68, 33, -68, 33, 42, -68, -68,
+ -68, -68, -68, 84, 84, 84, 352, 9, 9, 9,
+ -68
};
/* YYPGOTO[NTERM-NUM]. */
static const yysigned_char yypgoto[] =
{
- -54, -54, 31, -10, -35, 0, 12, -12, -53, -2,
- 41, -54, -47, -6, -54, -54, -54, -54, 44, -54,
- -28, 15, 14, -54, -54
+ -68, -68, 10, -9, -38, 0, -7, 86, -56, 56,
+ 29, -68, -62, -6, -68, -68, -68, -68, -2, -68,
+ -26, -67, -3, -68, -68
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
@@ -452,95 +460,113 @@ static const yysigned_char yypgoto[] =
#define YYTABLE_NINF -1
static const unsigned char yytable[] =
{
- 8, 8, 43, 24, 73, 49, 41, 84, 35, 103,
- 63, 104, 75, 50, 58, 52, 54, 8, 43, 58,
- 39, 66, 60, 43, 67, 70, 57, 60, 86, 99,
- 96, 71, 77, 97, 50, 52, 28, 32, 39, 24,
- 95, 9, 14, 67, 70, 49, 82, 102, 82, 50,
- 71, 52, 98, 50, 52, 76, 8, 78, 14, 0,
- 79, 90, 94, 24, 92, 41, 61, 105, 41, 62,
- 82, 74, 64, 65, 0, 24, 100, 101, 41, 87,
- 69, 72, 91, 71, 0, 93, 50, 52, 66, 57,
- 0, 100, 101, 85, 90, 92, 32, 14, 71, 69,
- 72, 0, 24, 55, 16, 56, 18, 19, 20, 2,
- 0, 4, 38, 57, 39, 66, 81, 5, 75, 6,
- 66, 81, 40, 55, 16, 56, 18, 19, 20, 2,
- 0, 4, 38, 0, 39, 0, 0, 5, 0, 6,
- 0, 0, 40, 36, 16, 37, 18, 19, 20, 0,
- 0, 0, 38, 0, 39, 88, 16, 89, 18, 19,
- 20, 0, 40, 0, 0, 0, 39, 51, 16, 53,
- 18, 19, 20, 0, 40, 0, 0, 0, 39, 15,
- 16, 17, 18, 19, 20, 2, 40, 4, 0, 0,
- 0, 0, 0, 5, 0, 6, 31, 55, 16, 56,
- 18, 19, 20, 2, 0, 4, 66, 0, 39, 0,
- 0, 5, 0, 6, 36, 16, 56, 18, 19, 20,
- 2, 0, 4, 66, 0, 39, 0, 0, 5, 0,
- 6, 15, 16, 17, 18, 19, 20, 2, 0, 4,
- 0, 0, 0, 0, 0, 5, 27, 6, 15, 16,
- 17, 18, 19, 20, 2, 0, 4, 0, 0, 0,
- 0, 0, 5, 0, 6, 51, 16, 17, 18, 19,
- 20, 2, 1, 4, 0, 0, 2, 3, 4, 5,
- 0, 6, 0, 1, 5, 0, 6, 2, 0, 4,
- 0, 0, 0, 0, 0, 5, 0, 6, 36, 16,
- 37, 18, 19, 20, 0, 0, 0, 66, 0, 39,
- 88, 16, 89, 18, 19, 20, 103, 0, 104, 66,
- 0, 39, 0, 0, 0, 66, 0, 39, 51, 16,
- 53, 18, 19, 20
+ 9, 9, 9, 47, 27, 83, 68, 102, 53, 69,
+ 104, 94, 117, 106, 118, 119, 31, 35, 65, 9,
+ 9, 47, 73, 65, 43, 109, 47, 38, 110, 10,
+ 15, 16, 96, 70, 78, 81, 112, 76, 79, 82,
+ 86, 85, 88, 27, 64, 89, 73, 108, 15, 16,
+ 73, 91, 53, 85, 84, 43, 78, 81, 116, 76,
+ 79, 82, 9, 9, 111, 45, 71, 72, 101, 97,
+ 27, 103, 0, 54, 105, 56, 57, 60, 120, 95,
+ 73, 64, 35, 67, 0, 27, 0, 117, 67, 118,
+ 119, 15, 16, 78, 81, 54, 56, 57, 0, 43,
+ 55, 18, 58, 59, 21, 22, 23, 101, 103, 105,
+ 0, 54, 78, 81, 56, 57, 27, 54, 56, 57,
+ 73, 91, 0, 0, 0, 74, 77, 80, 0, 0,
+ 45, 0, 0, 45, 87, 0, 45, 0, 1, 2,
+ 0, 0, 0, 3, 4, 5, 45, 74, 77, 80,
+ 6, 92, 7, 92, 54, 56, 57, 61, 18, 62,
+ 63, 21, 22, 23, 3, 0, 5, 42, 64, 43,
+ 107, 6, 0, 7, 0, 0, 44, 0, 92, 0,
+ 0, 0, 1, 2, 113, 114, 115, 3, 0, 5,
+ 0, 0, 0, 0, 6, 0, 7, 0, 0, 0,
+ 0, 0, 0, 113, 114, 115, 61, 18, 62, 63,
+ 21, 22, 23, 3, 0, 5, 42, 0, 43, 0,
+ 6, 0, 7, 0, 0, 44, 39, 18, 40, 41,
+ 21, 22, 23, 0, 0, 0, 42, 0, 43, 0,
+ 0, 0, 0, 0, 0, 44, 98, 18, 99, 100,
+ 21, 22, 23, 0, 0, 0, 0, 0, 43, 0,
+ 0, 0, 0, 0, 0, 44, 55, 18, 58, 59,
+ 21, 22, 23, 0, 0, 0, 0, 0, 43, 0,
+ 0, 0, 0, 0, 0, 44, 17, 18, 19, 20,
+ 21, 22, 23, 3, 0, 5, 0, 0, 0, 0,
+ 6, 0, 7, 34, 61, 18, 62, 63, 21, 22,
+ 23, 3, 0, 5, 73, 0, 43, 0, 6, 0,
+ 7, 39, 18, 62, 63, 21, 22, 23, 3, 0,
+ 5, 73, 0, 43, 0, 6, 0, 7, 17, 18,
+ 19, 20, 21, 22, 23, 3, 0, 5, 0, 0,
+ 0, 0, 6, 30, 7, 17, 18, 19, 20, 21,
+ 22, 23, 3, 0, 5, 0, 0, 0, 0, 6,
+ 0, 7, 55, 18, 19, 20, 21, 22, 23, 3,
+ 0, 5, 0, 0, 0, 0, 6, 0, 7, 39,
+ 18, 40, 41, 21, 22, 23, 0, 0, 0, 73,
+ 0, 43, 98, 18, 99, 100, 21, 22, 23, 0,
+ 0, 0, 73, 0, 43
};
static const yysigned_char yycheck[] =
{
- 0, 1, 8, 3, 39, 15, 8, 60, 0, 3,
- 15, 5, 15, 15, 24, 17, 18, 17, 24, 29,
- 14, 12, 24, 29, 36, 37, 13, 29, 63, 82,
- 77, 37, 44, 80, 36, 37, 5, 6, 14, 39,
- 75, 0, 1, 55, 56, 55, 58, 15, 60, 51,
- 56, 53, 80, 55, 56, 43, 56, 45, 17, -1,
- 48, 67, 74, 63, 70, 67, 18, 102, 70, 21,
- 82, 40, 20, 21, -1, 75, 88, 89, 80, 65,
- 36, 37, 67, 89, -1, 70, 88, 89, 12, 13,
- -1, 103, 104, 62, 100, 101, 65, 56, 104, 55,
- 56, -1, 102, 3, 4, 5, 6, 7, 8, 9,
- -1, 11, 12, 13, 14, 12, 13, 17, 15, 19,
- 12, 13, 22, 3, 4, 5, 6, 7, 8, 9,
- -1, 11, 12, -1, 14, -1, -1, 17, -1, 19,
- -1, -1, 22, 3, 4, 5, 6, 7, 8, -1,
- -1, -1, 12, -1, 14, 3, 4, 5, 6, 7,
- 8, -1, 22, -1, -1, -1, 14, 3, 4, 5,
- 6, 7, 8, -1, 22, -1, -1, -1, 14, 3,
- 4, 5, 6, 7, 8, 9, 22, 11, -1, -1,
- -1, -1, -1, 17, -1, 19, 20, 3, 4, 5,
- 6, 7, 8, 9, -1, 11, 12, -1, 14, -1,
- -1, 17, -1, 19, 3, 4, 5, 6, 7, 8,
- 9, -1, 11, 12, -1, 14, -1, -1, 17, -1,
- 19, 3, 4, 5, 6, 7, 8, 9, -1, 11,
- -1, -1, -1, -1, -1, 17, 18, 19, 3, 4,
- 5, 6, 7, 8, 9, -1, 11, -1, -1, -1,
- -1, -1, 17, -1, 19, 3, 4, 5, 6, 7,
- 8, 9, 5, 11, -1, -1, 9, 10, 11, 17,
- -1, 19, -1, 5, 17, -1, 19, 9, -1, 11,
- -1, -1, -1, -1, -1, 17, -1, 19, 3, 4,
- 5, 6, 7, 8, -1, -1, -1, 12, -1, 14,
- 3, 4, 5, 6, 7, 8, 3, -1, 5, 12,
- -1, 14, -1, -1, -1, 12, -1, 14, 3, 4,
- 5, 6, 7, 8
+ 0, 1, 2, 9, 4, 43, 18, 74, 17, 21,
+ 77, 67, 3, 80, 5, 6, 6, 7, 27, 19,
+ 20, 27, 13, 32, 15, 87, 32, 0, 90, 0,
+ 1, 2, 70, 16, 40, 41, 92, 39, 40, 41,
+ 47, 16, 49, 43, 14, 52, 13, 85, 19, 20,
+ 13, 14, 61, 16, 44, 15, 62, 63, 16, 61,
+ 62, 63, 62, 63, 90, 9, 20, 21, 74, 72,
+ 70, 77, -1, 17, 80, 19, 20, 21, 116, 69,
+ 13, 14, 72, 27, -1, 85, -1, 3, 32, 5,
+ 6, 62, 63, 99, 100, 39, 40, 41, -1, 15,
+ 3, 4, 5, 6, 7, 8, 9, 113, 114, 115,
+ -1, 55, 118, 119, 58, 59, 116, 61, 62, 63,
+ 13, 14, -1, -1, -1, 39, 40, 41, -1, -1,
+ 74, -1, -1, 77, 48, -1, 80, -1, 5, 6,
+ -1, -1, -1, 10, 11, 12, 90, 61, 62, 63,
+ 17, 65, 19, 67, 98, 99, 100, 3, 4, 5,
+ 6, 7, 8, 9, 10, -1, 12, 13, 14, 15,
+ 84, 17, -1, 19, -1, -1, 22, -1, 92, -1,
+ -1, -1, 5, 6, 98, 99, 100, 10, -1, 12,
+ -1, -1, -1, -1, 17, -1, 19, -1, -1, -1,
+ -1, -1, -1, 117, 118, 119, 3, 4, 5, 6,
+ 7, 8, 9, 10, -1, 12, 13, -1, 15, -1,
+ 17, -1, 19, -1, -1, 22, 3, 4, 5, 6,
+ 7, 8, 9, -1, -1, -1, 13, -1, 15, -1,
+ -1, -1, -1, -1, -1, 22, 3, 4, 5, 6,
+ 7, 8, 9, -1, -1, -1, -1, -1, 15, -1,
+ -1, -1, -1, -1, -1, 22, 3, 4, 5, 6,
+ 7, 8, 9, -1, -1, -1, -1, -1, 15, -1,
+ -1, -1, -1, -1, -1, 22, 3, 4, 5, 6,
+ 7, 8, 9, 10, -1, 12, -1, -1, -1, -1,
+ 17, -1, 19, 20, 3, 4, 5, 6, 7, 8,
+ 9, 10, -1, 12, 13, -1, 15, -1, 17, -1,
+ 19, 3, 4, 5, 6, 7, 8, 9, 10, -1,
+ 12, 13, -1, 15, -1, 17, -1, 19, 3, 4,
+ 5, 6, 7, 8, 9, 10, -1, 12, -1, -1,
+ -1, -1, 17, 18, 19, 3, 4, 5, 6, 7,
+ 8, 9, 10, -1, 12, -1, -1, -1, -1, 17,
+ -1, 19, 3, 4, 5, 6, 7, 8, 9, 10,
+ -1, 12, -1, -1, -1, -1, 17, -1, 19, 3,
+ 4, 5, 6, 7, 8, 9, -1, -1, -1, 13,
+ -1, 15, 3, 4, 5, 6, 7, 8, 9, -1,
+ -1, -1, 13, -1, 15
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const unsigned char yystos[] =
{
- 0, 5, 9, 10, 11, 17, 19, 24, 28, 33,
- 34, 38, 40, 46, 33, 3, 4, 5, 6, 7,
- 8, 25, 26, 27, 28, 32, 33, 18, 25, 28,
- 39, 20, 25, 45, 47, 0, 3, 5, 12, 14,
- 22, 32, 35, 36, 37, 41, 42, 43, 44, 26,
- 32, 3, 32, 5, 32, 3, 5, 13, 26, 29,
- 32, 18, 21, 15, 20, 21, 12, 30, 36, 41,
- 30, 36, 41, 27, 25, 15, 29, 30, 29, 29,
- 30, 13, 30, 31, 31, 25, 27, 45, 3, 5,
- 36, 44, 36, 44, 30, 27, 35, 35, 43, 31,
- 30, 30, 15, 3, 5, 27
+ 0, 5, 6, 10, 11, 12, 17, 19, 24, 28,
+ 33, 34, 38, 40, 46, 33, 33, 3, 4, 5,
+ 6, 7, 8, 9, 25, 26, 27, 28, 32, 33,
+ 18, 25, 28, 39, 20, 25, 45, 47, 0, 3,
+ 5, 6, 13, 15, 22, 32, 35, 36, 37, 41,
+ 42, 43, 44, 26, 32, 3, 32, 32, 5, 6,
+ 32, 3, 5, 6, 14, 26, 29, 32, 18, 21,
+ 16, 20, 21, 13, 30, 36, 41, 30, 36, 41,
+ 30, 36, 41, 27, 25, 16, 29, 30, 29, 29,
+ 30, 14, 30, 31, 31, 25, 27, 45, 3, 5,
+ 6, 36, 44, 36, 44, 36, 44, 30, 27, 35,
+ 35, 43, 31, 30, 30, 30, 16, 3, 5, 6,
+ 27
};
#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
@@ -1184,6 +1210,14 @@ yyreduce:
case 21:
#line 139 "gram.y"
{
+ syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, 0 );
+ yyval.nodeData = yyvsp[0].nodeData;
+ }
+ break;
+
+ case 22:
+#line 144 "gram.y"
+ {
if ( ((SyckParser *)parser)->implicit_typing == 1 )
{
try_tag_implicit( yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion );
@@ -1192,15 +1226,15 @@ yyreduce:
}
break;
- case 22:
-#line 147 "gram.y"
+ case 23:
+#line 152 "gram.y"
{
yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData );
}
break;
- case 23:
-#line 151 "gram.y"
+ case 24:
+#line 156 "gram.y"
{
/*
* _Aliases_: The anchor symbol table is scanned for the anchor name.
@@ -1210,8 +1244,8 @@ yyreduce:
}
break;
- case 24:
-#line 159 "gram.y"
+ case 25:
+#line 164 "gram.y"
{
SyckNode *n = yyvsp[0].nodeData;
if ( ((SyckParser *)parser)->taguri_expansion == 1 )
@@ -1226,157 +1260,197 @@ yyreduce:
}
break;
- case 26:
-#line 179 "gram.y"
+ case 27:
+#line 184 "gram.y"
{
syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion );
yyval.nodeData = yyvsp[0].nodeData;
}
break;
- case 32:
-#line 194 "gram.y"
+ case 28:
+#line 189 "gram.y"
+ {
+ syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, 0 );
+ yyval.nodeData = yyvsp[0].nodeData;
+ }
+ break;
+
+ case 34:
+#line 204 "gram.y"
{
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 33:
-#line 200 "gram.y"
+ case 35:
+#line 210 "gram.y"
{
yyval.nodeId = syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData );
}
break;
- case 35:
-#line 207 "gram.y"
+ case 37:
+#line 217 "gram.y"
{
syck_add_transfer( yyvsp[-2].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion );
yyval.nodeData = yyvsp[0].nodeData;
}
break;
- case 36:
-#line 212 "gram.y"
+ case 38:
+#line 222 "gram.y"
{
syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion );
yyval.nodeData = yyvsp[0].nodeData;
}
break;
- case 37:
-#line 217 "gram.y"
+ case 39:
+#line 227 "gram.y"
+ {
+ syck_add_transfer( yyvsp[-2].name, yyvsp[0].nodeData, 0 );
+ yyval.nodeData = yyvsp[0].nodeData;
+ }
+ break;
+
+ case 40:
+#line 232 "gram.y"
+ {
+ syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, 0 );
+ yyval.nodeData = yyvsp[0].nodeData;
+ }
+ break;
+
+ case 41:
+#line 237 "gram.y"
{
yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-2].name, yyvsp[0].nodeData );
}
break;
- case 38:
-#line 221 "gram.y"
+ case 42:
+#line 241 "gram.y"
{
yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData );
}
break;
- case 39:
-#line 227 "gram.y"
+ case 43:
+#line 247 "gram.y"
{
yyval.nodeData = syck_new_seq( yyvsp[0].nodeId );
}
break;
- case 40:
-#line 231 "gram.y"
+ case 44:
+#line 251 "gram.y"
{
syck_seq_add( yyvsp[-2].nodeData, yyvsp[0].nodeId );
yyval.nodeData = yyvsp[-2].nodeData;
}
break;
- case 41:
-#line 236 "gram.y"
+ case 45:
+#line 256 "gram.y"
{
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 42:
-#line 245 "gram.y"
+ case 46:
+#line 265 "gram.y"
{
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 43:
-#line 249 "gram.y"
+ case 47:
+#line 269 "gram.y"
{
yyval.nodeData = syck_alloc_seq();
}
break;
- case 44:
-#line 255 "gram.y"
+ case 48:
+#line 275 "gram.y"
{
yyval.nodeData = syck_new_seq( syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ) );
}
break;
- case 45:
-#line 259 "gram.y"
+ case 49:
+#line 279 "gram.y"
{
syck_seq_add( yyvsp[-2].nodeData, syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ) );
yyval.nodeData = yyvsp[-2].nodeData;
}
break;
- case 46:
-#line 269 "gram.y"
+ case 50:
+#line 289 "gram.y"
{
apply_seq_in_map( (SyckParser *)parser, yyvsp[-1].nodeData );
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 47:
-#line 274 "gram.y"
+ case 51:
+#line 294 "gram.y"
{
apply_seq_in_map( (SyckParser *)parser, yyvsp[-1].nodeData );
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 48:
-#line 281 "gram.y"
+ case 52:
+#line 301 "gram.y"
{
syck_add_transfer( yyvsp[-2].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion );
yyval.nodeData = yyvsp[0].nodeData;
}
break;
- case 49:
-#line 286 "gram.y"
+ case 53:
+#line 306 "gram.y"
{
syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion );
yyval.nodeData = yyvsp[0].nodeData;
}
break;
- case 50:
-#line 291 "gram.y"
+ case 54:
+#line 311 "gram.y"
+ {
+ syck_add_transfer( yyvsp[-2].name, yyvsp[0].nodeData, 0 );
+ yyval.nodeData = yyvsp[0].nodeData;
+ }
+ break;
+
+ case 55:
+#line 316 "gram.y"
+ {
+ syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, 0 );
+ yyval.nodeData = yyvsp[0].nodeData;
+ }
+ break;
+
+ case 56:
+#line 321 "gram.y"
{
yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-2].name, yyvsp[0].nodeData );
}
break;
- case 51:
-#line 295 "gram.y"
+ case 57:
+#line 325 "gram.y"
{
yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData );
}
break;
- case 52:
-#line 301 "gram.y"
+ case 58:
+#line 331 "gram.y"
{
yyval.nodeData = syck_new_map(
syck_hdlr_add_node( (SyckParser *)parser, yyvsp[-2].nodeData ),
@@ -1384,8 +1458,8 @@ yyreduce:
}
break;
- case 54:
-#line 317 "gram.y"
+ case 60:
+#line 347 "gram.y"
{
yyval.nodeData = syck_new_map(
syck_hdlr_add_node( (SyckParser *)parser, yyvsp[-3].nodeData ),
@@ -1393,8 +1467,8 @@ yyreduce:
}
break;
- case 56:
-#line 326 "gram.y"
+ case 62:
+#line 356 "gram.y"
{
if ( yyvsp[-2].nodeData->shortcut == NULL )
{
@@ -1408,8 +1482,8 @@ yyreduce:
}
break;
- case 57:
-#line 338 "gram.y"
+ case 63:
+#line 368 "gram.y"
{
apply_seq_in_map( (SyckParser *)parser, yyvsp[-2].nodeData );
syck_map_update( yyvsp[-2].nodeData, yyvsp[0].nodeData );
@@ -1418,15 +1492,15 @@ yyreduce:
}
break;
- case 58:
-#line 345 "gram.y"
+ case 64:
+#line 375 "gram.y"
{
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 59:
-#line 354 "gram.y"
+ case 65:
+#line 384 "gram.y"
{
yyval.nodeData = syck_new_map(
syck_hdlr_add_node( (SyckParser *)parser, yyvsp[-2].nodeData ),
@@ -1434,22 +1508,22 @@ yyreduce:
}
break;
- case 60:
-#line 362 "gram.y"
+ case 66:
+#line 392 "gram.y"
{
yyval.nodeData = yyvsp[-1].nodeData;
}
break;
- case 61:
-#line 366 "gram.y"
+ case 67:
+#line 396 "gram.y"
{
yyval.nodeData = syck_alloc_map();
}
break;
- case 63:
-#line 373 "gram.y"
+ case 69:
+#line 403 "gram.y"
{
syck_map_update( yyvsp[-2].nodeData, yyvsp[0].nodeData );
syck_free_node( yyvsp[0].nodeData );
@@ -1461,7 +1535,7 @@ yyreduce:
}
/* Line 1016 of /usr/local/share/bison/yacc.c. */
-#line 1464 "y.tab.c"
+#line 1538 "y.tab.c"
yyvsp -= yylen;
yyssp -= yylen;
@@ -1680,7 +1754,7 @@ yyreturn:
}
-#line 380 "gram.y"
+#line 410 "gram.y"
void
diff --git a/ext/syck/gram.h b/ext/syck/gram.h
index f21796a..d1e577b 100644
--- a/ext/syck/gram.h
+++ b/ext/syck/gram.h
@@ -35,27 +35,29 @@
YAML_ANCHOR = 258,
YAML_ALIAS = 259,
YAML_TRANSFER = 260,
- YAML_ITRANSFER = 261,
- YAML_WORD = 262,
- YAML_PLAIN = 263,
- YAML_BLOCK = 264,
- YAML_DOCSEP = 265,
- YAML_IOPEN = 266,
- YAML_INDENT = 267,
- YAML_IEND = 268
+ YAML_TAGURI = 261,
+ YAML_ITRANSFER = 262,
+ YAML_WORD = 263,
+ YAML_PLAIN = 264,
+ YAML_BLOCK = 265,
+ YAML_DOCSEP = 266,
+ YAML_IOPEN = 267,
+ YAML_INDENT = 268,
+ YAML_IEND = 269
};
#endif
#define YAML_ANCHOR 258
#define YAML_ALIAS 259
#define YAML_TRANSFER 260
-#define YAML_ITRANSFER 261
-#define YAML_WORD 262
-#define YAML_PLAIN 263
-#define YAML_BLOCK 264
-#define YAML_DOCSEP 265
-#define YAML_IOPEN 266
-#define YAML_INDENT 267
-#define YAML_IEND 268
+#define YAML_TAGURI 261
+#define YAML_ITRANSFER 262
+#define YAML_WORD 263
+#define YAML_PLAIN 264
+#define YAML_BLOCK 265
+#define YAML_DOCSEP 266
+#define YAML_IOPEN 267
+#define YAML_INDENT 268
+#define YAML_IEND 269
@@ -68,7 +70,7 @@ typedef union {
char *name;
} yystype;
/* Line 1281 of /usr/local/share/bison/yacc.c. */
-#line 72 "y.tab.h"
+#line 74 "y.tab.h"
# define YYSTYPE yystype
#endif
diff --git a/ext/syck/handler.c b/ext/syck/handler.c
index ca15fd0..eddc646 100644
--- a/ext/syck/handler.c
+++ b/ext/syck/handler.c
@@ -99,7 +99,7 @@ syck_hdlr_get_anchor( SyckParser *p, char *a )
if ( n->anchor )
{
S_FREE( a );
- }
+ }
else
{
n->anchor = a;
@@ -141,7 +141,7 @@ syck_taguri( char *domain, char *type_id, int type_len )
{
char *uri = S_ALLOC_N( char, strlen( domain ) + type_len + 14 );
uri[0] = '\0';
- strcat( uri, "taguri:" );
+ strcat( uri, "tag:" );
strcat( uri, domain );
strcat( uri, ":" );
strncat( uri, type_id, type_len );
diff --git a/ext/syck/implicit.c b/ext/syck/implicit.c
index 80703a5..a34e5d3 100644
--- a/ext/syck/implicit.c
+++ b/ext/syck/implicit.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.5 on Tue Aug 26 00:28:27 2003 */
+/* Generated by re2c 0.5 on Thu Oct 9 09:11:08 2003 */
#line 1 "implicit.re"
/*
* implicit.re
@@ -58,35 +58,56 @@ yy1: ++YYCURSOR;
yy0:
if((YYLIMIT - YYCURSOR) < 26) YYFILL(26);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy6;
- case '+': goto yy16;
- case '-': goto yy17;
- case '.': goto yy20;
- case '0': goto yy18;
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy19;
- case '<': goto yy22;
- case '=': goto yy21;
- case 'F': goto yy15;
- case 'N': goto yy5;
- case 'O': goto yy13;
- case 'T': goto yy9;
- case 'Y': goto yy11;
- case 'f': goto yy14;
- case 'n': goto yy4;
- case 'o': goto yy12;
- case 't': goto yy8;
- case 'y': goto yy10;
- case '~': goto yy2;
- default: goto yy23;
+ if(yych <= 'N'){
+ if(yych <= '0'){
+ if(yych <= ','){
+ if(yych <= '\000') goto yy6;
+ if(yych == '+') goto yy16;
+ goto yy23;
+ } else {
+ if(yych <= '-') goto yy17;
+ if(yych <= '.') goto yy20;
+ if(yych <= '/') goto yy23;
+ goto yy18;
+ }
+ } else {
+ if(yych <= '='){
+ if(yych <= '9') goto yy19;
+ if(yych <= ';') goto yy23;
+ if(yych <= '<') goto yy22;
+ goto yy21;
+ } else {
+ if(yych == 'F') goto yy15;
+ if(yych <= 'M') goto yy23;
+ goto yy5;
+ }
+ }
+ } else {
+ if(yych <= 'm'){
+ if(yych <= 'X'){
+ if(yych <= 'O') goto yy13;
+ if(yych == 'T') goto yy9;
+ goto yy23;
+ } else {
+ if(yych <= 'Y') goto yy11;
+ if(yych == 'f') goto yy14;
+ goto yy23;
+ }
+ } else {
+ if(yych <= 't'){
+ if(yych <= 'n') goto yy4;
+ if(yych <= 'o') goto yy12;
+ if(yych <= 's') goto yy23;
+ goto yy8;
+ } else {
+ if(yych <= 'y'){
+ if(yych <= 'x') goto yy23;
+ goto yy10;
+ } else {
+ if(yych != '~') goto yy23;
+ }
+ }
+ }
}
yy2: yych = *++YYCURSOR;
if(yych <= '\000') goto yy6;
@@ -95,18 +116,23 @@ yy3:
{ return "str"; }
yy4: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'o': goto yy163;
- case 'u': goto yy191;
- default: goto yy3;
- }
+ if(yych == 'o') goto yy163;
+ if(yych == 'u') goto yy191;
+ goto yy3;
yy5: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'O': case 'o': goto yy163;
- case 'U': goto yy186;
- case 'u': goto yy187;
- default: goto yy3;
+ if(yych <= 'U'){
+ if(yych == 'O') goto yy163;
+ if(yych <= 'T') goto yy3;
+ goto yy186;
+ } else {
+ if(yych <= 'o'){
+ if(yych <= 'n') goto yy3;
+ goto yy163;
+ } else {
+ if(yych == 'u') goto yy187;
+ goto yy3;
+ }
}
yy6: yych = *++YYCURSOR;
yy7:
@@ -114,145 +140,126 @@ yy7:
{ return "null"; }
yy8: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'r': goto yy184;
- default: goto yy3;
- }
+ if(yych == 'r') goto yy184;
+ goto yy3;
yy9: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'R': goto yy180;
- case 'r': goto yy181;
- default: goto yy3;
- }
+ if(yych == 'R') goto yy180;
+ if(yych == 'r') goto yy181;
+ goto yy3;
yy10: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'e': goto yy179;
- default: goto yy3;
- }
+ if(yych == 'e') goto yy179;
+ goto yy3;
yy11: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'E': goto yy177;
- case 'e': goto yy178;
- default: goto yy3;
- }
+ if(yych == 'E') goto yy177;
+ if(yych == 'e') goto yy178;
+ goto yy3;
yy12: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'f': goto yy176;
- case 'n': goto yy173;
- default: goto yy3;
- }
+ if(yych == 'f') goto yy176;
+ if(yych == 'n') goto yy173;
+ goto yy3;
yy13: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'F': goto yy171;
- case 'N': case 'n': goto yy173;
- case 'f': goto yy172;
- default: goto yy3;
+ if(yych <= 'N'){
+ if(yych == 'F') goto yy171;
+ if(yych <= 'M') goto yy3;
+ goto yy173;
+ } else {
+ if(yych <= 'f'){
+ if(yych <= 'e') goto yy3;
+ goto yy172;
+ } else {
+ if(yych == 'n') goto yy173;
+ goto yy3;
+ }
}
yy14: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'a': goto yy168;
- default: goto yy3;
- }
+ if(yych == 'a') goto yy168;
+ goto yy3;
yy15: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'A': goto yy159;
- case 'a': goto yy160;
- default: goto yy3;
- }
+ if(yych == 'A') goto yy159;
+ if(yych == 'a') goto yy160;
+ goto yy3;
yy16: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '.': goto yy158;
- case '0': goto yy149;
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy47;
- default: goto yy3;
+ if(yych <= '/'){
+ if(yych == '.') goto yy158;
+ goto yy3;
+ } else {
+ if(yych <= '0') goto yy149;
+ if(yych <= '9') goto yy47;
+ goto yy3;
}
yy17: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '.': goto yy148;
- case '0': goto yy149;
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy47;
- default: goto yy3;
+ if(yych <= '/'){
+ if(yych == '.') goto yy148;
+ goto yy3;
+ } else {
+ if(yych <= '0') goto yy149;
+ if(yych <= '9') goto yy47;
+ goto yy3;
}
yy18: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\000': goto yy51;
- case ',': goto yy133;
- case '.': goto yy49;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7': goto yy131;
- case '8':
- case '9': goto yy132;
- case 'x': goto yy135;
- default: goto yy3;
+ if(yych <= '.'){
+ if(yych <= '+'){
+ if(yych <= '\000') goto yy51;
+ goto yy3;
+ } else {
+ if(yych <= ',') goto yy133;
+ if(yych <= '-') goto yy3;
+ goto yy49;
+ }
+ } else {
+ if(yych <= '9'){
+ if(yych <= '/') goto yy3;
+ if(yych <= '7') goto yy131;
+ goto yy132;
+ } else {
+ if(yych == 'x') goto yy135;
+ goto yy3;
+ }
}
yy19: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\000': goto yy51;
- case ',': goto yy47;
- case '.': goto yy49;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy46;
- default: goto yy3;
+ if(yych <= '-'){
+ if(yych <= '\000') goto yy51;
+ if(yych == ',') goto yy47;
+ goto yy3;
+ } else {
+ if(yych <= '.') goto yy49;
+ if(yych <= '/') goto yy3;
+ if(yych <= '9') goto yy46;
+ goto yy3;
}
yy20: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'I': goto yy33;
- case 'N': goto yy31;
- case 'i': goto yy32;
- case 'n': goto yy30;
- default: goto yy3;
+ if(yych <= 'N'){
+ if(yych == 'I') goto yy33;
+ if(yych <= 'M') goto yy3;
+ goto yy31;
+ } else {
+ if(yych <= 'i'){
+ if(yych <= 'h') goto yy3;
+ goto yy32;
+ } else {
+ if(yych == 'n') goto yy30;
+ goto yy3;
+ }
}
yy21: yych = *++YYCURSOR;
if(yych <= '\000') goto yy28;
goto yy3;
yy22: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '<': goto yy24;
- default: goto yy3;
- }
+ if(yych == '<') goto yy24;
+ goto yy3;
yy23: yych = *++YYCURSOR;
goto yy3;
yy24: yych = *++YYCURSOR;
@@ -270,37 +277,24 @@ yy29:
#line 112
{ return "default"; }
yy30: yych = *++YYCURSOR;
- switch(yych){
- case 'a': goto yy45;
- default: goto yy25;
- }
+ if(yych == 'a') goto yy45;
+ goto yy25;
yy31: yych = *++YYCURSOR;
- switch(yych){
- case 'A': goto yy40;
- case 'a': goto yy41;
- default: goto yy25;
- }
+ if(yych == 'A') goto yy40;
+ if(yych == 'a') goto yy41;
+ goto yy25;
yy32: yych = *++YYCURSOR;
- switch(yych){
- case 'n': goto yy39;
- default: goto yy25;
- }
+ if(yych == 'n') goto yy39;
+ goto yy25;
yy33: yych = *++YYCURSOR;
- switch(yych){
- case 'N': goto yy34;
- case 'n': goto yy35;
- default: goto yy25;
- }
+ if(yych == 'N') goto yy34;
+ if(yych == 'n') goto yy35;
+ goto yy25;
yy34: yych = *++YYCURSOR;
- switch(yych){
- case 'F': goto yy36;
- default: goto yy25;
- }
+ if(yych == 'F') goto yy36;
+ goto yy25;
yy35: yych = *++YYCURSOR;
- switch(yych){
- case 'f': goto yy36;
- default: goto yy25;
- }
+ if(yych != 'f') goto yy25;
yy36: yych = *++YYCURSOR;
if(yych >= '\001') goto yy25;
yy37: yych = *++YYCURSOR;
@@ -308,20 +302,13 @@ yy38:
#line 98
{ return "float#inf"; }
yy39: yych = *++YYCURSOR;
- switch(yych){
- case 'f': goto yy36;
- default: goto yy25;
- }
+ if(yych == 'f') goto yy36;
+ goto yy25;
yy40: yych = *++YYCURSOR;
- switch(yych){
- case 'N': goto yy42;
- default: goto yy25;
- }
+ if(yych == 'N') goto yy42;
+ goto yy25;
yy41: yych = *++YYCURSOR;
- switch(yych){
- case 'N': goto yy42;
- default: goto yy25;
- }
+ if(yych != 'N') goto yy25;
yy42: yych = *++YYCURSOR;
if(yych >= '\001') goto yy25;
yy43: yych = *++YYCURSOR;
@@ -329,61 +316,46 @@ yy44:
#line 102
{ return "float#nan"; }
yy45: yych = *++YYCURSOR;
- switch(yych){
- case 'n': goto yy42;
- default: goto yy25;
- }
+ if(yych == 'n') goto yy42;
+ goto yy25;
yy46: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy65;
- default: goto yy48;
- }
+ if(yych <= '/') goto yy48;
+ if(yych <= '9') goto yy65;
+ goto yy48;
yy47: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy48: switch(yych){
- case '\000': goto yy51;
- case ',': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy47;
- case '.': goto yy49;
- default: goto yy25;
+yy48: if(yych <= '-'){
+ if(yych <= '\000') goto yy51;
+ if(yych == ',') goto yy47;
+ goto yy25;
+ } else {
+ if(yych <= '.') goto yy49;
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy47;
+ goto yy25;
}
yy49: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy50: switch(yych){
- case '\000': goto yy55;
- case ',': goto yy53;
- case '.': goto yy57;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy49;
- case 'E': case 'e': goto yy59;
- default: goto yy25;
+yy50: if(yych <= '/'){
+ if(yych <= ','){
+ if(yych <= '\000') goto yy55;
+ if(yych <= '+') goto yy25;
+ goto yy53;
+ } else {
+ if(yych == '.') goto yy57;
+ goto yy25;
+ }
+ } else {
+ if(yych <= 'E'){
+ if(yych <= '9') goto yy49;
+ if(yych <= 'D') goto yy25;
+ goto yy59;
+ } else {
+ if(yych == 'e') goto yy59;
+ goto yy25;
+ }
}
yy51: yych = *++YYCURSOR;
yy52:
@@ -392,19 +364,14 @@ yy52:
yy53: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy54: switch(yych){
- case '\000': goto yy55;
- case ',': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy53;
- default: goto yy25;
+yy54: if(yych <= ','){
+ if(yych <= '\000') goto yy55;
+ if(yych <= '+') goto yy25;
+ goto yy53;
+ } else {
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy53;
+ goto yy25;
}
yy55: yych = *++YYCURSOR;
yy56:
@@ -413,671 +380,277 @@ yy56:
yy57: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy58: switch(yych){
- case '.': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy57;
- case 'E': case 'e': goto yy59;
- default: goto yy25;
+yy58: if(yych <= '9'){
+ if(yych == '.') goto yy57;
+ if(yych <= '/') goto yy25;
+ goto yy57;
+ } else {
+ if(yych <= 'E'){
+ if(yych <= 'D') goto yy25;
+ } else {
+ if(yych != 'e') goto yy25;
+ }
}
yy59: yych = *++YYCURSOR;
- switch(yych){
- case '+': case '-': goto yy60;
- default: goto yy25;
- }
+ if(yych == '+') goto yy60;
+ if(yych != '-') goto yy25;
yy60: yych = *++YYCURSOR;
if(yych <= '\000') goto yy25;
goto yy62;
yy61: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy62: switch(yych){
- case '\000': goto yy63;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy61;
- default: goto yy25;
- }
+yy62: if(yych <= '\000') goto yy63;
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy61;
+ goto yy25;
yy63: yych = *++YYCURSOR;
yy64:
#line 96
{ return "float#exp"; }
yy65: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy66;
- default: goto yy48;
- }
+ if(yych <= '/') goto yy48;
+ if(yych >= ':') goto yy48;
yy66: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy67;
- default: goto yy48;
- }
+ if(yych != '-') goto yy48;
yy67: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy68;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy68: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy69;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy69: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy70;
- default: goto yy25;
- }
+ if(yych != '-') goto yy25;
yy70: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy71;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy71: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy72;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy72: yych = *++YYCURSOR;
- switch(yych){
- case '\000': goto yy73;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy25;
- case 'T': goto yy75;
- case 't': goto yy76;
- default: goto yy78;
+ if(yych <= 'S'){
+ if(yych <= '\000') goto yy73;
+ if(yych <= '/') goto yy78;
+ if(yych <= '9') goto yy25;
+ goto yy78;
+ } else {
+ if(yych <= 'T') goto yy75;
+ if(yych == 't') goto yy76;
+ goto yy78;
}
yy73: yych = *++YYCURSOR;
yy74:
#line 104
{ return "timestamp#ymd"; }
yy75: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy117;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy117;
+ goto yy25;
yy76: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy99;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy99;
+ goto yy25;
yy77: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy78: switch(yych){
- case '\t': case ' ': goto yy77;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy79;
- default: goto yy25;
+yy78: if(yych <= '\037'){
+ if(yych == '\t') goto yy77;
+ goto yy25;
+ } else {
+ if(yych <= ' ') goto yy77;
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
}
yy79: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy80;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy80: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy81;
- default: goto yy25;
- }
+ if(yych != ':') goto yy25;
yy81: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy82;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy82: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy83;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy83: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy84;
- default: goto yy25;
- }
+ if(yych != ':') goto yy25;
yy84: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy85;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy85: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy86;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy86: yych = *++YYCURSOR;
- switch(yych){
- case '\t': case ' ': goto yy89;
- case '.': goto yy87;
- default: goto yy25;
+ if(yych <= '\037'){
+ if(yych == '\t') goto yy89;
+ goto yy25;
+ } else {
+ if(yych <= ' ') goto yy89;
+ if(yych != '.') goto yy25;
}
yy87: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy88: switch(yych){
- case '\t': case ' ': goto yy89;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy87;
- default: goto yy25;
+yy88: if(yych <= '\037'){
+ if(yych != '\t') goto yy25;
+ } else {
+ if(yych <= ' ') goto yy89;
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy87;
+ goto yy25;
}
yy89: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy90: switch(yych){
- case '\t': case ' ': goto yy89;
- case '+': case '-': goto yy92;
- case 'Z': goto yy91;
- default: goto yy25;
+yy90: if(yych <= '*'){
+ if(yych <= '\t'){
+ if(yych <= '\b') goto yy25;
+ goto yy89;
+ } else {
+ if(yych == ' ') goto yy89;
+ goto yy25;
+ }
+ } else {
+ if(yych <= '-'){
+ if(yych == ',') goto yy25;
+ goto yy92;
+ } else {
+ if(yych != 'Z') goto yy25;
+ }
}
yy91: yych = *++YYCURSOR;
if(yych <= '\000') goto yy96;
goto yy25;
yy92: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy93;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy93: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy94;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy94: yych = *++YYCURSOR;
- switch(yych){
- case '\000': goto yy96;
- case ':': goto yy95;
- default: goto yy25;
- }
+ if(yych <= '\000') goto yy96;
+ if(yych != ':') goto yy25;
yy95: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy98;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy98;
+ goto yy25;
yy96: yych = *++YYCURSOR;
yy97:
#line 108
{ return "timestamp#spaced"; }
yy98: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy91;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy91;
+ goto yy25;
yy99: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy100;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy100: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy101;
- default: goto yy25;
- }
+ if(yych != ':') goto yy25;
yy101: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy102;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy102: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy103;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy103: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy104;
- default: goto yy25;
- }
+ if(yych != ':') goto yy25;
yy104: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy105;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy105: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy106;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy106: yych = *++YYCURSOR;
- switch(yych){
- case '.': goto yy107;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy25;
- default: goto yy108;
- }
+ if(yych == '.') goto yy107;
+ if(yych <= '/') goto yy108;
+ if(yych <= '9') goto yy25;
+ goto yy108;
yy107: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy108: switch(yych){
- case '+': case '-': goto yy110;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy107;
- case 'Z': goto yy109;
- default: goto yy25;
+yy108: if(yych <= '-'){
+ if(yych == '+') goto yy110;
+ if(yych <= ',') goto yy25;
+ goto yy110;
+ } else {
+ if(yych <= '9'){
+ if(yych <= '/') goto yy25;
+ goto yy107;
+ } else {
+ if(yych != 'Z') goto yy25;
+ }
}
yy109: yych = *++YYCURSOR;
if(yych <= '\000') goto yy114;
goto yy25;
yy110: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy111;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy111: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy112;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy112: yych = *++YYCURSOR;
- switch(yych){
- case '\000': goto yy114;
- case ':': goto yy113;
- default: goto yy25;
- }
+ if(yych <= '\000') goto yy114;
+ if(yych != ':') goto yy25;
yy113: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy116;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy116;
+ goto yy25;
yy114: yych = *++YYCURSOR;
yy115:
#line 106
{ return "timestamp#iso8601"; }
yy116: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy109;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy109;
+ goto yy25;
yy117: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy118;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy118: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy119;
- default: goto yy25;
- }
+ if(yych != ':') goto yy25;
yy119: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy120;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy120: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy121;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy121: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy122;
- default: goto yy25;
- }
+ if(yych != ':') goto yy25;
yy122: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy123;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy123: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy124;
- default: goto yy25;
- }
+ if(yych <= '/') goto yy25;
+ if(yych >= ':') goto yy25;
yy124: yych = *++YYCURSOR;
- switch(yych){
- case '.': goto yy125;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy25;
- case 'Z': goto yy127;
- default: goto yy126;
+ if(yych <= '/'){
+ if(yych != '.') goto yy126;
+ } else {
+ if(yych <= '9') goto yy25;
+ if(yych == 'Z') goto yy127;
+ goto yy126;
}
yy125: ++YYCURSOR;
if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
yych = *YYCURSOR;
-yy126: switch(yych){
- case '+': case '-': goto yy110;
- case '0': goto yy125;
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy129;
- case 'Z': goto yy109;
- default: goto yy25;
+yy126: if(yych <= '/'){
+ if(yych <= '+'){
+ if(yych <= '*') goto yy25;
+ goto yy110;
+ } else {
+ if(yych == '-') goto yy110;
+ goto yy25;
+ }
+ } else {
+ if(yych <= '9'){
+ if(yych <= '0') goto yy125;
+ goto yy129;
+ } else {
+ if(yych == 'Z') goto yy109;
+ goto yy25;
+ }
}
yy127: yych = *++YYCURSOR;
if(yych >= '\001') goto yy25;
@@ -1086,66 +659,48 @@ yy128: yych = *++YYCURSOR;
yy129: ++YYCURSOR;
if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
yych = *YYCURSOR;
-yy130: switch(yych){
- case '+': case '-': goto yy110;
- case '0': goto yy125;
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy129;
- case 'Z': goto yy127;
- default: goto yy25;
+yy130: if(yych <= '/'){
+ if(yych <= '+'){
+ if(yych <= '*') goto yy25;
+ goto yy110;
+ } else {
+ if(yych == '-') goto yy110;
+ goto yy25;
+ }
+ } else {
+ if(yych <= '9'){
+ if(yych <= '0') goto yy125;
+ goto yy129;
+ } else {
+ if(yych == 'Z') goto yy127;
+ goto yy25;
+ }
}
yy131: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7': goto yy146;
- case '8':
- case '9': goto yy144;
- default: goto yy134;
- }
+ if(yych <= '/') goto yy134;
+ if(yych <= '7') goto yy146;
+ if(yych <= '9') goto yy144;
+ goto yy134;
yy132: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy144;
- default: goto yy143;
- }
+ if(yych <= '/') goto yy143;
+ if(yych <= '9') goto yy144;
+ goto yy143;
yy133: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy134: switch(yych){
- case '\000': goto yy140;
- case ',': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7': goto yy133;
- case '.': goto yy49;
- case '8':
- case '9': goto yy142;
- default: goto yy25;
+yy134: if(yych <= '-'){
+ if(yych <= '\000') goto yy140;
+ if(yych == ',') goto yy133;
+ goto yy25;
+ } else {
+ if(yych <= '/'){
+ if(yych <= '.') goto yy49;
+ goto yy25;
+ } else {
+ if(yych <= '7') goto yy133;
+ if(yych <= '9') goto yy142;
+ goto yy25;
+ }
}
yy135: yych = *++YYCURSOR;
if(yych <= '\000') goto yy25;
@@ -1153,29 +708,23 @@ yy135: yych = *++YYCURSOR;
yy136: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy137: switch(yych){
- case '\000': goto yy138;
- case ',': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f': goto yy136;
- default: goto yy25;
+yy137: if(yych <= '9'){
+ if(yych <= '+'){
+ if(yych >= '\001') goto yy25;
+ } else {
+ if(yych <= ',') goto yy136;
+ if(yych <= '/') goto yy25;
+ goto yy136;
+ }
+ } else {
+ if(yych <= 'F'){
+ if(yych <= '@') goto yy25;
+ goto yy136;
+ } else {
+ if(yych <= '`') goto yy25;
+ if(yych <= 'f') goto yy136;
+ goto yy25;
+ }
}
yy138: yych = *++YYCURSOR;
yy139:
@@ -1188,91 +737,49 @@ yy141:
yy142: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy143: switch(yych){
- case ',': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy142;
- case '.': goto yy49;
- default: goto yy25;
+yy143: if(yych <= '-'){
+ if(yych == ',') goto yy142;
+ goto yy25;
+ } else {
+ if(yych <= '.') goto yy49;
+ if(yych <= '/') goto yy25;
+ if(yych <= '9') goto yy142;
+ goto yy25;
}
yy144: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy145;
- default: goto yy143;
- }
+ if(yych <= '/') goto yy143;
+ if(yych >= ':') goto yy143;
yy145: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy67;
- default: goto yy143;
- }
+ if(yych == '-') goto yy67;
+ goto yy143;
yy146: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7': goto yy147;
- case '8':
- case '9': goto yy145;
- default: goto yy134;
- }
+ if(yych <= '/') goto yy134;
+ if(yych <= '7') goto yy147;
+ if(yych <= '9') goto yy145;
+ goto yy134;
yy147: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy67;
- default: goto yy134;
- }
+ if(yych == '-') goto yy67;
+ goto yy134;
yy148: yych = *++YYCURSOR;
- switch(yych){
- case 'I': goto yy151;
- case 'i': goto yy150;
- default: goto yy25;
- }
+ if(yych == 'I') goto yy151;
+ if(yych == 'i') goto yy150;
+ goto yy25;
yy149: yych = *++YYCURSOR;
- switch(yych){
- case '\000': goto yy51;
- case 'x': goto yy135;
- default: goto yy134;
- }
+ if(yych <= '\000') goto yy51;
+ if(yych == 'x') goto yy135;
+ goto yy134;
yy150: yych = *++YYCURSOR;
- switch(yych){
- case 'n': goto yy157;
- default: goto yy25;
- }
+ if(yych == 'n') goto yy157;
+ goto yy25;
yy151: yych = *++YYCURSOR;
- switch(yych){
- case 'N': goto yy152;
- case 'n': goto yy153;
- default: goto yy25;
- }
+ if(yych == 'N') goto yy152;
+ if(yych == 'n') goto yy153;
+ goto yy25;
yy152: yych = *++YYCURSOR;
- switch(yych){
- case 'F': goto yy154;
- default: goto yy25;
- }
+ if(yych == 'F') goto yy154;
+ goto yy25;
yy153: yych = *++YYCURSOR;
- switch(yych){
- case 'f': goto yy154;
- default: goto yy25;
- }
+ if(yych != 'f') goto yy25;
yy154: yych = *++YYCURSOR;
if(yych >= '\001') goto yy25;
yy155: yych = *++YYCURSOR;
@@ -1280,36 +787,21 @@ yy156:
#line 100
{ return "float#neginf"; }
yy157: yych = *++YYCURSOR;
- switch(yych){
- case 'f': goto yy154;
- default: goto yy25;
- }
+ if(yych == 'f') goto yy154;
+ goto yy25;
yy158: yych = *++YYCURSOR;
- switch(yych){
- case 'I': goto yy33;
- case 'i': goto yy32;
- default: goto yy25;
- }
+ if(yych == 'I') goto yy33;
+ if(yych == 'i') goto yy32;
+ goto yy25;
yy159: yych = *++YYCURSOR;
- switch(yych){
- case 'L': goto yy166;
- default: goto yy25;
- }
+ if(yych == 'L') goto yy166;
+ goto yy25;
yy160: yych = *++YYCURSOR;
- switch(yych){
- case 'l': goto yy161;
- default: goto yy25;
- }
+ if(yych != 'l') goto yy25;
yy161: yych = *++YYCURSOR;
- switch(yych){
- case 's': goto yy162;
- default: goto yy25;
- }
+ if(yych != 's') goto yy25;
yy162: yych = *++YYCURSOR;
- switch(yych){
- case 'e': goto yy163;
- default: goto yy25;
- }
+ if(yych != 'e') goto yy25;
yy163: yych = *++YYCURSOR;
if(yych >= '\001') goto yy25;
yy164: yych = *++YYCURSOR;
@@ -1317,40 +809,23 @@ yy165:
#line 86
{ return "bool#no"; }
yy166: yych = *++YYCURSOR;
- switch(yych){
- case 'S': goto yy167;
- default: goto yy25;
- }
+ if(yych != 'S') goto yy25;
yy167: yych = *++YYCURSOR;
- switch(yych){
- case 'E': goto yy163;
- default: goto yy25;
- }
+ if(yych == 'E') goto yy163;
+ goto yy25;
yy168: yych = *++YYCURSOR;
- switch(yych){
- case 'l': goto yy169;
- default: goto yy25;
- }
+ if(yych != 'l') goto yy25;
yy169: yych = *++YYCURSOR;
- switch(yych){
- case 's': goto yy170;
- default: goto yy25;
- }
+ if(yych != 's') goto yy25;
yy170: yych = *++YYCURSOR;
- switch(yych){
- case 'e': goto yy163;
- default: goto yy25;
- }
+ if(yych == 'e') goto yy163;
+ goto yy25;
yy171: yych = *++YYCURSOR;
- switch(yych){
- case 'F': goto yy163;
- default: goto yy25;
- }
+ if(yych == 'F') goto yy163;
+ goto yy25;
yy172: yych = *++YYCURSOR;
- switch(yych){
- case 'f': goto yy163;
- default: goto yy25;
- }
+ if(yych == 'f') goto yy163;
+ goto yy25;
yy173: yych = *++YYCURSOR;
if(yych >= '\001') goto yy25;
yy174: yych = *++YYCURSOR;
@@ -1358,88 +833,51 @@ yy175:
#line 84
{ return "bool#yes"; }
yy176: yych = *++YYCURSOR;
- switch(yych){
- case 'f': goto yy163;
- default: goto yy25;
- }
+ if(yych == 'f') goto yy163;
+ goto yy25;
yy177: yych = *++YYCURSOR;
- switch(yych){
- case 'S': goto yy173;
- default: goto yy25;
- }
+ if(yych == 'S') goto yy173;
+ goto yy25;
yy178: yych = *++YYCURSOR;
- switch(yych){
- case 's': goto yy173;
- default: goto yy25;
- }
+ if(yych == 's') goto yy173;
+ goto yy25;
yy179: yych = *++YYCURSOR;
- switch(yych){
- case 's': goto yy173;
- default: goto yy25;
- }
+ if(yych == 's') goto yy173;
+ goto yy25;
yy180: yych = *++YYCURSOR;
- switch(yych){
- case 'U': goto yy183;
- default: goto yy25;
- }
+ if(yych == 'U') goto yy183;
+ goto yy25;
yy181: yych = *++YYCURSOR;
- switch(yych){
- case 'u': goto yy182;
- default: goto yy25;
- }
+ if(yych != 'u') goto yy25;
yy182: yych = *++YYCURSOR;
- switch(yych){
- case 'e': goto yy173;
- default: goto yy25;
- }
+ if(yych == 'e') goto yy173;
+ goto yy25;
yy183: yych = *++YYCURSOR;
- switch(yych){
- case 'E': goto yy173;
- default: goto yy25;
- }
+ if(yych == 'E') goto yy173;
+ goto yy25;
yy184: yych = *++YYCURSOR;
- switch(yych){
- case 'u': goto yy185;
- default: goto yy25;
- }
+ if(yych != 'u') goto yy25;
yy185: yych = *++YYCURSOR;
- switch(yych){
- case 'e': goto yy173;
- default: goto yy25;
- }
+ if(yych == 'e') goto yy173;
+ goto yy25;
yy186: yych = *++YYCURSOR;
- switch(yych){
- case 'L': goto yy190;
- default: goto yy25;
- }
+ if(yych == 'L') goto yy190;
+ goto yy25;
yy187: yych = *++YYCURSOR;
- switch(yych){
- case 'l': goto yy188;
- default: goto yy25;
- }
+ if(yych != 'l') goto yy25;
yy188: yych = *++YYCURSOR;
- switch(yych){
- case 'l': goto yy189;
- default: goto yy25;
- }
+ if(yych != 'l') goto yy25;
yy189: yych = *++YYCURSOR;
if(yych <= '\000') goto yy6;
goto yy25;
yy190: yych = *++YYCURSOR;
- switch(yych){
- case 'L': goto yy189;
- default: goto yy25;
- }
+ if(yych == 'L') goto yy189;
+ goto yy25;
yy191: yych = *++YYCURSOR;
- switch(yych){
- case 'l': goto yy192;
- default: goto yy25;
- }
+ if(yych != 'l') goto yy25;
yy192: yych = *++YYCURSOR;
- switch(yych){
- case 'l': goto yy189;
- default: goto yy25;
- }
+ if(yych == 'l') goto yy189;
+ goto yy25;
}
#line 118
@@ -1462,68 +900,27 @@ yy194: ++YYCURSOR;
yy193:
if((YYLIMIT - YYCURSOR) < 21) YYFILL(21);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy195;
- case '!': goto yy199;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's': case 'u':
- case 'v':
- case 'w': case 'y':
- case 'z': goto yy201;
- case 't': goto yy196;
- case 'x': goto yy198;
- default: goto yy202;
+ if(yych <= '^'){
+ if(yych <= '/'){
+ if(yych <= '\000') goto yy195;
+ if(yych == '!') goto yy199;
+ goto yy202;
+ } else {
+ if(yych <= '9') goto yy201;
+ if(yych <= '@') goto yy202;
+ if(yych <= 'Z') goto yy201;
+ goto yy202;
+ }
+ } else {
+ if(yych <= 't'){
+ if(yych == '`') goto yy202;
+ if(yych <= 's') goto yy201;
+ goto yy196;
+ } else {
+ if(yych == 'x') goto yy198;
+ if(yych <= 'z') goto yy201;
+ goto yy202;
+ }
}
yy195: YYCURSOR = YYMARKER;
switch(yyaccept){
@@ -1531,143 +928,50 @@ yy195: YYCURSOR = YYMARKER;
}
yy196: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case ',': goto yy207;
- case '-': goto yy203;
- case '.': goto yy208;
- case '/': goto yy209;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy205;
- case 'a': goto yy237;
- default: goto yy197;
+ if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= '+') goto yy197;
+ if(yych <= ',') goto yy207;
+ goto yy203;
+ } else {
+ if(yych <= '.') goto yy208;
+ if(yych <= '/') goto yy209;
+ if(yych <= '9') goto yy205;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy205;
+ if(yych >= '_') goto yy205;
+ } else {
+ if(yych <= '`') goto yy197;
+ if(yych <= 'a') goto yy237;
+ if(yych <= 'z') goto yy205;
+ }
}
yy197:
#line 170
{ return syck_taguri( YAML_DOMAIN, type_id, strlen( type_id ) ); }
yy198: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case ',': case '.':
- case '/':
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy206;
- case '-': goto yy227;
- default: goto yy197;
+ if(yych <= '@'){
+ if(yych <= ','){
+ if(yych <= '+') goto yy197;
+ goto yy206;
+ } else {
+ if(yych <= '-') goto yy227;
+ if(yych <= '9') goto yy206;
+ goto yy197;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy206;
+ if(yych <= '^') goto yy197;
+ goto yy206;
+ } else {
+ if(yych <= '`') goto yy197;
+ if(yych <= 'z') goto yy206;
+ goto yy197;
+ }
}
yy199: yych = *++YYCURSOR;
yy200:
@@ -1675,291 +979,93 @@ yy200:
{ return syck_xprivate( type_id + 1, strlen( type_id ) - 1 ); }
yy201: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case ',': goto yy207;
- case '-': goto yy203;
- case '.': goto yy208;
- case '/': goto yy209;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy205;
- default: goto yy197;
+ if(yych <= '9'){
+ if(yych <= '-'){
+ if(yych <= '+') goto yy197;
+ if(yych <= ',') goto yy207;
+ goto yy203;
+ } else {
+ if(yych <= '.') goto yy208;
+ if(yych <= '/') goto yy209;
+ goto yy205;
+ }
+ } else {
+ if(yych <= '^'){
+ if(yych <= '@') goto yy197;
+ if(yych <= 'Z') goto yy205;
+ goto yy197;
+ } else {
+ if(yych == '`') goto yy197;
+ if(yych <= 'z') goto yy205;
+ goto yy197;
+ }
}
yy202: yych = *++YYCURSOR;
goto yy197;
yy203: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy204: switch(yych){
- case '-': goto yy203;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy205;
- default: goto yy195;
+yy204: if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= ',') goto yy195;
+ goto yy203;
+ } else {
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy205;
+ if(yych <= '^') goto yy195;
+ } else {
+ if(yych <= '`') goto yy195;
+ if(yych >= '{') goto yy195;
+ }
}
yy205: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy206: switch(yych){
- case ',': goto yy207;
- case '-': goto yy203;
- case '.': goto yy208;
- case '/': goto yy209;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy205;
- default: goto yy195;
+yy206: if(yych <= '9'){
+ if(yych <= '-'){
+ if(yych <= '+') goto yy195;
+ if(yych >= '-') goto yy203;
+ } else {
+ if(yych <= '.') goto yy208;
+ if(yych <= '/') goto yy209;
+ goto yy205;
+ }
+ } else {
+ if(yych <= '^'){
+ if(yych <= '@') goto yy195;
+ if(yych <= 'Z') goto yy205;
+ goto yy195;
+ } else {
+ if(yych == '`') goto yy195;
+ if(yych <= 'z') goto yy205;
+ goto yy195;
+ }
}
yy207: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy215;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy215;
+ goto yy195;
yy208: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy211;
- default: goto yy195;
+ if(yych <= 'Z'){
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy211;
+ if(yych <= '@') goto yy195;
+ goto yy211;
+ } else {
+ if(yych <= '_'){
+ if(yych <= '^') goto yy195;
+ goto yy211;
+ } else {
+ if(yych <= '`') goto yy195;
+ if(yych <= 'z') goto yy211;
+ goto yy195;
+ }
}
yy209: yych = *++YYCURSOR;
yy210:
@@ -1979,202 +1085,66 @@ yy210:
yy211: ++YYCURSOR;
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy212: switch(yych){
- case ',': goto yy207;
- case '-': goto yy213;
- case '.': goto yy208;
- case '/': goto yy209;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy211;
- default: goto yy195;
+yy212: if(yych <= '9'){
+ if(yych <= '-'){
+ if(yych <= '+') goto yy195;
+ if(yych <= ',') goto yy207;
+ } else {
+ if(yych <= '.') goto yy208;
+ if(yych <= '/') goto yy209;
+ goto yy211;
+ }
+ } else {
+ if(yych <= '^'){
+ if(yych <= '@') goto yy195;
+ if(yych <= 'Z') goto yy211;
+ goto yy195;
+ } else {
+ if(yych == '`') goto yy195;
+ if(yych <= 'z') goto yy211;
+ goto yy195;
+ }
}
yy213: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy214: switch(yych){
- case '-': goto yy213;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy211;
- default: goto yy195;
+yy214: if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= ',') goto yy195;
+ goto yy213;
+ } else {
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy211;
+ goto yy195;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy211;
+ if(yych <= '^') goto yy195;
+ goto yy211;
+ } else {
+ if(yych <= '`') goto yy195;
+ if(yych <= 'z') goto yy211;
+ goto yy195;
+ }
}
yy215: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy216;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy216: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy217;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy217: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy218;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy218: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy219;
- case '/': goto yy220;
- default: goto yy195;
- }
+ if(yych == '-') goto yy219;
+ if(yych == '/') goto yy220;
+ goto yy195;
yy219: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy222;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy222;
+ goto yy195;
yy220: yych = *++YYCURSOR;
yy221:
#line 159
@@ -2189,641 +1159,260 @@ yy221:
return uri;
}
yy222: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy223;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy223: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy224;
- case '/': goto yy220;
- default: goto yy195;
- }
+ if(yych == '-') goto yy224;
+ if(yych == '/') goto yy220;
+ goto yy195;
yy224: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy225;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy225: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy226;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy226: yych = *++YYCURSOR;
- switch(yych){
- case '/': goto yy220;
- default: goto yy195;
- }
+ if(yych == '/') goto yy220;
+ goto yy195;
yy227: yych = *++YYCURSOR;
- switch(yych){
- case 'p': goto yy228;
- default: goto yy204;
- }
+ if(yych != 'p') goto yy204;
yy228: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'r': goto yy229;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 'r') goto yy204;
}
yy229: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'i': goto yy230;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 'i') goto yy204;
}
yy230: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'v': goto yy231;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 'v') goto yy204;
}
yy231: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'a': goto yy232;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 'a') goto yy204;
}
yy232: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 't': goto yy233;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 't') goto yy204;
}
yy233: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'e': goto yy234;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 'e') goto yy204;
}
yy234: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case ':': goto yy235;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != ':') goto yy204;
}
yy235: yych = *++YYCURSOR;
yy236:
#line 142
{ return type_id; }
yy237: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'g': goto yy238;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != 'g') goto yy204;
}
yy238: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'u': goto yy239;
- default: goto yy204;
+ if(yych <= '.'){
+ if(yych == ',') goto yy207;
+ if(yych <= '-') goto yy204;
+ goto yy208;
+ } else {
+ if(yych <= '/') goto yy209;
+ if(yych != ':') goto yy204;
}
yy239: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'r': goto yy240;
- default: goto yy204;
- }
-yy240: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case 'i': goto yy241;
- default: goto yy204;
- }
-yy241: yych = *++YYCURSOR;
- switch(yych){
- case ',': goto yy207;
- case '.': goto yy208;
- case '/': goto yy209;
- case ':': goto yy242;
- default: goto yy204;
- }
-yy242: yych = *++YYCURSOR;
- switch(yych){
- case ',':
- case '-':
- case '.': goto yy195;
- default: goto yy244;
- }
-yy243: ++YYCURSOR;
+ if(yych <= '+') goto yy241;
+ if(yych <= '.') goto yy195;
+ goto yy241;
+yy240: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy244: switch(yych){
- case ',': goto yy247;
- case '-': goto yy245;
- case '.': goto yy248;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy243;
- default: goto yy195;
- }
-yy245: ++YYCURSOR;
+yy241: if(yych <= '9'){
+ if(yych <= '-'){
+ if(yych <= '+') goto yy195;
+ if(yych <= ',') goto yy244;
+ } else {
+ if(yych <= '.') goto yy245;
+ if(yych <= '/') goto yy195;
+ goto yy240;
+ }
+ } else {
+ if(yych <= '^'){
+ if(yych <= '@') goto yy195;
+ if(yych <= 'Z') goto yy240;
+ goto yy195;
+ } else {
+ if(yych == '`') goto yy195;
+ if(yych <= 'z') goto yy240;
+ goto yy195;
+ }
+ }
+yy242: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy246: switch(yych){
- case '-': goto yy245;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy243;
- default: goto yy195;
- }
-yy247: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy253;
- default: goto yy195;
- }
-yy248: ++YYCURSOR;
+yy243: if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= ',') goto yy195;
+ goto yy242;
+ } else {
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy240;
+ goto yy195;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy240;
+ if(yych <= '^') goto yy195;
+ goto yy240;
+ } else {
+ if(yych <= '`') goto yy195;
+ if(yych <= 'z') goto yy240;
+ goto yy195;
+ }
+ }
+yy244: yych = *++YYCURSOR;
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy250;
+ goto yy195;
+yy245: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy249;
- default: goto yy195;
- }
-yy249: ++YYCURSOR;
+ if(yych <= 'Z'){
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy246;
+ if(yych <= '@') goto yy195;
+ } else {
+ if(yych <= '_'){
+ if(yych <= '^') goto yy195;
+ } else {
+ if(yych <= '`') goto yy195;
+ if(yych >= '{') goto yy195;
+ }
+ }
+yy246: ++YYCURSOR;
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy250: switch(yych){
- case ',': goto yy247;
- case '-': goto yy251;
- case '.': goto yy248;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy249;
- default: goto yy195;
+yy247: if(yych <= '9'){
+ if(yych <= '-'){
+ if(yych <= '+') goto yy195;
+ if(yych <= ',') goto yy244;
+ } else {
+ if(yych <= '.') goto yy245;
+ if(yych <= '/') goto yy195;
+ goto yy246;
+ }
+ } else {
+ if(yych <= '^'){
+ if(yych <= '@') goto yy195;
+ if(yych <= 'Z') goto yy246;
+ goto yy195;
+ } else {
+ if(yych == '`') goto yy195;
+ if(yych <= 'z') goto yy246;
+ goto yy195;
+ }
}
-yy251: ++YYCURSOR;
+yy248: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy252: switch(yych){
- case '-': goto yy251;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy249;
- default: goto yy195;
- }
+yy249: if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= ',') goto yy195;
+ goto yy248;
+ } else {
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy246;
+ goto yy195;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy246;
+ if(yych <= '^') goto yy195;
+ goto yy246;
+ } else {
+ if(yych <= '`') goto yy195;
+ if(yych <= 'z') goto yy246;
+ goto yy195;
+ }
+ }
+yy250: yych = *++YYCURSOR;
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
+yy251: yych = *++YYCURSOR;
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
+yy252: yych = *++YYCURSOR;
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy253: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy254;
- default: goto yy195;
- }
+ if(yych == '-') goto yy254;
+ if(yych == ':') goto yy255;
+ goto yy195;
yy254: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy255;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych <= '9') goto yy257;
+ goto yy195;
yy255: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy256;
- default: goto yy195;
- }
-yy256: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy257;
- case ':': goto yy258;
- default: goto yy195;
- }
-yy257: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy260;
- default: goto yy195;
- }
-yy258: yych = *++YYCURSOR;
-yy259:
+yy256:
#line 140
{ return type_id; }
+yy257: yych = *++YYCURSOR;
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
+yy258: yych = *++YYCURSOR;
+ if(yych == '-') goto yy259;
+ if(yych == ':') goto yy255;
+ goto yy195;
+yy259: yych = *++YYCURSOR;
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy260: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy261;
- default: goto yy195;
- }
+ if(yych <= '/') goto yy195;
+ if(yych >= ':') goto yy195;
yy261: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy262;
- case ':': goto yy258;
- default: goto yy195;
- }
-yy262: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy263;
- default: goto yy195;
- }
-yy263: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy264;
- default: goto yy195;
- }
-yy264: yych = *++YYCURSOR;
- switch(yych){
- case ':': goto yy258;
- default: goto yy195;
- }
+ if(yych == ':') goto yy255;
+ goto yy195;
}
#line 172
diff --git a/ext/syck/rubyext.c b/ext/syck/rubyext.c
index e7ec534..aee66c8 100644
--- a/ext/syck/rubyext.c
+++ b/ext/syck/rubyext.c
@@ -41,7 +41,7 @@ typedef struct RVALUE {
* symbols and constants
*/
static ID s_new, s_utc, s_at, s_to_f, s_read, s_binmode, s_call, s_transfer, s_update, s_dup, s_match, s_keys, s_to_str, s_unpack, s_tr_bang, s_anchors, s_default_set;
-static VALUE sym_model, sym_generic;
+static VALUE sym_model, sym_generic, sym_input, sym_bytecode;
static VALUE sym_scalar, sym_seq, sym_map;
VALUE cDate, cParser, cLoader, cNode, cPrivateType, cDomainType, cBadAlias, cDefaultKey, cMergeKey, cEmitter;
VALUE oDefaultLoader;
@@ -473,18 +473,22 @@ yaml_org_handler( n, ref )
break;
case syck_seq_kind:
+ if ( type_id == NULL || strcmp( type_id, "seq" ) == 0 )
+ {
+ transferred = 1;
+ }
obj = rb_ary_new2( n->data.list->idx );
for ( i = 0; i < n->data.list->idx; i++ )
{
rb_ary_store( obj, i, syck_seq_read( n, i ) );
}
- if ( type_id == NULL || strcmp( type_id, "seq" ) == 0 )
- {
- transferred = 1;
- }
break;
case syck_map_kind:
+ if ( type_id == NULL || strcmp( type_id, "map" ) == 0 )
+ {
+ transferred = 1;
+ }
obj = rb_hash_new();
for ( i = 0; i < n->data.pairs->idx; i++ )
{
@@ -529,10 +533,6 @@ yaml_org_handler( n, ref )
rb_hash_aset( obj, k, v );
}
}
- if ( type_id == NULL || strcmp( type_id, "map" ) == 0 )
- {
- transferred = 1;
- }
break;
}
@@ -609,7 +609,7 @@ rb_syck_bad_anchor_handler(p, a)
char *a;
{
SyckNode *badanc = syck_new_map( rb_str_new2( "name" ), rb_str_new2( a ) );
- badanc->type_id = syck_strndup( "taguri:ruby.yaml.org,2002:object:YAML::Syck::BadAlias", 53 );
+ badanc->type_id = syck_strndup( "tag:ruby.yaml.org,2002:object:YAML::Syck::BadAlias", 53 );
return badanc;
}
@@ -617,9 +617,9 @@ rb_syck_bad_anchor_handler(p, a)
* data loaded based on the model requested.
*/
void
-syck_set_model( parser, model )
+syck_set_model( parser, input, model )
SyckParser *parser;
- VALUE model;
+ VALUE input, model;
{
if ( model == sym_generic )
{
@@ -633,6 +633,10 @@ syck_set_model( parser, model )
syck_parser_implicit_typing( parser, 1 );
syck_parser_taguri_expansion( parser, 0 );
}
+ if ( input == sym_bytecode )
+ {
+ syck_parser_set_input_type( parser, syck_bytecode_utf8 );
+ }
syck_parser_error_handler( parser, rb_syck_err_handler );
syck_parser_bad_anchor_handler( parser, rb_syck_bad_anchor_handler );
}
@@ -694,7 +698,7 @@ syck_parser_load(argc, argv, self)
VALUE *argv;
VALUE self;
{
- VALUE port, proc, model;
+ VALUE port, proc, model, input;
SyckParser *parser;
struct parser_xtra bonus;
volatile VALUE hash; /* protect from GC */
@@ -702,8 +706,9 @@ syck_parser_load(argc, argv, self)
rb_scan_args(argc, argv, "11", &port, &proc);
Data_Get_Struct(self, SyckParser, parser);
+ input = rb_hash_aref( rb_iv_get( self, "@options" ), sym_input );
model = rb_hash_aref( rb_iv_get( self, "@options" ), sym_model );
- syck_set_model( parser, model );
+ syck_set_model( parser, input, model );
bonus.taint = syck_parser_assign_io(parser, port);
bonus.data = hash = rb_hash_new();
@@ -724,7 +729,7 @@ syck_parser_load_documents(argc, argv, self)
VALUE *argv;
VALUE self;
{
- VALUE port, proc, v, model;
+ VALUE port, proc, v, input, model;
SyckParser *parser;
struct parser_xtra bonus;
volatile VALUE hash;
@@ -732,8 +737,9 @@ syck_parser_load_documents(argc, argv, self)
rb_scan_args(argc, argv, "1&", &port, &proc);
Data_Get_Struct(self, SyckParser, parser);
+ input = rb_hash_aref( rb_iv_get( self, "@options" ), sym_input );
model = rb_hash_aref( rb_iv_get( self, "@options" ), sym_model );
- syck_set_model( parser, model );
+ syck_set_model( parser, input, model );
bonus.taint = syck_parser_assign_io(parser, port);
while ( 1 )
@@ -929,7 +935,7 @@ syck_loader_transfer( self, type, val )
int transferred = 0;
VALUE scheme, name, type_hash, domain = Qnil, type_proc = Qnil;
VALUE type_uri = rb_str_new2( taguri );
- VALUE str_taguri = rb_str_new2("taguri");
+ VALUE str_taguri = rb_str_new2("tag");
VALUE str_xprivate = rb_str_new2("x-private");
VALUE str_yaml_domain = rb_str_new2(YAML_DOMAIN);
VALUE parts = rb_str_split( type_uri, ":" );
@@ -1296,6 +1302,8 @@ Init_syck()
sym_model = ID2SYM(rb_intern("Model"));
sym_generic = ID2SYM(rb_intern("Generic"));
+ sym_input = ID2SYM(rb_intern("Input"));
+ sym_bytecode = ID2SYM(rb_intern("Bytecode"));
sym_map = ID2SYM(rb_intern("map"));
sym_scalar = ID2SYM(rb_intern("scalar"));
sym_seq = ID2SYM(rb_intern("seq"));
diff --git a/ext/syck/syck.c b/ext/syck/syck.c
index 7072257..9f2f900 100644
--- a/ext/syck/syck.c
+++ b/ext/syck/syck.c
@@ -9,8 +9,8 @@
#include <stdio.h>
#include <string.h>
-#include "syck.h"
#include "ruby.h"
+#include "syck.h"
void syck_parser_pop_level( SyckParser * );
@@ -109,6 +109,7 @@ syck_parser_reset_levels( SyckParser *p )
{
p->lvl_idx = 1;
p->levels[0].spaces = -1;
+ p->levels[0].ncount = 0;
p->levels[0].domain = syck_strndup( "", 0 );
}
p->levels[0].status = syck_lvl_header;
@@ -159,6 +160,7 @@ syck_new_parser()
p = S_ALLOC( SyckParser );
p->lvl_capa = ALLOC_CT;
p->levels = S_ALLOC_N( SyckLevel, p->lvl_capa );
+ p->input_type = syck_yaml_utf8;
p->io_type = syck_io_str;
p->io.str = NULL;
p->syms = NULL;
@@ -283,6 +285,13 @@ syck_parser_bad_anchor_handler( SyckParser *p, SyckBadAnchorHandler hdlr )
}
void
+syck_parser_set_input_type( SyckParser *p, enum syck_parser_input input_type )
+{
+ ASSERT( p != NULL );
+ p->input_type = input_type;
+}
+
+void
syck_parser_file( SyckParser *p, FILE *fp, SyckIoFileRead read )
{
ASSERT( p != NULL );
@@ -358,6 +367,7 @@ syck_parser_add_level( SyckParser *p, int len, enum syck_level_status status )
ASSERT( len > p->levels[p->lvl_idx-1].spaces );
p->levels[p->lvl_idx].spaces = len;
+ p->levels[p->lvl_idx].ncount = 0;
p->levels[p->lvl_idx].domain = syck_strndup( p->levels[p->lvl_idx-1].domain, strlen( p->levels[p->lvl_idx-1].domain ) );
p->levels[p->lvl_idx].status = status;
p->lvl_idx += 1;
diff --git a/ext/syck/syck.h b/ext/syck/syck.h
index 8c10f0d..7497576 100644
--- a/ext/syck/syck.h
+++ b/ext/syck/syck.h
@@ -13,11 +13,9 @@
#define SYCK_YAML_MAJOR 1
#define SYCK_YAML_MINOR 0
-#define SYCK_VERSION "0.39"
+#define SYCK_VERSION "0.41"
#define YAML_DOMAIN "yaml.org,2002"
-#include <stdio.h>
-#include <ctype.h>
#include "st.h"
#if defined(__cplusplus)
@@ -139,9 +137,17 @@ enum syck_io_type {
syck_io_file
};
+enum syck_parser_input {
+ syck_yaml_utf8,
+ syck_yaml_utf16,
+ syck_yaml_utf32,
+ syck_bytecode_utf8
+};
+
enum syck_level_status {
syck_lvl_header,
syck_lvl_doc,
+ syck_lvl_open,
syck_lvl_seq,
syck_lvl_map,
syck_lvl_block,
@@ -170,6 +176,7 @@ struct _syck_str {
struct _syck_level {
int spaces;
+ int ncount;
char *domain;
enum syck_level_status status;
};
@@ -185,6 +192,8 @@ struct _syck_parser {
SyckErrorHandler error_handler;
/* InvalidAnchor handler */
SyckBadAnchorHandler bad_anchor_handler;
+ /* Parser input type */
+ enum syck_parser_input input_type;
/* IO type */
enum syck_io_type io_type;
/* Custom buffer size */
@@ -374,8 +383,7 @@ void apply_seq_in_map( SyckParser *, SyckNode * );
/*
* Lexer prototypes
*/
-int syckparse( void * );
-void syckerror( char *msg );
+void syckerror( char * );
#ifndef ST_DATA_T_DEFINED
typedef long st_data_t;
diff --git a/ext/syck/token.c b/ext/syck/token.c
index dc20ecd..d7fa6e4 100644
--- a/ext/syck/token.c
+++ b/ext/syck/token.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.5 on Wed Sep 3 12:48:43 2003 */
+/* Generated by re2c 0.5 on Mon Oct 13 18:40:21 2003 */
#line 1 "token.re"
/*
* token.re
@@ -206,7 +206,9 @@ SyckParser *syck_parser_ptr = NULL;
*/
void eat_comments( SyckParser * );
int is_newline( char *ptr );
-int yywrap();
+int sycklex_yaml_utf8( YYSTYPE *, SyckParser * );
+int sycklex_bytecode_utf8( YYSTYPE *, SyckParser * );
+int syckwrap();
/*
* My own re-entrant sycklex() using re2c.
@@ -216,6 +218,30 @@ int yywrap();
int
sycklex( YYSTYPE *sycklval, SyckParser *parser )
{
+ switch ( parser->input_type )
+ {
+ case syck_yaml_utf8:
+ return sycklex_yaml_utf8( sycklval, parser );
+
+ case syck_yaml_utf16:
+ syckerror( "UTF-16 is not currently supported in Syck.\nPlease contribute code to help this happen!" );
+ break;
+
+ case syck_yaml_utf32:
+ syckerror( "UTF-32 is not currently supported in Syck.\nPlease contribute code to help this happen!" );
+ break;
+
+ case syck_bytecode_utf8:
+ return sycklex_bytecode_utf8( sycklval, parser );
+ }
+}
+
+/*
+ * Parser for standard YAML [UTF-8]
+ */
+int
+sycklex_yaml_utf8( YYSTYPE *sycklval, SyckParser *parser )
+{
int doc_level = 0;
syck_parser_ptr = parser;
if ( YYCURSOR == NULL )
@@ -230,7 +256,7 @@ sycklex( YYSTYPE *sycklval, SyckParser *parser )
return t;
}
-#line 248
+#line 274
if ( YYLINEPTR != YYCURSOR )
@@ -250,42 +276,48 @@ yy1: ++YYCURSOR;
yy0:
if((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy7;
- case '\n': goto yy9;
- case '\r': goto yy11;
- case ' ': goto yy12;
- case '#': goto yy5;
- case '-': goto yy2;
- case '.': goto yy4;
- default: goto yy14;
+ if(yych <= '\037'){
+ if(yych <= '\n'){
+ if(yych <= '\000') goto yy7;
+ if(yych <= '\t') goto yy14;
+ goto yy9;
+ } else {
+ if(yych == '\r') goto yy11;
+ goto yy14;
+ }
+ } else {
+ if(yych <= '#'){
+ if(yych <= ' ') goto yy12;
+ if(yych <= '"') goto yy14;
+ goto yy5;
+ } else {
+ if(yych <= ',') goto yy14;
+ if(yych <= '-') goto yy2;
+ if(yych <= '.') goto yy4;
+ goto yy14;
+ }
}
yy2: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '-': goto yy28;
- default: goto yy3;
- }
+ if(yych == '-') goto yy28;
yy3:
-#line 307
+#line 333
{ YYPOS(0);
goto Document;
}
yy4: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '.': goto yy21;
- default: goto yy3;
- }
+ if(yych == '.') goto yy21;
+ goto yy3;
yy5: yych = *++YYCURSOR;
yy6:
-#line 289
+#line 315
{ eat_comments( parser );
goto Header;
}
yy7: yych = *++YYCURSOR;
yy8:
-#line 293
+#line 319
{ SyckLevel *lvl = CURRENT_LEVEL();
ENSURE_YAML_IEND(lvl, -1);
YYPOS(0);
@@ -295,19 +327,17 @@ yy9: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
goto yy18;
yy10:
-#line 299
+#line 325
{ GOBBLE_UP_YAML_INDENT( doc_level, YYTOKEN );
goto Header;
}
yy11: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy17;
- default: goto yy3;
- }
+ if(yych == '\n') goto yy17;
+ goto yy3;
yy12: yych = *++YYCURSOR;
goto yy16;
yy13:
-#line 303
+#line 329
{ doc_level = YYCURSOR - YYLINEPTR;
goto Header;
}
@@ -316,46 +346,42 @@ yy14: yych = *++YYCURSOR;
yy15: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy16: switch(yych){
- case ' ': goto yy15;
- default: goto yy13;
- }
+yy16: if(yych == ' ') goto yy15;
+ goto yy13;
yy17: yyaccept = 1;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy18: switch(yych){
- case '\n': case ' ': goto yy17;
- case '\r': goto yy19;
- default: goto yy10;
+yy18: if(yych <= '\f'){
+ if(yych == '\n') goto yy17;
+ goto yy10;
+ } else {
+ if(yych <= '\r') goto yy19;
+ if(yych == ' ') goto yy17;
+ goto yy10;
}
yy19: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy17;
- default: goto yy20;
- }
+ if(yych == '\n') goto yy17;
yy20: YYCURSOR = YYMARKER;
switch(yyaccept){
case 1: goto yy10;
case 0: goto yy3;
}
yy21: yych = *++YYCURSOR;
- switch(yych){
- case '.': goto yy22;
- default: goto yy20;
- }
+ if(yych != '.') goto yy20;
yy22: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy23;
- case '\r': goto yy27;
- case ' ': goto yy25;
- default: goto yy20;
+ if(yych <= '\f'){
+ if(yych != '\n') goto yy20;
+ } else {
+ if(yych <= '\r') goto yy27;
+ if(yych == ' ') goto yy25;
+ goto yy20;
}
yy23: yych = *++YYCURSOR;
yy24:
-#line 275
+#line 301
{ SyckLevel *lvl = CURRENT_LEVEL();
if ( lvl->status == syck_lvl_header )
{
@@ -372,30 +398,24 @@ yy24:
yy25: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy26: switch(yych){
- case ' ': goto yy25;
- default: goto yy24;
- }
+yy26: if(yych == ' ') goto yy25;
+ goto yy24;
yy27: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy23;
- default: goto yy20;
- }
+ if(yych == '\n') goto yy23;
+ goto yy20;
yy28: yych = *++YYCURSOR;
- switch(yych){
- case '-': goto yy29;
- default: goto yy20;
- }
+ if(yych != '-') goto yy20;
yy29: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy30;
- case '\r': goto yy34;
- case ' ': goto yy32;
- default: goto yy20;
+ if(yych <= '\f'){
+ if(yych != '\n') goto yy20;
+ } else {
+ if(yych <= '\r') goto yy34;
+ if(yych == ' ') goto yy32;
+ goto yy20;
}
yy30: yych = *++YYCURSOR;
yy31:
-#line 261
+#line 287
{ SyckLevel *lvl = CURRENT_LEVEL();
if ( lvl->status == syck_lvl_header )
{
@@ -412,17 +432,13 @@ yy31:
yy32: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy33: switch(yych){
- case ' ': goto yy32;
- default: goto yy31;
- }
+yy33: if(yych == ' ') goto yy32;
+ goto yy31;
yy34: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy30;
- default: goto yy20;
- }
+ if(yych == '\n') goto yy30;
+ goto yy20;
}
-#line 311
+#line 337
Document:
@@ -443,35 +459,72 @@ yy36: ++YYCURSOR;
yy35:
if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy60;
- case '\n': goto yy37;
- case '\r': goto yy39;
- case ' ': goto yy58;
- case '!': goto yy49;
- case '"': goto yy53;
- case '#': goto yy56;
- case '&': goto yy47;
- case '\'': goto yy51;
- case '*': goto yy48;
- case ',': case ':': goto yy45;
- case '-': case '?': goto yy46;
- case '>': case '|': goto yy55;
- case '[': case '{': goto yy41;
- case ']': case '}': goto yy43;
- default: goto yy62;
+ if(yych <= '+'){
+ if(yych <= '!'){
+ if(yych <= '\f'){
+ if(yych <= '\000') goto yy60;
+ if(yych != '\n') goto yy62;
+ } else {
+ if(yych <= '\r') goto yy39;
+ if(yych <= '\037') goto yy62;
+ if(yych <= ' ') goto yy58;
+ goto yy49;
+ }
+ } else {
+ if(yych <= '&'){
+ if(yych <= '"') goto yy53;
+ if(yych <= '#') goto yy56;
+ if(yych <= '%') goto yy62;
+ goto yy47;
+ } else {
+ if(yych <= '\'') goto yy51;
+ if(yych == '*') goto yy48;
+ goto yy62;
+ }
+ }
+ } else {
+ if(yych <= 'Z'){
+ if(yych <= ':'){
+ if(yych <= ',') goto yy45;
+ if(yych <= '-') goto yy46;
+ if(yych <= '9') goto yy62;
+ goto yy45;
+ } else {
+ if(yych <= '=') goto yy62;
+ if(yych <= '>') goto yy55;
+ if(yych <= '?') goto yy46;
+ goto yy62;
+ }
+ } else {
+ if(yych <= 'z'){
+ if(yych <= '[') goto yy41;
+ if(yych == ']') goto yy43;
+ goto yy62;
+ } else {
+ if(yych <= '{') goto yy41;
+ if(yych <= '|') goto yy55;
+ if(yych <= '}') goto yy43;
+ goto yy62;
+ }
+ }
}
yy37: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy90;
yy38:
-#line 325
+#line 351
{ /* Isolate spaces */
int indt_len;
GOBBLE_UP_YAML_INDENT( indt_len, YYTOKEN );
lvl = CURRENT_LEVEL();
doc_level = 0;
+ /* XXX: Comment lookahead */
+ if ( *YYCURSOR == '#' )
+ {
+ goto Document;
+ }
+
/* Check for open indent */
ENSURE_YAML_IEND(lvl, indt_len);
ENSURE_YAML_IOPEN(lvl, indt_len, 0);
@@ -482,18 +535,15 @@ yy38:
return YAML_INDENT;
}
yy39: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy89;
- default: goto yy40;
- }
+ if(yych == '\n') goto yy89;
yy40:
-#line 413
+#line 445
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
goto Plain;
}
yy41: yych = *++YYCURSOR;
yy42:
-#line 341
+#line 373
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
lvl = CURRENT_LEVEL();
ADD_LEVEL(lvl->spaces + 1, syck_lvl_inline);
@@ -501,201 +551,123 @@ yy42:
}
yy43: yych = *++YYCURSOR;
yy44:
-#line 347
+#line 379
{ POP_LEVEL();
return YYTOKEN[0];
}
yy45: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\n': goto yy84;
- case '\r': goto yy88;
- case ' ': goto yy86;
- default: goto yy40;
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy84;
+ goto yy40;
+ } else {
+ if(yych <= '\r') goto yy88;
+ if(yych == ' ') goto yy86;
+ goto yy40;
}
yy46: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\n': goto yy79;
- case '\r': goto yy83;
- case ' ': goto yy81;
- default: goto yy40;
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy79;
+ goto yy40;
+ } else {
+ if(yych <= '\r') goto yy83;
+ if(yych == ' ') goto yy81;
+ goto yy40;
}
yy47: yych = *++YYCURSOR;
- switch(yych){
- case '-': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy76;
- default: goto yy40;
+ if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= ',') goto yy40;
+ goto yy76;
+ } else {
+ if(yych <= '/') goto yy40;
+ if(yych <= '9') goto yy76;
+ goto yy40;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy76;
+ if(yych <= '^') goto yy40;
+ goto yy76;
+ } else {
+ if(yych <= '`') goto yy40;
+ if(yych <= 'z') goto yy76;
+ goto yy40;
+ }
}
yy48: yych = *++YYCURSOR;
- switch(yych){
- case '-': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy73;
- default: goto yy40;
+ if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych <= ',') goto yy40;
+ goto yy73;
+ } else {
+ if(yych <= '/') goto yy40;
+ if(yych <= '9') goto yy73;
+ goto yy40;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy73;
+ if(yych <= '^') goto yy40;
+ goto yy73;
+ } else {
+ if(yych <= '`') goto yy40;
+ if(yych <= 'z') goto yy73;
+ goto yy40;
+ }
}
yy49: yych = *++YYCURSOR;
yy50:
-#line 386
+#line 418
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
goto TransferMethod; }
yy51: yych = *++YYCURSOR;
yy52:
-#line 389
+#line 421
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
goto SingleQuote; }
yy53: yych = *++YYCURSOR;
yy54:
-#line 392
+#line 424
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
goto DoubleQuote; }
yy55: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\n': goto yy68;
- case '\r': goto yy72;
- case ' ': goto yy70;
- case '+': case '-': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy65;
- default: goto yy40;
+ if(yych <= ' '){
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy68;
+ goto yy40;
+ } else {
+ if(yych <= '\r') goto yy72;
+ if(yych <= '\037') goto yy40;
+ goto yy70;
+ }
+ } else {
+ if(yych <= ','){
+ if(yych == '+') goto yy65;
+ goto yy40;
+ } else {
+ if(yych <= '-') goto yy65;
+ if(yych <= '/') goto yy40;
+ if(yych <= '9') goto yy65;
+ goto yy40;
+ }
}
yy56: yych = *++YYCURSOR;
yy57:
-#line 402
+#line 434
{ eat_comments( parser );
goto Document;
}
yy58: yych = *++YYCURSOR;
goto yy64;
yy59:
-#line 406
+#line 438
{ goto Document; }
yy60: yych = *++YYCURSOR;
yy61:
-#line 408
+#line 440
{ ENSURE_YAML_IEND(lvl, -1);
YYPOS(0);
return 0;
@@ -705,28 +677,26 @@ yy62: yych = *++YYCURSOR;
yy63: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy64: switch(yych){
- case ' ': goto yy63;
- default: goto yy59;
- }
+yy64: if(yych == ' ') goto yy63;
+ goto yy59;
yy65: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy66: switch(yych){
- case '\n': goto yy68;
- case '\r': goto yy72;
- case ' ': goto yy70;
- case '+': case '-': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy65;
- default: goto yy67;
+yy66: if(yych <= ' '){
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy68;
+ } else {
+ if(yych <= '\r') goto yy72;
+ if(yych >= ' ') goto yy70;
+ }
+ } else {
+ if(yych <= ','){
+ if(yych == '+') goto yy65;
+ } else {
+ if(yych <= '-') goto yy65;
+ if(yych <= '/') goto yy67;
+ if(yych <= '9') goto yy65;
+ }
}
yy67: YYCURSOR = YYMARKER;
switch(yyaccept){
@@ -735,7 +705,7 @@ yy67: YYCURSOR = YYMARKER;
}
yy68: yych = *++YYCURSOR;
yy69:
-#line 395
+#line 427
{ if ( is_newline( YYCURSOR - 1 ) )
{
YYCURSOR--;
@@ -745,83 +715,32 @@ yy69:
yy70: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy71: switch(yych){
- case ' ': goto yy70;
- default: goto yy69;
- }
+yy71: if(yych == ' ') goto yy70;
+ goto yy69;
yy72: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy68;
- default: goto yy67;
- }
+ if(yych == '\n') goto yy68;
+ goto yy67;
yy73: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy74: switch(yych){
- case '-': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy73;
- default: goto yy75;
+yy74: if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych >= '-') goto yy73;
+ } else {
+ if(yych <= '/') goto yy75;
+ if(yych <= '9') goto yy73;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy73;
+ if(yych >= '_') goto yy73;
+ } else {
+ if(yych <= '`') goto yy75;
+ if(yych <= 'z') goto yy73;
+ }
}
yy75:
-#line 381
+#line 413
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
sycklval->name = syck_strndup( YYTOKEN + 1, YYCURSOR - YYTOKEN - 1 );
return YAML_ALIAS;
@@ -829,71 +748,24 @@ yy75:
yy76: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy77: switch(yych){
- case '-': case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z': case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy76;
- default: goto yy78;
+yy77: if(yych <= '@'){
+ if(yych <= '-'){
+ if(yych >= '-') goto yy76;
+ } else {
+ if(yych <= '/') goto yy78;
+ if(yych <= '9') goto yy76;
+ }
+ } else {
+ if(yych <= '_'){
+ if(yych <= 'Z') goto yy76;
+ if(yych >= '_') goto yy76;
+ } else {
+ if(yych <= '`') goto yy78;
+ if(yych <= 'z') goto yy76;
+ }
}
yy78:
-#line 369
+#line 401
{ ENSURE_YAML_IOPEN(lvl, doc_level, 1);
sycklval->name = syck_strndup( YYTOKEN + 1, YYCURSOR - YYTOKEN - 1 );
@@ -907,7 +779,7 @@ yy78:
}
yy79: yych = *++YYCURSOR;
yy80:
-#line 355
+#line 387
{ ENSURE_YAML_IOPEN(lvl, YYTOKEN - YYLINEPTR, 1);
FORCE_NEXT_TOKEN(YAML_IOPEN);
if ( is_newline( YYCURSOR ) || is_newline( YYCURSOR - 1 ) )
@@ -924,51 +796,44 @@ yy80:
yy81: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy82: switch(yych){
- case ' ': goto yy81;
- default: goto yy80;
- }
+yy82: if(yych == ' ') goto yy81;
+ goto yy80;
yy83: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy79;
- default: goto yy67;
- }
+ if(yych == '\n') goto yy79;
+ goto yy67;
yy84: yych = *++YYCURSOR;
yy85:
-#line 351
+#line 383
{ YYPOS(1);
return YYTOKEN[0];
}
yy86: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy87: switch(yych){
- case ' ': goto yy86;
- default: goto yy85;
- }
+yy87: if(yych == ' ') goto yy86;
+ goto yy85;
yy88: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy84;
- default: goto yy67;
- }
+ if(yych == '\n') goto yy84;
+ goto yy67;
yy89: yyaccept = 0;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy90: switch(yych){
- case '\n': case ' ': goto yy89;
- case '\r': goto yy91;
- default: goto yy38;
+yy90: if(yych <= '\f'){
+ if(yych == '\n') goto yy89;
+ goto yy38;
+ } else {
+ if(yych <= '\r') goto yy91;
+ if(yych == ' ') goto yy89;
+ goto yy38;
}
yy91: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy89;
- default: goto yy67;
- }
+ if(yych == '\n') goto yy89;
+ goto yy67;
}
-#line 417
+#line 449
}
@@ -984,11 +849,13 @@ yy93: ++YYCURSOR;
yy92:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy94;
- case ' ': goto yy97;
- case '%': goto yy95;
- default: goto yy99;
+ if(yych <= ' '){
+ if(yych <= '\000') goto yy94;
+ if(yych <= '\037') goto yy99;
+ goto yy97;
+ } else {
+ if(yych == '%') goto yy95;
+ goto yy99;
}
yy94: YYCURSOR = YYMARKER;
switch(yyaccept){
@@ -996,348 +863,52 @@ yy94: YYCURSOR = YYMARKER;
}
yy95: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '.':
- case '/':
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- case ':':
- case ';':
- case '<':
- case '=':
- case '>':
- case '?':
- case '@':
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z':
- case '[':
- case '\\':
- case ']':
- case '^':
- case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy102;
- default: goto yy96;
- }
+ if(yych <= '-') goto yy96;
+ if(yych == '`') goto yy96;
+ if(yych <= 'z') goto yy102;
yy96:
-#line 430
+#line 462
{ YYCURSOR = YYTOKTMP;
return YAML_DOCSEP;
}
yy97: yych = *++YYCURSOR;
goto yy101;
yy98:
-#line 428
+#line 460
{ goto Directive; }
yy99: yych = *++YYCURSOR;
goto yy96;
yy100: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy101: switch(yych){
- case ' ': goto yy100;
- default: goto yy98;
- }
+yy101: if(yych == ' ') goto yy100;
+ goto yy98;
yy102: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy103: switch(yych){
- case '.':
- case '/':
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case ';':
- case '<':
- case '=':
- case '>':
- case '?':
- case '@':
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z':
- case '[':
- case '\\':
- case ']':
- case '^':
- case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy102;
- case ':': goto yy104;
- default: goto yy94;
+yy103: if(yych <= ':'){
+ if(yych <= '-') goto yy94;
+ if(yych <= '9') goto yy102;
+ } else {
+ if(yych == '`') goto yy94;
+ if(yych <= 'z') goto yy102;
+ goto yy94;
}
yy104: yych = *++YYCURSOR;
- switch(yych){
- case '.':
- case '/':
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- case ':':
- case ';':
- case '<':
- case '=':
- case '>':
- case '?':
- case '@':
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z':
- case '[':
- case '\\':
- case ']':
- case '^':
- case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy105;
- default: goto yy94;
- }
+ if(yych <= '-') goto yy94;
+ if(yych == '`') goto yy94;
+ if(yych >= '{') goto yy94;
yy105: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy106: switch(yych){
- case '.':
- case '/':
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- case ':':
- case ';':
- case '<':
- case '=':
- case '>':
- case '?':
- case '@':
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'N':
- case 'O':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'T':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Y':
- case 'Z':
- case '[':
- case '\\':
- case ']':
- case '^':
- case '_': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'n':
- case 'o':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 't':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'y':
- case 'z': goto yy105;
- default: goto yy107;
- }
+yy106: if(yych <= '-') goto yy107;
+ if(yych == '`') goto yy107;
+ if(yych <= 'z') goto yy105;
yy107:
-#line 426
+#line 458
{ goto Directive; }
}
-#line 433
+#line 465
}
@@ -1367,21 +938,31 @@ yy109: ++YYCURSOR;
yy108:
if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy120;
- case '\n': goto yy110;
- case '\r': goto yy112;
- case ' ': goto yy118;
- case ',': goto yy117;
- case ':': goto yy114;
- case ']': case '}': goto yy115;
- default: goto yy122;
+ if(yych <= '+'){
+ if(yych <= '\f'){
+ if(yych <= '\000') goto yy120;
+ if(yych != '\n') goto yy122;
+ } else {
+ if(yych <= '\r') goto yy112;
+ if(yych == ' ') goto yy118;
+ goto yy122;
+ }
+ } else {
+ if(yych <= '\\'){
+ if(yych <= ',') goto yy117;
+ if(yych == ':') goto yy114;
+ goto yy122;
+ } else {
+ if(yych <= ']') goto yy115;
+ if(yych == '}') goto yy115;
+ goto yy122;
+ }
}
yy110: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy136;
yy111:
-#line 456
+#line 488
{ int indt_len, nl_count = 0;
SyckLevel *lvl;
char *tok = YYTOKTMP;
@@ -1414,26 +995,25 @@ yy111:
goto Plain2;
}
yy112: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy135;
- default: goto yy113;
- }
+ if(yych == '\n') goto yy135;
yy113:
-#line 510
+#line 542
{ QUOTECATS(qstr, qcapa, qidx, YYTOKTMP, YYCURSOR - YYTOKTMP);
goto Plain2;
}
yy114: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\n': goto yy130;
- case '\r': goto yy134;
- case ' ': goto yy132;
- default: goto yy113;
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy130;
+ goto yy113;
+ } else {
+ if(yych <= '\r') goto yy134;
+ if(yych == ' ') goto yy132;
+ goto yy113;
}
yy115: yych = *++YYCURSOR;
yy116:
-#line 490
+#line 522
{ if ( plvl->status != syck_lvl_inline )
{
if ( *(YYCURSOR - 1) == ' ' || is_newline( YYCURSOR - 1 ) )
@@ -1447,29 +1027,28 @@ yy116:
}
yy117: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\n': goto yy125;
- case '\r': goto yy128;
- case ' ': goto yy126;
- default: goto yy113;
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy125;
+ goto yy113;
+ } else {
+ if(yych <= '\r') goto yy128;
+ if(yych == ' ') goto yy126;
+ goto yy113;
}
yy118: yych = *++YYCURSOR;
- switch(yych){
- case '#': goto yy123;
- default: goto yy119;
- }
+ if(yych == '#') goto yy123;
yy119:
-#line 508
+#line 540
{ goto Plain3; }
yy120: yych = *++YYCURSOR;
yy121:
-#line 506
+#line 538
{ RETURN_IMPLICIT(); }
yy122: yych = *++YYCURSOR;
goto yy113;
yy123: yych = *++YYCURSOR;
yy124:
-#line 502
+#line 534
{ eat_comments( parser );
RETURN_IMPLICIT();
}
@@ -1478,15 +1057,10 @@ yy125: yych = *++YYCURSOR;
yy126: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy127: switch(yych){
- case ' ': goto yy126;
- default: goto yy116;
- }
+yy127: if(yych == ' ') goto yy126;
+ goto yy116;
yy128: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy125;
- default: goto yy129;
- }
+ if(yych == '\n') goto yy125;
yy129: YYCURSOR = YYMARKER;
switch(yyaccept){
case 0: goto yy111;
@@ -1494,38 +1068,35 @@ yy129: YYCURSOR = YYMARKER;
}
yy130: yych = *++YYCURSOR;
yy131:
-#line 488
+#line 520
{ RETURN_IMPLICIT(); }
yy132: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy133: switch(yych){
- case ' ': goto yy132;
- default: goto yy131;
- }
+yy133: if(yych == ' ') goto yy132;
+ goto yy131;
yy134: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy130;
- default: goto yy129;
- }
+ if(yych == '\n') goto yy130;
+ goto yy129;
yy135: yyaccept = 0;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy136: switch(yych){
- case '\n': case ' ': goto yy135;
- case '\r': goto yy137;
- default: goto yy111;
+yy136: if(yych <= '\f'){
+ if(yych == '\n') goto yy135;
+ goto yy111;
+ } else {
+ if(yych <= '\r') goto yy137;
+ if(yych == ' ') goto yy135;
+ goto yy111;
}
yy137: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy135;
- default: goto yy129;
- }
+ if(yych == '\n') goto yy135;
+ goto yy129;
}
-#line 514
+#line 546
}
@@ -1546,18 +1117,19 @@ yy139: ++YYCURSOR;
yy138:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy146;
- case '\n': goto yy140;
- case '\r': goto yy142;
- case '\'': goto yy144;
- default: goto yy147;
+ if(yych <= '\f'){
+ if(yych <= '\000') goto yy146;
+ if(yych != '\n') goto yy147;
+ } else {
+ if(yych <= '\r') goto yy142;
+ if(yych == '\'') goto yy144;
+ goto yy147;
}
yy140: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy151;
yy141:
-#line 528
+#line 560
{ int indt_len;
int nl_count = 0;
SyckLevel *lvl;
@@ -1594,22 +1166,16 @@ yy141:
goto SingleQuote2;
}
yy142: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy150;
- default: goto yy143;
- }
+ if(yych == '\n') goto yy150;
yy143:
-#line 583
+#line 615
{ QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1));
goto SingleQuote2;
}
yy144: yych = *++YYCURSOR;
- switch(yych){
- case '\'': goto yy148;
- default: goto yy145;
- }
+ if(yych == '\'') goto yy148;
yy145:
-#line 568
+#line 600
{ SyckLevel *lvl;
SyckNode *n = syck_alloc_str();
lvl = CURRENT_LEVEL();
@@ -1630,7 +1196,7 @@ yy147: yych = *++YYCURSOR;
goto yy143;
yy148: yych = *++YYCURSOR;
yy149:
-#line 564
+#line 596
{ QUOTECAT(qstr, qcapa, qidx, '\'');
goto SingleQuote2;
}
@@ -1638,24 +1204,24 @@ yy150: yyaccept = 0;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy151: switch(yych){
- case '\n': case ' ': goto yy150;
- case '\r': goto yy152;
- default: goto yy141;
+yy151: if(yych <= '\f'){
+ if(yych == '\n') goto yy150;
+ goto yy141;
+ } else {
+ if(yych <= '\r') goto yy152;
+ if(yych == ' ') goto yy150;
+ goto yy141;
}
yy152: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy150;
- default: goto yy153;
- }
+ if(yych == '\n') goto yy150;
yy153: YYCURSOR = YYMARKER;
switch(yyaccept){
case 0: goto yy141;
}
}
-#line 587
+#line 619
}
@@ -1680,19 +1246,29 @@ yy155: ++YYCURSOR;
yy154:
if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy161;
- case '\n': goto yy156;
- case '\r': goto yy158;
- case '"': goto yy163;
- case '\\': goto yy160;
- default: goto yy164;
+ if(yych <= '\r'){
+ if(yych <= '\t'){
+ if(yych <= '\000') goto yy161;
+ goto yy164;
+ } else {
+ if(yych <= '\n') goto yy156;
+ if(yych <= '\f') goto yy164;
+ goto yy158;
+ }
+ } else {
+ if(yych <= '"'){
+ if(yych <= '!') goto yy164;
+ goto yy163;
+ } else {
+ if(yych == '\\') goto yy160;
+ goto yy164;
+ }
}
yy156: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy178;
yy157:
-#line 605
+#line 637
{ int indt_len;
int nl_count = 0;
SyckLevel *lvl;
@@ -1733,30 +1309,59 @@ yy157:
goto DoubleQuote2;
}
yy158: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy177;
- default: goto yy159;
- }
+ if(yych == '\n') goto yy177;
yy159:
-#line 690
+#line 722
{ QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1));
goto DoubleQuote2;
}
yy160: yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case '\n': goto yy168;
- case '\r': goto yy170;
- case ' ': goto yy165;
- case '"': case '\\': case 'a':
- case 'b': case 'e':
- case 'f': case 'n': case 'r': case 't': case 'v': goto yy172;
- case 'x': goto yy171;
- default: goto yy159;
+ if(yych <= 'b'){
+ if(yych <= ' '){
+ if(yych <= '\f'){
+ if(yych == '\n') goto yy168;
+ goto yy159;
+ } else {
+ if(yych <= '\r') goto yy170;
+ if(yych <= '\037') goto yy159;
+ goto yy165;
+ }
+ } else {
+ if(yych <= '['){
+ if(yych == '"') goto yy172;
+ goto yy159;
+ } else {
+ if(yych <= '\\') goto yy172;
+ if(yych <= '`') goto yy159;
+ goto yy172;
+ }
+ }
+ } else {
+ if(yych <= 'r'){
+ if(yych <= 'm'){
+ if(yych <= 'd') goto yy159;
+ if(yych <= 'f') goto yy172;
+ goto yy159;
+ } else {
+ if(yych <= 'n') goto yy172;
+ if(yych <= 'q') goto yy159;
+ goto yy172;
+ }
+ } else {
+ if(yych <= 'u'){
+ if(yych == 't') goto yy172;
+ goto yy159;
+ } else {
+ if(yych <= 'v') goto yy172;
+ if(yych == 'x') goto yy171;
+ goto yy159;
+ }
+ }
}
yy161: yych = *++YYCURSOR;
yy162:
-#line 675
+#line 707
{ SyckLevel *lvl;
SyckNode *n = syck_alloc_str();
lvl = CURRENT_LEVEL();
@@ -1778,11 +1383,11 @@ yy164: yych = *++YYCURSOR;
yy165: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy166: switch(yych){
- case '\n': goto yy168;
- case '\r': goto yy170;
- case ' ': goto yy165;
- default: goto yy167;
+yy166: if(yych <= '\f'){
+ if(yych == '\n') goto yy168;
+ } else {
+ if(yych <= '\r') goto yy170;
+ if(yych == ' ') goto yy165;
}
yy167: YYCURSOR = YYMARKER;
switch(yyaccept){
@@ -1791,43 +1396,28 @@ yy167: YYCURSOR = YYMARKER;
}
yy168: yych = *++YYCURSOR;
yy169:
-#line 670
+#line 702
{ keep_nl = 0;
YYCURSOR--;
goto DoubleQuote2;
}
yy170: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy168;
- default: goto yy167;
- }
+ if(yych == '\n') goto yy168;
+ goto yy167;
yy171: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f': goto yy174;
- default: goto yy167;
+ if(yych <= '@'){
+ if(yych <= '/') goto yy167;
+ if(yych <= '9') goto yy174;
+ goto yy167;
+ } else {
+ if(yych <= 'F') goto yy174;
+ if(yych <= '`') goto yy167;
+ if(yych <= 'f') goto yy174;
+ goto yy167;
}
yy172: yych = *++YYCURSOR;
yy173:
-#line 645
+#line 677
{ char ch = *( YYCURSOR - 1 );
switch ( ch )
{
@@ -1844,32 +1434,17 @@ yy173:
goto DoubleQuote2;
}
yy174: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f': goto yy175;
- default: goto yy167;
+ if(yych <= '@'){
+ if(yych <= '/') goto yy167;
+ if(yych >= ':') goto yy167;
+ } else {
+ if(yych <= 'F') goto yy175;
+ if(yych <= '`') goto yy167;
+ if(yych >= 'g') goto yy167;
}
yy175: yych = *++YYCURSOR;
yy176:
-#line 661
+#line 693
{ long ch;
char *chr_text = syck_strndup( YYTOKTMP, 4 );
chr_text[0] = '0';
@@ -1882,20 +1457,21 @@ yy177: yyaccept = 0;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy178: switch(yych){
- case '\n': case ' ': goto yy177;
- case '\r': goto yy179;
- default: goto yy157;
+yy178: if(yych <= '\f'){
+ if(yych == '\n') goto yy177;
+ goto yy157;
+ } else {
+ if(yych <= '\r') goto yy179;
+ if(yych == ' ') goto yy177;
+ goto yy157;
}
yy179: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy177;
- default: goto yy167;
- }
+ if(yych == '\n') goto yy177;
+ goto yy167;
}
-#line 694
+#line 726
}
@@ -1916,13 +1492,22 @@ yy181: ++YYCURSOR;
yy180:
if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy182;
- case '\n': goto yy183;
- case '\r': goto yy186;
- case ' ': goto yy185;
- case '\\': goto yy188;
- default: goto yy189;
+ if(yych <= '\r'){
+ if(yych <= '\t'){
+ if(yych >= '\001') goto yy189;
+ } else {
+ if(yych <= '\n') goto yy183;
+ if(yych <= '\f') goto yy189;
+ goto yy186;
+ }
+ } else {
+ if(yych <= ' '){
+ if(yych <= '\037') goto yy189;
+ goto yy185;
+ } else {
+ if(yych == '\\') goto yy188;
+ goto yy189;
+ }
}
yy182: YYCURSOR = YYMARKER;
switch(yyaccept){
@@ -1930,7 +1515,7 @@ yy182: YYCURSOR = YYMARKER;
}
yy183: yych = *++YYCURSOR;
yy184:
-#line 708
+#line 740
{ SyckLevel *lvl;
YYCURSOR = YYTOKTMP;
if ( YYCURSOR == YYTOKEN + 1 )
@@ -1983,74 +1568,39 @@ yy184:
yy185: yych = *++YYCURSOR;
goto yy196;
yy186: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy194;
- default: goto yy187;
- }
+ if(yych == '\n') goto yy194;
yy187:
-#line 770
+#line 802
{ QUOTECAT(qstr, qcapa, qidx, *(YYCURSOR - 1));
goto TransferMethod2;
}
yy188: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- switch(yych){
- case 'x': goto yy190;
- default: goto yy187;
- }
+ if(yych == 'x') goto yy190;
+ goto yy187;
yy189: yych = *++YYCURSOR;
goto yy187;
yy190: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f': goto yy191;
- default: goto yy182;
+ if(yych <= '@'){
+ if(yych <= '/') goto yy182;
+ if(yych >= ':') goto yy182;
+ } else {
+ if(yych <= 'F') goto yy191;
+ if(yych <= '`') goto yy182;
+ if(yych >= 'g') goto yy182;
}
yy191: yych = *++YYCURSOR;
- switch(yych){
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F': case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f': goto yy192;
- default: goto yy182;
+ if(yych <= '@'){
+ if(yych <= '/') goto yy182;
+ if(yych >= ':') goto yy182;
+ } else {
+ if(yych <= 'F') goto yy192;
+ if(yych <= '`') goto yy182;
+ if(yych >= 'g') goto yy182;
}
yy192: yych = *++YYCURSOR;
yy193:
-#line 761
+#line 793
{ long ch;
char *chr_text = syck_strndup( YYTOKTMP, 4 );
chr_text[0] = '0';
@@ -2064,12 +1614,10 @@ yy194: yych = *++YYCURSOR;
yy195: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy196: switch(yych){
- case ' ': goto yy195;
- default: goto yy184;
- }
+yy196: if(yych == ' ') goto yy195;
+ goto yy184;
}
-#line 775
+#line 807
}
@@ -2123,18 +1671,19 @@ yy198: ++YYCURSOR;
yy197:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy205;
- case '\n': goto yy199;
- case '\r': goto yy201;
- case '#': goto yy203;
- default: goto yy207;
+ if(yych <= '\f'){
+ if(yych <= '\000') goto yy205;
+ if(yych != '\n') goto yy207;
+ } else {
+ if(yych <= '\r') goto yy201;
+ if(yych == '#') goto yy203;
+ goto yy207;
}
yy199: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy209;
yy200:
-#line 822
+#line 854
{ char *pacer;
char *tok = YYTOKTMP;
int indt_len = 0, nl_count = 0, fold_nl = 0, nl_begin = 0;
@@ -2201,18 +1750,15 @@ yy200:
goto ScalarBlock2;
}
yy201: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy208;
- default: goto yy202;
- }
+ if(yych == '\n') goto yy208;
yy202:
-#line 908
+#line 940
{ QUOTECAT(qstr, qcapa, qidx, *YYTOKTMP);
goto ScalarBlock2;
}
yy203: yych = *++YYCURSOR;
yy204:
-#line 889
+#line 921
{ lvl = CURRENT_LEVEL();
if ( lvl->status != syck_lvl_block )
{
@@ -2227,7 +1773,7 @@ yy204:
}
yy205: yych = *++YYCURSOR;
yy206:
-#line 903
+#line 935
{ YYCURSOR--;
POP_LEVEL();
RETURN_YAML_BLOCK();
@@ -2238,24 +1784,24 @@ yy208: yyaccept = 0;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy209: switch(yych){
- case '\n': case ' ': goto yy208;
- case '\r': goto yy210;
- default: goto yy200;
+yy209: if(yych <= '\f'){
+ if(yych == '\n') goto yy208;
+ goto yy200;
+ } else {
+ if(yych <= '\r') goto yy210;
+ if(yych == ' ') goto yy208;
+ goto yy200;
}
yy210: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy208;
- default: goto yy211;
- }
+ if(yych == '\n') goto yy208;
yy211: YYCURSOR = YYMARKER;
switch(yyaccept){
case 0: goto yy200;
}
}
-#line 913
+#line 945
}
@@ -2280,15 +1826,17 @@ yy213: ++YYCURSOR;
yy212:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
- switch(yych){
- case '\000': goto yy214;
- case '\n': goto yy216;
- case '\r': goto yy217;
- default: goto yy219;
+ if(yych <= '\n'){
+ if(yych <= '\000') goto yy214;
+ if(yych <= '\t') goto yy219;
+ goto yy216;
+ } else {
+ if(yych == '\r') goto yy217;
+ goto yy219;
}
yy214: yych = *++YYCURSOR;
yy215:
-#line 931
+#line 963
{ YYCURSOR = tok;
return;
}
@@ -2296,12 +1844,9 @@ yy216: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy221;
yy217: yych = *++YYCURSOR;
- switch(yych){
- case '\n': goto yy220;
- default: goto yy218;
- }
+ if(yych == '\n') goto yy220;
yy218:
-#line 935
+#line 967
{ goto Comment;
}
yy219: yych = *++YYCURSOR;
@@ -2310,24 +1855,18 @@ yy220: yyaccept = 0;
YYMARKER = ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy221: switch(yych){
- case '\n': goto yy220;
- case '\r': goto yy222;
- default: goto yy215;
- }
+yy221: if(yych == '\n') goto yy220;
+ if(yych != '\r') goto yy215;
yy222: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- switch(yych){
- case '\n': goto yy220;
- default: goto yy223;
- }
+ if(yych == '\n') goto yy220;
yy223: YYCURSOR = YYMARKER;
switch(yyaccept){
case 0: goto yy215;
}
}
-#line 938
+#line 970
}