/* Generated by re2c 0.5 on Sat May 10 12:56:19 2003 */ #line 1 "implicit.re" // // implicit.re // // $Author$ // $Date$ // // Copyright (C) 2003 why the lucky stiff // #include "syck.h" #define YYCTYPE char #define YYCURSOR cursor #define YYMARKER marker #define YYLIMIT limit #define YYFILL(n) void try_tag_implicit( SyckNode *n, int taguri ) { char *tid; if ( n->kind != syck_str_kind ) return; tid = syck_match_implicit( n->data.str->ptr, n->data.str->len ); if ( taguri == 1 ) { n->type_id = syck_taguri( YAML_DOMAIN, tid, strlen( tid ) ); } else { n->type_id = syck_strndup( tid, strlen( tid ) ); } } char *syck_match_implicit( char *str, size_t len ) { char *cursor, *limit, *marker; cursor = str; limit = str + len; { YYCTYPE yych; unsigned int yyaccept; static unsigned char yybm[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 193, 0, 4, 0, 215, 231, 231, 231, 231, 231, 231, 231, 167, 167, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; goto yy0; yy1: ++YYCURSOR; yy0: if((YYLIMIT - YYCURSOR) < 26) YYFILL(26); yych = *YYCURSOR; if(yych <= 'S'){ if(yych <= '/'){ if(yych <= '+'){ if(yych <= '\000') goto yy2; if(yych <= '*') goto yy20; goto yy15; } else { if(yych <= ',') goto yy20; if(yych <= '-') goto yy16; if(yych <= '.') goto yy19; goto yy20; } } else { if(yych <= 'F'){ if(yych <= '0') goto yy17; if(yych <= '9') goto yy18; if(yych <= 'E') goto yy20; goto yy14; } else { if(yych <= 'M') goto yy20; if(yych <= 'N') goto yy6; if(yych <= 'O') goto yy12; goto yy20; } } } else { if(yych <= 'n'){ if(yych <= 'Y'){ if(yych <= 'T') goto yy8; if(yych <= 'X') goto yy20; goto yy10; } else { if(yych == 'f') goto yy13; if(yych <= 'm') goto yy20; goto yy5; } } else { if(yych <= 'x'){ if(yych <= 'o') goto yy11; if(yych == 't') goto yy7; goto yy20; } else { if(yych <= 'y') goto yy9; if(yych == '~') goto yy3; goto yy20; } } } yy2: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy4; } yy3: yych = *++YYCURSOR; if(yych <= '\000') goto yy185; yy4: #line 102 { return "str"; } yy5: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'o') goto yy158; if(yych == 'u') goto yy188; goto yy4; yy6: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= 'U'){ if(yych == 'O') goto yy158; if(yych <= 'T') goto yy4; goto yy181; } else { if(yych <= 'o'){ if(yych <= 'n') goto yy4; goto yy158; } else { if(yych == 'u') goto yy182; goto yy4; } } yy7: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'r') goto yy179; goto yy4; yy8: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'R') goto yy175; if(yych == 'r') goto yy176; goto yy4; yy9: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'e') goto yy174; goto yy4; yy10: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'E') goto yy172; if(yych == 'e') goto yy173; goto yy4; yy11: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'f') goto yy171; if(yych == 'n') goto yy168; goto yy4; yy12: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= 'N'){ if(yych == 'F') goto yy166; if(yych <= 'M') goto yy4; goto yy168; } else { if(yych <= 'f'){ if(yych <= 'e') goto yy4; goto yy167; } else { if(yych == 'n') goto yy168; goto yy4; } } yy13: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'a') goto yy163; goto yy4; yy14: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'A') goto yy154; if(yych == 'a') goto yy155; goto yy4; yy15: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '/'){ if(yych == '.') goto yy153; goto yy4; } else { if(yych <= '0') goto yy144; if(yych <= '9') goto yy38; goto yy4; } yy16: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '/'){ if(yych == '.') goto yy143; goto yy4; } else { if(yych <= '0') goto yy144; if(yych <= '9') goto yy38; goto yy4; } yy17: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '.'){ if(yych <= '+'){ if(yych <= '\000') goto yy42; goto yy4; } else { if(yych <= ',') goto yy128; if(yych <= '-') goto yy4; goto yy40; } } else { if(yych <= '9'){ if(yych <= '/') goto yy4; if(yych <= '7') goto yy126; goto yy127; } else { if(yych == 'x') goto yy130; goto yy4; } } yy18: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '-'){ if(yych <= '\000') goto yy42; if(yych == ',') goto yy38; goto yy4; } else { if(yych <= '.') goto yy40; if(yych <= '/') goto yy4; if(yych <= '9') goto yy37; goto yy4; } yy19: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= 'N'){ if(yych == 'I') goto yy24; if(yych <= 'M') goto yy4; goto yy22; } else { if(yych <= 'i'){ if(yych <= 'h') goto yy4; goto yy23; } else { if(yych == 'n') goto yy21; goto yy4; } } yy20: yych = *++YYCURSOR; goto yy4; yy21: yych = *++YYCURSOR; if(yych == 'a') goto yy36; goto yy2; yy22: yych = *++YYCURSOR; if(yych == 'A') goto yy31; if(yych == 'a') goto yy32; goto yy2; yy23: yych = *++YYCURSOR; if(yych == 'n') goto yy30; goto yy2; yy24: yych = *++YYCURSOR; if(yych == 'N') goto yy25; if(yych == 'n') goto yy26; goto yy2; yy25: yych = *++YYCURSOR; if(yych == 'F') goto yy27; goto yy2; yy26: yych = *++YYCURSOR; if(yych != 'f') goto yy2; yy27: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy28: yych = *++YYCURSOR; yy29: #line 88 { return "float#inf"; } yy30: yych = *++YYCURSOR; if(yych == 'f') goto yy27; goto yy2; yy31: yych = *++YYCURSOR; if(yych == 'N') goto yy33; goto yy2; yy32: yych = *++YYCURSOR; if(yych != 'N') goto yy2; yy33: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy34: yych = *++YYCURSOR; yy35: #line 92 { return "float#nan"; } yy36: yych = *++YYCURSOR; if(yych == 'n') goto yy33; goto yy2; yy37: yych = *++YYCURSOR; if(yych <= '/') goto yy39; if(yych <= '9') goto yy56; goto yy39; yy38: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy39: if(yybm[0+yych] & 1) goto yy38; if(yych <= '\000') goto yy42; if(yych != '.') goto yy2; yy40: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy41: if(yybm[0+yych] & 2) goto yy40; if(yych <= '.'){ if(yych <= '+'){ if(yych <= '\000') goto yy46; goto yy2; } else { if(yych <= ',') goto yy44; if(yych <= '-') goto yy2; goto yy48; } } else { if(yych <= 'E'){ if(yych <= 'D') goto yy2; goto yy50; } else { if(yych == 'e') goto yy50; goto yy2; } } yy42: yych = *++YYCURSOR; yy43: #line 82 { return "int"; } yy44: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy45: if(yych <= ','){ if(yych <= '\000') goto yy46; if(yych <= '+') goto yy2; goto yy44; } else { if(yych <= '/') goto yy2; if(yych <= '9') goto yy44; goto yy2; } yy46: yych = *++YYCURSOR; yy47: #line 84 { return "float#fix"; } yy48: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy49: if(yybm[0+yych] & 4) goto yy48; if(yych == 'E') goto yy50; if(yych != 'e') goto yy2; yy50: yych = *++YYCURSOR; if(yych == '+') goto yy51; if(yych != '-') goto yy2; yy51: yych = *++YYCURSOR; if(yych <= '\000') goto yy2; goto yy53; yy52: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy53: if(yych <= '\000') goto yy54; if(yych <= '/') goto yy2; if(yych <= '9') goto yy52; goto yy2; yy54: yych = *++YYCURSOR; yy55: #line 86 { return "float#exp"; } yy56: yych = *++YYCURSOR; if(yych <= '/') goto yy39; if(yych >= ':') goto yy39; yy57: yych = *++YYCURSOR; if(yych != '-') goto yy39; yy58: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy59: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy60: yych = *++YYCURSOR; if(yych != '-') goto yy2; yy61: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy62: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy63: yych = *++YYCURSOR; if(yych <= 'S'){ if(yych <= '\000') goto yy64; if(yych <= '/') goto yy69; if(yych <= '9') goto yy2; goto yy69; } else { if(yych <= 'T') goto yy66; if(yych == 't') goto yy67; goto yy69; } yy64: yych = *++YYCURSOR; yy65: #line 94 { return "timestamp#ymd"; } yy66: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy112; goto yy2; yy67: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy92; goto yy2; yy68: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy69: if(yybm[0+yych] & 8) goto yy68; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy70: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy71: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy72: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy73: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy74: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy75: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy76: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy77: yych = *++YYCURSOR; if(yych <= '\037'){ if(yych == '\t') goto yy80; goto yy2; } else { if(yych <= ' ') goto yy80; if(yych != '.') goto yy2; } yy78: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy79: if(yybm[0+yych] & 16) goto yy78; if(yych <= '0') goto yy2; if(yych <= '9') goto yy90; goto yy2; yy80: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy81: if(yych <= '*'){ if(yych <= '\t'){ if(yych <= '\b') goto yy2; goto yy80; } else { if(yych == ' ') goto yy80; goto yy2; } } else { if(yych <= '-'){ if(yych == ',') goto yy2; goto yy83; } else { if(yych != 'Z') goto yy2; } } yy82: yych = *++YYCURSOR; if(yych <= '\000') goto yy87; goto yy2; yy83: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy84: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy85: yych = *++YYCURSOR; if(yych <= '\000') goto yy87; if(yych != ':') goto yy2; yy86: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy89; goto yy2; yy87: yych = *++YYCURSOR; yy88: #line 98 { return "timestamp#spaced"; } yy89: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy82; goto yy2; yy90: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy91: if(yybm[0+yych] & 16) goto yy78; if(yych <= '\037'){ if(yych == '\t') goto yy80; goto yy2; } else { if(yych <= ' ') goto yy80; if(yych <= '0') goto yy2; if(yych <= '9') goto yy90; goto yy2; } yy92: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy93: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy94: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy95: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy96: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy97: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy98: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy99: yych = *++YYCURSOR; if(yych <= '-'){ if(yych == '+') goto yy103; if(yych <= ',') goto yy2; goto yy103; } else { if(yych <= '.') goto yy100; if(yych == 'Z') goto yy102; goto yy2; } yy100: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy101: if(yych <= '/') goto yy2; if(yych <= '0') goto yy100; if(yych <= '9') goto yy110; goto yy2; yy102: yych = *++YYCURSOR; if(yych <= '\000') goto yy107; goto yy2; yy103: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy104: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy105: yych = *++YYCURSOR; if(yych <= '\000') goto yy107; if(yych != ':') goto yy2; yy106: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy109; goto yy2; yy107: yych = *++YYCURSOR; yy108: #line 96 { return "timestamp#iso8601"; } yy109: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy102; goto yy2; yy110: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 7) YYFILL(7); yych = *YYCURSOR; yy111: if(yych <= '/'){ if(yych <= '+'){ if(yych <= '*') goto yy2; goto yy103; } else { if(yych == '-') goto yy103; goto yy2; } } else { if(yych <= '9'){ if(yych <= '0') goto yy100; goto yy110; } else { if(yych == 'Z') goto yy102; goto yy2; } } yy112: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy113: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy114: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy115: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy116: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy117: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy118: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy119: yych = *++YYCURSOR; if(yych <= '-'){ if(yych == '+') goto yy103; if(yych <= ',') goto yy2; goto yy103; } else { if(yych <= '.') goto yy120; if(yych == 'Z') goto yy122; goto yy2; } yy120: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy121: if(yych <= '/') goto yy2; if(yych <= '0') goto yy120; if(yych <= '9') goto yy124; goto yy2; yy122: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy123: yych = *++YYCURSOR; goto yy108; yy124: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 7) YYFILL(7); yych = *YYCURSOR; yy125: if(yych <= '/'){ if(yych <= '+'){ if(yych <= '*') goto yy2; goto yy103; } else { if(yych == '-') goto yy103; goto yy2; } } else { if(yych <= '9'){ if(yych <= '0') goto yy120; goto yy124; } else { if(yych == 'Z') goto yy122; goto yy2; } } yy126: yych = *++YYCURSOR; if(yych <= '/') goto yy129; if(yych <= '7') goto yy141; if(yych <= '9') goto yy139; goto yy129; yy127: yych = *++YYCURSOR; if(yych <= '/') goto yy138; if(yych <= '9') goto yy139; goto yy138; yy128: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy129: if(yybm[0+yych] & 64) goto yy128; if(yych <= '.'){ if(yych <= '\000') goto yy135; if(yych <= '-') goto yy2; goto yy40; } else { if(yych <= '/') goto yy2; if(yych <= '9') goto yy137; goto yy2; } yy130: yych = *++YYCURSOR; if(yych <= '\000') goto yy2; goto yy132; yy131: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy132: if(yybm[0+yych] & 128) goto yy131; if(yych >= '\001') goto yy2; yy133: yych = *++YYCURSOR; yy134: #line 78 { return "int#hex"; } yy135: yych = *++YYCURSOR; yy136: #line 80 { return "int#oct"; } yy137: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy138: if(yych <= '-'){ if(yych == ',') goto yy137; goto yy2; } else { if(yych <= '.') goto yy40; if(yych <= '/') goto yy2; if(yych <= '9') goto yy137; goto yy2; } yy139: yych = *++YYCURSOR; if(yych <= '/') goto yy138; if(yych >= ':') goto yy138; yy140: yych = *++YYCURSOR; if(yych == '-') goto yy58; goto yy138; yy141: yych = *++YYCURSOR; if(yych <= '/') goto yy129; if(yych <= '7') goto yy142; if(yych <= '9') goto yy140; goto yy129; yy142: yych = *++YYCURSOR; if(yych == '-') goto yy58; goto yy129; yy143: yych = *++YYCURSOR; if(yych == 'I') goto yy146; if(yych == 'i') goto yy145; goto yy2; yy144: yych = *++YYCURSOR; if(yych <= '\000') goto yy42; if(yych == 'x') goto yy130; goto yy129; yy145: yych = *++YYCURSOR; if(yych == 'n') goto yy152; goto yy2; yy146: yych = *++YYCURSOR; if(yych == 'N') goto yy147; if(yych == 'n') goto yy148; goto yy2; yy147: yych = *++YYCURSOR; if(yych == 'F') goto yy149; goto yy2; yy148: yych = *++YYCURSOR; if(yych != 'f') goto yy2; yy149: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy150: yych = *++YYCURSOR; yy151: #line 90 { return "float#neginf"; } yy152: yych = *++YYCURSOR; if(yych == 'f') goto yy149; goto yy2; yy153: yych = *++YYCURSOR; if(yych == 'I') goto yy24; if(yych == 'i') goto yy23; goto yy2; yy154: yych = *++YYCURSOR; if(yych == 'L') goto yy161; goto yy2; yy155: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy156: yych = *++YYCURSOR; if(yych != 's') goto yy2; yy157: yych = *++YYCURSOR; if(yych != 'e') goto yy2; yy158: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy159: yych = *++YYCURSOR; yy160: #line 76 { return "bool#no"; } yy161: yych = *++YYCURSOR; if(yych != 'S') goto yy2; yy162: yych = *++YYCURSOR; if(yych == 'E') goto yy158; goto yy2; yy163: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy164: yych = *++YYCURSOR; if(yych != 's') goto yy2; yy165: yych = *++YYCURSOR; if(yych == 'e') goto yy158; goto yy2; yy166: yych = *++YYCURSOR; if(yych == 'F') goto yy158; goto yy2; yy167: yych = *++YYCURSOR; if(yych == 'f') goto yy158; goto yy2; yy168: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy169: yych = *++YYCURSOR; yy170: #line 74 { return "bool#yes"; } yy171: yych = *++YYCURSOR; if(yych == 'f') goto yy158; goto yy2; yy172: yych = *++YYCURSOR; if(yych == 'S') goto yy168; goto yy2; yy173: yych = *++YYCURSOR; if(yych == 's') goto yy168; goto yy2; yy174: yych = *++YYCURSOR; if(yych == 's') goto yy168; goto yy2; yy175: yych = *++YYCURSOR; if(yych == 'U') goto yy178; goto yy2; yy176: yych = *++YYCURSOR; if(yych != 'u') goto yy2; yy177: yych = *++YYCURSOR; if(yych == 'e') goto yy168; goto yy2; yy178: yych = *++YYCURSOR; if(yych == 'E') goto yy168; goto yy2; yy179: yych = *++YYCURSOR; if(yych != 'u') goto yy2; yy180: yych = *++YYCURSOR; if(yych == 'e') goto yy168; goto yy2; yy181: yych = *++YYCURSOR; if(yych == 'L') goto yy187; goto yy2; yy182: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy183: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy184: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy185: yych = *++YYCURSOR; yy186: #line 72 { return "null"; } yy187: yych = *++YYCURSOR; if(yych == 'L') goto yy184; goto yy2; yy188: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy189: yych = *++YYCURSOR; if(yych == 'l') goto yy184; goto yy2; } #line 104 } char * syck_type_id_to_uri( char *type_id ) { char *cursor, *limit, *marker; cursor = type_id; limit = type_id + strlen( type_id ); { YYCTYPE yych; unsigned int yyaccept; static unsigned char yybm[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 128, 0, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; goto yy190; yy191: ++YYCURSOR; yy190: if((YYLIMIT - YYCURSOR) < 20) YYFILL(20); yych = *YYCURSOR; if(yych <= '^'){ if(yych <= '/'){ if(yych <= '\000') goto yy192; if(yych == '!') goto yy196; goto yy199; } else { if(yych <= '9') goto yy198; if(yych <= '@') goto yy199; if(yych <= 'Z') goto yy198; goto yy199; } } else { if(yych <= 't'){ if(yych == '`') goto yy199; if(yych <= 's') goto yy198; goto yy193; } else { if(yych == 'x') goto yy195; if(yych <= 'z') goto yy198; goto yy199; } } yy192: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy194; } yy193: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy200; if(yych <= '@'){ if(yych <= '.'){ if(yych <= '+') goto yy194; if(yych <= ',') goto yy204; goto yy205; } else { if(yych <= '/') goto yy206; if(yych <= '9') goto yy202; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy202; if(yych >= '_') goto yy202; } else { if(yych <= '`') goto yy194; if(yych <= 'a') goto yy233; if(yych <= 'z') goto yy202; } } yy194: #line 156 { return syck_taguri( YAML_DOMAIN, type_id, strlen( type_id ) ); } yy195: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy200; if(yych <= 'Z'){ if(yych <= '.'){ if(yych <= '+') goto yy194; if(yych <= ',') goto yy204; goto yy205; } else { if(yych <= '/') goto yy206; if(yych <= '9') goto yy202; if(yych <= '@') goto yy194; goto yy202; } } else { if(yych <= '`'){ if(yych == '_') goto yy202; goto yy194; } else { if(yych == 'p') goto yy224; if(yych <= 'z') goto yy202; goto yy194; } } yy196: yych = *++YYCURSOR; yy197: #line 130 { return syck_xprivate( type_id + 1, strlen( type_id ) - 1 ); } yy198: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy200; if(yych <= '@'){ if(yych <= '.'){ if(yych <= '+') goto yy194; if(yych <= ',') goto yy204; goto yy205; } else { if(yych <= '/') goto yy206; if(yych <= '9') goto yy202; goto yy194; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy202; if(yych <= '^') goto yy194; goto yy202; } else { if(yych <= '`') goto yy194; if(yych <= 'z') goto yy202; goto yy194; } } yy199: yych = *++YYCURSOR; goto yy194; yy200: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy201: if(yybm[0+yych] & 64) goto yy200; if(yych <= 'Z'){ if(yych <= '/') goto yy192; if(yych <= '9') goto yy202; if(yych <= '@') goto yy192; } else { if(yych <= '_'){ if(yych <= '^') goto yy192; } else { if(yych <= '`') goto yy192; if(yych >= '{') goto yy192; } } yy202: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy203: if(yybm[0+yych] & 64) goto yy200; if(yych <= '@'){ if(yych <= '.'){ if(yych <= '+') goto yy192; if(yych >= '-') goto yy205; } else { if(yych <= '/') goto yy206; if(yych <= '9') goto yy202; goto yy192; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy202; if(yych <= '^') goto yy192; goto yy202; } else { if(yych <= '`') goto yy192; if(yych <= 'z') goto yy202; goto yy192; } } yy204: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych <= '9') goto yy212; goto yy192; yy205: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 'Z'){ if(yych <= '/') goto yy192; if(yych <= '9') goto yy208; if(yych <= '@') goto yy192; goto yy208; } else { if(yych <= '_'){ if(yych <= '^') goto yy192; goto yy208; } else { if(yych <= '`') goto yy192; if(yych <= 'z') goto yy208; goto yy192; } } yy206: yych = *++YYCURSOR; yy207: #line 132 { char *domain = S_ALLOC_N( char, ( YYCURSOR - type_id ) + 15 ); char *uri; domain[0] = '\0'; strncat( domain, type_id, ( YYCURSOR - type_id ) - 1 ); strcat( domain, "." ); strcat( domain, YAML_DOMAIN ); uri = syck_taguri( domain, YYCURSOR, YYLIMIT - YYCURSOR ); S_FREE( domain ); return uri; } yy208: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; yy209: if(yych <= '9'){ if(yych <= '-'){ if(yych <= '+') goto yy192; if(yych <= ',') goto yy204; } else { if(yych <= '.') goto yy205; if(yych <= '/') goto yy206; goto yy208; } } else { if(yych <= '^'){ if(yych <= '@') goto yy192; if(yych <= 'Z') goto yy208; goto yy192; } else { if(yych == '`') goto yy192; if(yych <= 'z') goto yy208; goto yy192; } } yy210: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy211: if(yych <= '@'){ if(yych <= '-'){ if(yych <= ',') goto yy192; goto yy210; } else { if(yych <= '/') goto yy192; if(yych <= '9') goto yy208; goto yy192; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy208; if(yych <= '^') goto yy192; goto yy208; } else { if(yych <= '`') goto yy192; if(yych <= 'z') goto yy208; goto yy192; } } yy212: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy213: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy214: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy215: yych = *++YYCURSOR; if(yych == '-') goto yy216; if(yych == '/') goto yy217; goto yy192; yy216: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych <= '9') goto yy219; goto yy192; yy217: yych = *++YYCURSOR; yy218: #line 145 { char *domain = S_ALLOC_N( char, YYCURSOR - type_id ); char *uri; domain[0] = '\0'; strncat( domain, type_id, ( YYCURSOR - type_id ) - 1 ); uri = syck_taguri( domain, YYCURSOR, YYLIMIT - YYCURSOR ); S_FREE( domain ); return uri; } yy219: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy220: yych = *++YYCURSOR; if(yych == '-') goto yy221; if(yych == '/') goto yy217; goto yy192; yy221: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy222: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy223: yych = *++YYCURSOR; if(yych == '/') goto yy217; goto yy192; yy224: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'r') goto yy201; } yy225: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'i') goto yy201; } yy226: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'v') goto yy201; } yy227: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'a') goto yy201; } yy228: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 't') goto yy201; } yy229: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'e') goto yy201; } yy230: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != ':') goto yy201; } yy231: yych = *++YYCURSOR; yy232: #line 128 { return type_id; } yy233: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'g') goto yy201; } yy234: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'u') goto yy201; } yy235: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'r') goto yy201; } yy236: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != 'i') goto yy201; } yy237: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy204; if(yych <= '-') goto yy201; goto yy205; } else { if(yych <= '/') goto yy206; if(yych != ':') goto yy201; } yy238: yych = *++YYCURSOR; if(yych <= '+') goto yy240; if(yych <= '.') goto yy192; goto yy240; yy239: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy240: if(yych <= '9'){ if(yych <= '-'){ if(yych <= '+') goto yy192; if(yych <= ',') goto yy243; } else { if(yych <= '.') goto yy244; if(yych <= '/') goto yy192; goto yy239; } } else { if(yych <= '^'){ if(yych <= '@') goto yy192; if(yych <= 'Z') goto yy239; goto yy192; } else { if(yych == '`') goto yy192; if(yych <= 'z') goto yy239; goto yy192; } } yy241: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy242: if(yych <= '@'){ if(yych <= '-'){ if(yych <= ',') goto yy192; goto yy241; } else { if(yych <= '/') goto yy192; if(yych <= '9') goto yy239; goto yy192; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy239; if(yych <= '^') goto yy192; goto yy239; } else { if(yych <= '`') goto yy192; if(yych <= 'z') goto yy239; goto yy192; } } yy243: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych <= '9') goto yy249; goto yy192; yy244: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 'Z'){ if(yych <= '/') goto yy192; if(yych <= '9') goto yy245; if(yych <= '@') goto yy192; } else { if(yych <= '_'){ if(yych <= '^') goto yy192; } else { if(yych <= '`') goto yy192; if(yych >= '{') goto yy192; } } yy245: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; yy246: if(yych <= '9'){ if(yych <= '-'){ if(yych <= '+') goto yy192; if(yych <= ',') goto yy243; } else { if(yych <= '.') goto yy244; if(yych <= '/') goto yy192; goto yy245; } } else { if(yych <= '^'){ if(yych <= '@') goto yy192; if(yych <= 'Z') goto yy245; goto yy192; } else { if(yych == '`') goto yy192; if(yych <= 'z') goto yy245; goto yy192; } } yy247: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy248: if(yych <= '@'){ if(yych <= '-'){ if(yych <= ',') goto yy192; goto yy247; } else { if(yych <= '/') goto yy192; if(yych <= '9') goto yy245; goto yy192; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy245; if(yych <= '^') goto yy192; goto yy245; } else { if(yych <= '`') goto yy192; if(yych <= 'z') goto yy245; goto yy192; } } yy249: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy250: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy251: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy252: yych = *++YYCURSOR; if(yych == '-') goto yy253; if(yych == ':') goto yy254; goto yy192; yy253: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych <= '9') goto yy256; goto yy192; yy254: yych = *++YYCURSOR; yy255: #line 126 { return type_id; } yy256: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy257: yych = *++YYCURSOR; if(yych == '-') goto yy258; if(yych == ':') goto yy254; goto yy192; yy258: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy259: yych = *++YYCURSOR; if(yych <= '/') goto yy192; if(yych >= ':') goto yy192; yy260: yych = *++YYCURSOR; if(yych == ':') goto yy254; goto yy192; } #line 158 }