/* Generated by re2c 0.5 on Wed May 14 17:12:22 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; switch ( n->kind ) { case syck_str_kind: tid = syck_match_implicit( n->data.str->ptr, n->data.str->len ); break; case syck_seq_kind: tid = "seq"; break; case syck_map_kind: tid = "map"; break; } 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 yy181; yy4: #line 112 { return "str"; } yy5: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'o') goto yy154; if(yych == 'u') goto yy184; goto yy4; yy6: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= 'U'){ if(yych == 'O') goto yy154; if(yych <= 'T') goto yy4; goto yy177; } else { if(yych <= 'o'){ if(yych <= 'n') goto yy4; goto yy154; } else { if(yych == 'u') goto yy178; goto yy4; } } yy7: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'r') goto yy175; goto yy4; yy8: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'R') goto yy171; if(yych == 'r') goto yy172; goto yy4; yy9: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'e') goto yy170; goto yy4; yy10: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'E') goto yy168; if(yych == 'e') goto yy169; goto yy4; yy11: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'f') goto yy167; if(yych == 'n') goto yy164; goto yy4; yy12: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= 'N'){ if(yych == 'F') goto yy162; if(yych <= 'M') goto yy4; goto yy164; } else { if(yych <= 'f'){ if(yych <= 'e') goto yy4; goto yy163; } else { if(yych == 'n') goto yy164; goto yy4; } } yy13: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'a') goto yy159; goto yy4; yy14: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'A') goto yy150; if(yych == 'a') goto yy151; goto yy4; yy15: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '/'){ if(yych == '.') goto yy149; goto yy4; } else { if(yych <= '0') goto yy140; if(yych <= '9') goto yy38; goto yy4; } yy16: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '/'){ if(yych == '.') goto yy139; goto yy4; } else { if(yych <= '0') goto yy140; 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 yy124; if(yych <= '-') goto yy4; goto yy40; } } else { if(yych <= '9'){ if(yych <= '/') goto yy4; if(yych <= '7') goto yy122; goto yy123; } else { if(yych == 'x') goto yy126; 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 98 { 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 102 { 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 92 { 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 94 { 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 96 { 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 104 { return "timestamp#ymd"; } yy66: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy108; goto yy2; yy67: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy90; 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(yych <= '\037'){ if(yych != '\t') goto yy2; } else { if(yych <= ' ') goto yy80; if(yych <= '/') goto yy2; if(yych <= '9') goto yy78; 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 108 { return "timestamp#spaced"; } yy89: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy82; goto yy2; yy90: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy91: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy92: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy93: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy94: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy95: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy96: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy97: yych = *++YYCURSOR; if(yych == '.') goto yy98; if(yych <= '/') goto yy99; if(yych <= '9') goto yy2; goto yy99; yy98: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy99: if(yych <= '-'){ if(yych == '+') goto yy101; if(yych <= ',') goto yy2; goto yy101; } else { if(yych <= '9'){ if(yych <= '/') goto yy2; goto yy98; } else { if(yych != 'Z') goto yy2; } } yy100: yych = *++YYCURSOR; if(yych <= '\000') goto yy105; goto yy2; yy101: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy102: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy103: yych = *++YYCURSOR; if(yych <= '\000') goto yy105; if(yych != ':') goto yy2; yy104: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy107; goto yy2; yy105: yych = *++YYCURSOR; yy106: #line 106 { return "timestamp#iso8601"; } yy107: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych <= '9') goto yy100; goto yy2; yy108: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy109: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy110: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy111: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy112: yych = *++YYCURSOR; if(yych != ':') goto yy2; yy113: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy114: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; yy115: yych = *++YYCURSOR; if(yych <= '/'){ if(yych != '.') goto yy117; } else { if(yych <= '9') goto yy2; if(yych == 'Z') goto yy118; goto yy117; } yy116: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 7) YYFILL(7); yych = *YYCURSOR; yy117: if(yybm[0+yych] & 16) goto yy116; if(yych <= '-'){ if(yych == '+') goto yy101; if(yych <= ',') goto yy2; goto yy101; } else { if(yych <= '9'){ if(yych <= '0') goto yy2; goto yy120; } else { if(yych == 'Z') goto yy100; goto yy2; } } yy118: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy119: yych = *++YYCURSOR; goto yy106; yy120: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 7) YYFILL(7); yych = *YYCURSOR; yy121: if(yybm[0+yych] & 16) goto yy116; if(yych <= '-'){ if(yych == '+') goto yy101; if(yych <= ',') goto yy2; goto yy101; } else { if(yych <= '9'){ if(yych <= '0') goto yy2; goto yy120; } else { if(yych == 'Z') goto yy118; goto yy2; } } yy122: yych = *++YYCURSOR; if(yych <= '/') goto yy125; if(yych <= '7') goto yy137; if(yych <= '9') goto yy135; goto yy125; yy123: yych = *++YYCURSOR; if(yych <= '/') goto yy134; if(yych <= '9') goto yy135; goto yy134; yy124: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy125: if(yybm[0+yych] & 64) goto yy124; if(yych <= '.'){ if(yych <= '\000') goto yy131; if(yych <= '-') goto yy2; goto yy40; } else { if(yych <= '/') goto yy2; if(yych <= '9') goto yy133; goto yy2; } yy126: yych = *++YYCURSOR; if(yych <= '\000') goto yy2; goto yy128; yy127: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy128: if(yybm[0+yych] & 128) goto yy127; if(yych >= '\001') goto yy2; yy129: yych = *++YYCURSOR; yy130: #line 88 { return "int#hex"; } yy131: yych = *++YYCURSOR; yy132: #line 90 { return "int#oct"; } yy133: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy134: if(yych <= '-'){ if(yych == ',') goto yy133; goto yy2; } else { if(yych <= '.') goto yy40; if(yych <= '/') goto yy2; if(yych <= '9') goto yy133; goto yy2; } yy135: yych = *++YYCURSOR; if(yych <= '/') goto yy134; if(yych >= ':') goto yy134; yy136: yych = *++YYCURSOR; if(yych == '-') goto yy58; goto yy134; yy137: yych = *++YYCURSOR; if(yych <= '/') goto yy125; if(yych <= '7') goto yy138; if(yych <= '9') goto yy136; goto yy125; yy138: yych = *++YYCURSOR; if(yych == '-') goto yy58; goto yy125; yy139: yych = *++YYCURSOR; if(yych == 'I') goto yy142; if(yych == 'i') goto yy141; goto yy2; yy140: yych = *++YYCURSOR; if(yych <= '\000') goto yy42; if(yych == 'x') goto yy126; goto yy125; yy141: yych = *++YYCURSOR; if(yych == 'n') goto yy148; goto yy2; yy142: yych = *++YYCURSOR; if(yych == 'N') goto yy143; if(yych == 'n') goto yy144; goto yy2; yy143: yych = *++YYCURSOR; if(yych == 'F') goto yy145; goto yy2; yy144: yych = *++YYCURSOR; if(yych != 'f') goto yy2; yy145: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy146: yych = *++YYCURSOR; yy147: #line 100 { return "float#neginf"; } yy148: yych = *++YYCURSOR; if(yych == 'f') goto yy145; goto yy2; yy149: yych = *++YYCURSOR; if(yych == 'I') goto yy24; if(yych == 'i') goto yy23; goto yy2; yy150: yych = *++YYCURSOR; if(yych == 'L') goto yy157; goto yy2; yy151: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy152: yych = *++YYCURSOR; if(yych != 's') goto yy2; yy153: yych = *++YYCURSOR; if(yych != 'e') goto yy2; yy154: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy155: yych = *++YYCURSOR; yy156: #line 86 { return "bool#no"; } yy157: yych = *++YYCURSOR; if(yych != 'S') goto yy2; yy158: yych = *++YYCURSOR; if(yych == 'E') goto yy154; goto yy2; yy159: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy160: yych = *++YYCURSOR; if(yych != 's') goto yy2; yy161: yych = *++YYCURSOR; if(yych == 'e') goto yy154; goto yy2; yy162: yych = *++YYCURSOR; if(yych == 'F') goto yy154; goto yy2; yy163: yych = *++YYCURSOR; if(yych == 'f') goto yy154; goto yy2; yy164: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy165: yych = *++YYCURSOR; yy166: #line 84 { return "bool#yes"; } yy167: yych = *++YYCURSOR; if(yych == 'f') goto yy154; goto yy2; yy168: yych = *++YYCURSOR; if(yych == 'S') goto yy164; goto yy2; yy169: yych = *++YYCURSOR; if(yych == 's') goto yy164; goto yy2; yy170: yych = *++YYCURSOR; if(yych == 's') goto yy164; goto yy2; yy171: yych = *++YYCURSOR; if(yych == 'U') goto yy174; goto yy2; yy172: yych = *++YYCURSOR; if(yych != 'u') goto yy2; yy173: yych = *++YYCURSOR; if(yych == 'e') goto yy164; goto yy2; yy174: yych = *++YYCURSOR; if(yych == 'E') goto yy164; goto yy2; yy175: yych = *++YYCURSOR; if(yych != 'u') goto yy2; yy176: yych = *++YYCURSOR; if(yych == 'e') goto yy164; goto yy2; yy177: yych = *++YYCURSOR; if(yych == 'L') goto yy183; goto yy2; yy178: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy179: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy180: yych = *++YYCURSOR; if(yych >= '\001') goto yy2; yy181: yych = *++YYCURSOR; yy182: #line 82 { return "null"; } yy183: yych = *++YYCURSOR; if(yych == 'L') goto yy180; goto yy2; yy184: yych = *++YYCURSOR; if(yych != 'l') goto yy2; yy185: yych = *++YYCURSOR; if(yych == 'l') goto yy180; goto yy2; } #line 114 } 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 yy186; yy187: ++YYCURSOR; yy186: if((YYLIMIT - YYCURSOR) < 20) YYFILL(20); yych = *YYCURSOR; if(yych <= '^'){ if(yych <= '/'){ if(yych <= '\000') goto yy188; if(yych == '!') goto yy192; goto yy195; } else { if(yych <= '9') goto yy194; if(yych <= '@') goto yy195; if(yych <= 'Z') goto yy194; goto yy195; } } else { if(yych <= 't'){ if(yych == '`') goto yy195; if(yych <= 's') goto yy194; goto yy189; } else { if(yych == 'x') goto yy191; if(yych <= 'z') goto yy194; goto yy195; } } yy188: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy190; } yy189: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy196; if(yych <= '@'){ if(yych <= '.'){ if(yych <= '+') goto yy190; if(yych <= ',') goto yy200; goto yy201; } else { if(yych <= '/') goto yy202; if(yych <= '9') goto yy198; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy198; if(yych >= '_') goto yy198; } else { if(yych <= '`') goto yy190; if(yych <= 'a') goto yy229; if(yych <= 'z') goto yy198; } } yy190: #line 166 { return syck_taguri( YAML_DOMAIN, type_id, strlen( type_id ) ); } yy191: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy196; if(yych <= 'Z'){ if(yych <= '.'){ if(yych <= '+') goto yy190; if(yych <= ',') goto yy200; goto yy201; } else { if(yych <= '/') goto yy202; if(yych <= '9') goto yy198; if(yych <= '@') goto yy190; goto yy198; } } else { if(yych <= '`'){ if(yych == '_') goto yy198; goto yy190; } else { if(yych == 'p') goto yy220; if(yych <= 'z') goto yy198; goto yy190; } } yy192: yych = *++YYCURSOR; yy193: #line 140 { return syck_xprivate( type_id + 1, strlen( type_id ) - 1 ); } yy194: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yybm[0+yych] & 64) goto yy196; if(yych <= '@'){ if(yych <= '.'){ if(yych <= '+') goto yy190; if(yych <= ',') goto yy200; goto yy201; } else { if(yych <= '/') goto yy202; if(yych <= '9') goto yy198; goto yy190; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy198; if(yych <= '^') goto yy190; goto yy198; } else { if(yych <= '`') goto yy190; if(yych <= 'z') goto yy198; goto yy190; } } yy195: yych = *++YYCURSOR; goto yy190; yy196: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy197: if(yybm[0+yych] & 64) goto yy196; if(yych <= 'Z'){ if(yych <= '/') goto yy188; if(yych <= '9') goto yy198; if(yych <= '@') goto yy188; } else { if(yych <= '_'){ if(yych <= '^') goto yy188; } else { if(yych <= '`') goto yy188; if(yych >= '{') goto yy188; } } yy198: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy199: if(yybm[0+yych] & 64) goto yy196; if(yych <= '@'){ if(yych <= '.'){ if(yych <= '+') goto yy188; if(yych >= '-') goto yy201; } else { if(yych <= '/') goto yy202; if(yych <= '9') goto yy198; goto yy188; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy198; if(yych <= '^') goto yy188; goto yy198; } else { if(yych <= '`') goto yy188; if(yych <= 'z') goto yy198; goto yy188; } } yy200: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych <= '9') goto yy208; goto yy188; yy201: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 'Z'){ if(yych <= '/') goto yy188; if(yych <= '9') goto yy204; if(yych <= '@') goto yy188; goto yy204; } else { if(yych <= '_'){ if(yych <= '^') goto yy188; goto yy204; } else { if(yych <= '`') goto yy188; if(yych <= 'z') goto yy204; goto yy188; } } yy202: yych = *++YYCURSOR; yy203: #line 142 { 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; } yy204: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; yy205: if(yych <= '9'){ if(yych <= '-'){ if(yych <= '+') goto yy188; if(yych <= ',') goto yy200; } else { if(yych <= '.') goto yy201; if(yych <= '/') goto yy202; goto yy204; } } else { if(yych <= '^'){ if(yych <= '@') goto yy188; if(yych <= 'Z') goto yy204; goto yy188; } else { if(yych == '`') goto yy188; if(yych <= 'z') goto yy204; goto yy188; } } yy206: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy207: if(yych <= '@'){ if(yych <= '-'){ if(yych <= ',') goto yy188; goto yy206; } else { if(yych <= '/') goto yy188; if(yych <= '9') goto yy204; goto yy188; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy204; if(yych <= '^') goto yy188; goto yy204; } else { if(yych <= '`') goto yy188; if(yych <= 'z') goto yy204; goto yy188; } } yy208: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy209: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy210: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy211: yych = *++YYCURSOR; if(yych == '-') goto yy212; if(yych == '/') goto yy213; goto yy188; yy212: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych <= '9') goto yy215; goto yy188; yy213: yych = *++YYCURSOR; yy214: #line 155 { 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; } yy215: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy216: yych = *++YYCURSOR; if(yych == '-') goto yy217; if(yych == '/') goto yy213; goto yy188; yy217: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy218: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy219: yych = *++YYCURSOR; if(yych == '/') goto yy213; goto yy188; yy220: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'r') goto yy197; } yy221: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'i') goto yy197; } yy222: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'v') goto yy197; } yy223: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'a') goto yy197; } yy224: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 't') goto yy197; } yy225: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'e') goto yy197; } yy226: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != ':') goto yy197; } yy227: yych = *++YYCURSOR; yy228: #line 138 { return type_id; } yy229: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'g') goto yy197; } yy230: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'u') goto yy197; } yy231: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'r') goto yy197; } yy232: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != 'i') goto yy197; } yy233: yych = *++YYCURSOR; if(yych <= '.'){ if(yych == ',') goto yy200; if(yych <= '-') goto yy197; goto yy201; } else { if(yych <= '/') goto yy202; if(yych != ':') goto yy197; } yy234: yych = *++YYCURSOR; if(yych <= '+') goto yy236; if(yych <= '.') goto yy188; goto yy236; yy235: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy236: if(yych <= '9'){ if(yych <= '-'){ if(yych <= '+') goto yy188; if(yych <= ',') goto yy239; } else { if(yych <= '.') goto yy240; if(yych <= '/') goto yy188; goto yy235; } } else { if(yych <= '^'){ if(yych <= '@') goto yy188; if(yych <= 'Z') goto yy235; goto yy188; } else { if(yych == '`') goto yy188; if(yych <= 'z') goto yy235; goto yy188; } } yy237: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy238: if(yych <= '@'){ if(yych <= '-'){ if(yych <= ',') goto yy188; goto yy237; } else { if(yych <= '/') goto yy188; if(yych <= '9') goto yy235; goto yy188; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy235; if(yych <= '^') goto yy188; goto yy235; } else { if(yych <= '`') goto yy188; if(yych <= 'z') goto yy235; goto yy188; } } yy239: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych <= '9') goto yy245; goto yy188; yy240: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 'Z'){ if(yych <= '/') goto yy188; if(yych <= '9') goto yy241; if(yych <= '@') goto yy188; } else { if(yych <= '_'){ if(yych <= '^') goto yy188; } else { if(yych <= '`') goto yy188; if(yych >= '{') goto yy188; } } yy241: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; yy242: if(yych <= '9'){ if(yych <= '-'){ if(yych <= '+') goto yy188; if(yych <= ',') goto yy239; } else { if(yych <= '.') goto yy240; if(yych <= '/') goto yy188; goto yy241; } } else { if(yych <= '^'){ if(yych <= '@') goto yy188; if(yych <= 'Z') goto yy241; goto yy188; } else { if(yych == '`') goto yy188; if(yych <= 'z') goto yy241; goto yy188; } } yy243: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy244: if(yych <= '@'){ if(yych <= '-'){ if(yych <= ',') goto yy188; goto yy243; } else { if(yych <= '/') goto yy188; if(yych <= '9') goto yy241; goto yy188; } } else { if(yych <= '_'){ if(yych <= 'Z') goto yy241; if(yych <= '^') goto yy188; goto yy241; } else { if(yych <= '`') goto yy188; if(yych <= 'z') goto yy241; goto yy188; } } yy245: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy246: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy247: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy248: yych = *++YYCURSOR; if(yych == '-') goto yy249; if(yych == ':') goto yy250; goto yy188; yy249: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych <= '9') goto yy252; goto yy188; yy250: yych = *++YYCURSOR; yy251: #line 136 { return type_id; } yy252: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy253: yych = *++YYCURSOR; if(yych == '-') goto yy254; if(yych == ':') goto yy250; goto yy188; yy254: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy255: yych = *++YYCURSOR; if(yych <= '/') goto yy188; if(yych >= ':') goto yy188; yy256: yych = *++YYCURSOR; if(yych == ':') goto yy250; goto yy188; } #line 168 }