/* Generated by re2c 0.5 on Thu Oct 9 09:11:08 2003 */ #line 1 "implicit.re" /* * implicit.re * * $Author$ * $Date$ * * Copyright (C) 2003 why the lucky stiff */ #include "syck.h" #include "ruby.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; goto yy0; yy1: ++YYCURSOR; yy0: if((YYLIMIT - YYCURSOR) < 26) YYFILL(26); yych = *YYCURSOR; 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; yy3: #line 116 { return "str"; } yy4: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'o') goto yy163; if(yych == 'u') goto yy191; goto yy3; yy5: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); 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: #line 82 { return "null"; } yy8: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'r') goto yy184; goto yy3; yy9: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'R') goto yy180; if(yych == 'r') goto yy181; goto yy3; yy10: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'e') goto yy179; goto yy3; yy11: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'E') goto yy177; if(yych == 'e') goto yy178; goto yy3; yy12: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'f') goto yy176; if(yych == 'n') goto yy173; goto yy3; yy13: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); 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); if(yych == 'a') goto yy168; goto yy3; yy15: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == 'A') goto yy159; if(yych == 'a') goto yy160; goto yy3; yy16: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); 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); 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); 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); 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); 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); if(yych == '<') goto yy24; goto yy3; yy23: yych = *++YYCURSOR; goto yy3; yy24: yych = *++YYCURSOR; if(yych <= '\000') goto yy26; yy25: YYCURSOR = YYMARKER; switch(yyaccept){ case 0: goto yy3; } yy26: yych = *++YYCURSOR; yy27: #line 114 { return "merge"; } yy28: yych = *++YYCURSOR; yy29: #line 112 { return "default"; } yy30: yych = *++YYCURSOR; if(yych == 'a') goto yy45; goto yy25; yy31: yych = *++YYCURSOR; if(yych == 'A') goto yy40; if(yych == 'a') goto yy41; goto yy25; yy32: yych = *++YYCURSOR; if(yych == 'n') goto yy39; goto yy25; yy33: yych = *++YYCURSOR; if(yych == 'N') goto yy34; if(yych == 'n') goto yy35; goto yy25; yy34: yych = *++YYCURSOR; if(yych == 'F') goto yy36; goto yy25; yy35: yych = *++YYCURSOR; if(yych != 'f') goto yy25; yy36: yych = *++YYCURSOR; if(yych >= '\001') goto yy25; yy37: yych = *++YYCURSOR; yy38: #line 98 { return "float#inf"; } yy39: yych = *++YYCURSOR; if(yych == 'f') goto yy36; goto yy25; yy40: yych = *++YYCURSOR; if(yych == 'N') goto yy42; goto yy25; yy41: yych = *++YYCURSOR; if(yych != 'N') goto yy25; yy42: yych = *++YYCURSOR; if(yych >= '\001') goto yy25; yy43: yych = *++YYCURSOR; yy44: #line 102 { return "float#nan"; } yy45: yych = *++YYCURSOR; if(yych == 'n') goto yy42; goto yy25; yy46: yych = *++YYCURSOR; if(yych <= '/') goto yy48; if(yych <= '9') goto yy65; goto yy48; yy47: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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: 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: #line 92 { return "int"; } yy53: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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: #line 94 { return "float#fix"; } yy57: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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; 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: 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; if(yych <= '/') goto yy48; if(yych >= ':') goto yy48; yy66: yych = *++YYCURSOR; if(yych != '-') goto yy48; yy67: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy68: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy69: yych = *++YYCURSOR; if(yych != '-') goto yy25; yy70: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy71: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy72: yych = *++YYCURSOR; 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; if(yych <= '/') goto yy25; if(yych <= '9') goto yy117; goto yy25; yy76: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych <= '9') goto yy99; goto yy25; yy77: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy80: yych = *++YYCURSOR; if(yych != ':') goto yy25; yy81: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy82: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy83: yych = *++YYCURSOR; if(yych != ':') goto yy25; yy84: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy85: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy86: yych = *++YYCURSOR; 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: 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: 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; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy93: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy94: yych = *++YYCURSOR; if(yych <= '\000') goto yy96; if(yych != ':') goto yy25; yy95: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych <= '9') goto yy98; goto yy25; yy96: yych = *++YYCURSOR; yy97: #line 108 { return "timestamp#spaced"; } yy98: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych <= '9') goto yy91; goto yy25; yy99: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy100: yych = *++YYCURSOR; if(yych != ':') goto yy25; yy101: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy102: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy103: yych = *++YYCURSOR; if(yych != ':') goto yy25; yy104: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy105: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy106: yych = *++YYCURSOR; 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: 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; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy111: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy112: yych = *++YYCURSOR; if(yych <= '\000') goto yy114; if(yych != ':') goto yy25; yy113: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych <= '9') goto yy116; goto yy25; yy114: yych = *++YYCURSOR; yy115: #line 106 { return "timestamp#iso8601"; } yy116: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych <= '9') goto yy109; goto yy25; yy117: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy118: yych = *++YYCURSOR; if(yych != ':') goto yy25; yy119: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy120: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy121: yych = *++YYCURSOR; if(yych != ':') goto yy25; yy122: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy123: yych = *++YYCURSOR; if(yych <= '/') goto yy25; if(yych >= ':') goto yy25; yy124: yych = *++YYCURSOR; 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: 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; yy128: yych = *++YYCURSOR; goto yy115; yy129: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 7) YYFILL(7); yych = *YYCURSOR; 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; if(yych <= '/') goto yy134; if(yych <= '7') goto yy146; if(yych <= '9') goto yy144; goto yy134; yy132: yych = *++YYCURSOR; if(yych <= '/') goto yy143; if(yych <= '9') goto yy144; goto yy143; yy133: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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; goto yy137; yy136: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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: #line 88 { return "int#hex"; } yy140: yych = *++YYCURSOR; yy141: #line 90 { return "int#oct"; } yy142: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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; if(yych <= '/') goto yy143; if(yych >= ':') goto yy143; yy145: yych = *++YYCURSOR; if(yych == '-') goto yy67; goto yy143; yy146: yych = *++YYCURSOR; if(yych <= '/') goto yy134; if(yych <= '7') goto yy147; if(yych <= '9') goto yy145; goto yy134; yy147: yych = *++YYCURSOR; if(yych == '-') goto yy67; goto yy134; yy148: yych = *++YYCURSOR; if(yych == 'I') goto yy151; if(yych == 'i') goto yy150; goto yy25; yy149: yych = *++YYCURSOR; if(yych <= '\000') goto yy51; if(yych == 'x') goto yy135; goto yy134; yy150: yych = *++YYCURSOR; if(yych == 'n') goto yy157; goto yy25; yy151: yych = *++YYCURSOR; if(yych == 'N') goto yy152; if(yych == 'n') goto yy153; goto yy25; yy152: yych = *++YYCURSOR; if(yych == 'F') goto yy154; goto yy25; yy153: yych = *++YYCURSOR; if(yych != 'f') goto yy25; yy154: yych = *++YYCURSOR; if(yych >= '\001') goto yy25; yy155: yych = *++YYCURSOR; yy156: #line 100 { return "float#neginf"; } yy157: yych = *++YYCURSOR; if(yych == 'f') goto yy154; goto yy25; yy158: yych = *++YYCURSOR; if(yych == 'I') goto yy33; if(yych == 'i') goto yy32; goto yy25; yy159: yych = *++YYCURSOR; if(yych == 'L') goto yy166; goto yy25; yy160: yych = *++YYCURSOR; if(yych != 'l') goto yy25; yy161: yych = *++YYCURSOR; if(yych != 's') goto yy25; yy162: yych = *++YYCURSOR; if(yych != 'e') goto yy25; yy163: yych = *++YYCURSOR; if(yych >= '\001') goto yy25; yy164: yych = *++YYCURSOR; yy165: #line 86 { return "bool#no"; } yy166: yych = *++YYCURSOR; if(yych != 'S') goto yy25; yy167: yych = *++YYCURSOR; if(yych == 'E') goto yy163; goto yy25; yy168: yych = *++YYCURSOR; if(yych != 'l') goto yy25; yy169: yych = *++YYCURSOR; if(yych != 's') goto yy25; yy170: yych = *++YYCURSOR; if(yych == 'e') goto yy163; goto yy25; yy171: yych = *++YYCURSOR; if(yych == 'F') goto yy163; goto yy25; yy172: yych = *++YYCURSOR; if(yych == 'f') goto yy163; goto yy25; yy173: yych = *++YYCURSOR; if(yych >= '\001') goto yy25; yy174: yych = *++YYCURSOR; yy175: #line 84 { return "bool#yes"; } yy176: yych = *++YYCURSOR; if(yych == 'f') goto yy163; goto yy25; yy177: yych = *++YYCURSOR; if(yych == 'S') goto yy173; goto yy25; yy178: yych = *++YYCURSOR; if(yych == 's') goto yy173; goto yy25; yy179: yych = *++YYCURSOR; if(yych == 's') goto yy173; goto yy25; yy180: yych = *++YYCURSOR; if(yych == 'U') goto yy183; goto yy25; yy181: yych = *++YYCURSOR; if(yych != 'u') goto yy25; yy182: yych = *++YYCURSOR; if(yych == 'e') goto yy173; goto yy25; yy183: yych = *++YYCURSOR; if(yych == 'E') goto yy173; goto yy25; yy184: yych = *++YYCURSOR; if(yych != 'u') goto yy25; yy185: yych = *++YYCURSOR; if(yych == 'e') goto yy173; goto yy25; yy186: yych = *++YYCURSOR; if(yych == 'L') goto yy190; goto yy25; yy187: yych = *++YYCURSOR; if(yych != 'l') goto yy25; yy188: yych = *++YYCURSOR; if(yych != 'l') goto yy25; yy189: yych = *++YYCURSOR; if(yych <= '\000') goto yy6; goto yy25; yy190: yych = *++YYCURSOR; if(yych == 'L') goto yy189; goto yy25; yy191: yych = *++YYCURSOR; if(yych != 'l') goto yy25; yy192: yych = *++YYCURSOR; if(yych == 'l') goto yy189; goto yy25; } #line 118 } 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; goto yy193; yy194: ++YYCURSOR; yy193: if((YYLIMIT - YYCURSOR) < 21) YYFILL(21); yych = *YYCURSOR; 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){ case 0: goto yy197; } yy196: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); 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); 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: #line 144 { return syck_xprivate( type_id + 1, strlen( type_id ) - 1 ); } yy201: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); 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: 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: 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; if(yych <= '/') goto yy195; if(yych <= '9') goto yy215; goto yy195; yy208: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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: #line 146 { 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; } yy211: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; 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: 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; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy216: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy217: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy218: yych = *++YYCURSOR; if(yych == '-') goto yy219; if(yych == '/') goto yy220; goto yy195; yy219: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych <= '9') goto yy222; goto yy195; yy220: yych = *++YYCURSOR; yy221: #line 159 { 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; } yy222: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy223: yych = *++YYCURSOR; if(yych == '-') goto yy224; if(yych == '/') goto yy220; goto yy195; yy224: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy225: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy226: yych = *++YYCURSOR; if(yych == '/') goto yy220; goto yy195; yy227: yych = *++YYCURSOR; if(yych != 'p') goto yy204; yy228: yych = *++YYCURSOR; 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; 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; 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; 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; 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; 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; 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; 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; if(yych <= '.'){ if(yych == ',') goto yy207; if(yych <= '-') goto yy204; goto yy208; } else { if(yych <= '/') goto yy209; if(yych != ':') goto yy204; } yy239: yych = *++YYCURSOR; if(yych <= '+') goto yy241; if(yych <= '.') goto yy195; goto yy241; yy240: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *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; 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; 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; 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; } } yy248: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; 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; if(yych == '-') goto yy254; if(yych == ':') goto yy255; goto yy195; yy254: yych = *++YYCURSOR; if(yych <= '/') goto yy195; if(yych <= '9') goto yy257; goto yy195; yy255: yych = *++YYCURSOR; 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; if(yych <= '/') goto yy195; if(yych >= ':') goto yy195; yy261: yych = *++YYCURSOR; if(yych == ':') goto yy255; goto yy195; } #line 172 }