syck 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/.autotest.erb +8 -0
  2. data/.gemtest +0 -0
  3. data/CHANGELOG.rdoc +6 -0
  4. data/Manifest.txt +52 -0
  5. data/README.rdoc +51 -0
  6. data/Rakefile +32 -0
  7. data/ext/syck/bytecode.c +1165 -0
  8. data/ext/syck/emitter.c +1247 -0
  9. data/ext/syck/extconf.h +3 -0
  10. data/ext/syck/extconf.rb +5 -0
  11. data/ext/syck/gram.c +1894 -0
  12. data/ext/syck/gram.h +79 -0
  13. data/ext/syck/handler.c +173 -0
  14. data/ext/syck/implicit.c +2990 -0
  15. data/ext/syck/node.c +407 -0
  16. data/ext/syck/rubyext.c +2328 -0
  17. data/ext/syck/syck.c +524 -0
  18. data/ext/syck/syck.h +453 -0
  19. data/ext/syck/token.c +2724 -0
  20. data/ext/syck/yaml2byte.c +259 -0
  21. data/ext/syck/yamlbyte.h +171 -0
  22. data/lib/syck.bundle +0 -0
  23. data/lib/syck.rb +447 -0
  24. data/lib/syck/baseemitter.rb +242 -0
  25. data/lib/syck/basenode.rb +222 -0
  26. data/lib/syck/constants.rb +45 -0
  27. data/lib/syck/encoding.rb +35 -0
  28. data/lib/syck/error.rb +34 -0
  29. data/lib/syck/loader.rb +14 -0
  30. data/lib/syck/rubytypes.rb +450 -0
  31. data/lib/syck/stream.rb +41 -0
  32. data/lib/syck/stringio.rb +85 -0
  33. data/lib/syck/syck.rb +16 -0
  34. data/lib/syck/tag.rb +95 -0
  35. data/lib/syck/types.rb +192 -0
  36. data/lib/syck/yamlnode.rb +54 -0
  37. data/lib/syck/ypath.rb +54 -0
  38. data/lib/yaml/syck.rb +14 -0
  39. data/test/helper.rb +2 -0
  40. data/test/test_array.rb +13 -0
  41. data/test/test_boolean.rb +36 -0
  42. data/test/test_class.rb +11 -0
  43. data/test/test_exception.rb +45 -0
  44. data/test/test_hash.rb +24 -0
  45. data/test/test_null.rb +19 -0
  46. data/test/test_omap.rb +55 -0
  47. data/test/test_set.rb +30 -0
  48. data/test/test_string.rb +44 -0
  49. data/test/test_struct.rb +32 -0
  50. data/test/test_symbol.rb +21 -0
  51. data/test/test_time.rb +23 -0
  52. data/test/test_yaml.rb +1403 -0
  53. data/test/test_yaml_properties.rb +63 -0
  54. metadata +187 -0
@@ -0,0 +1,79 @@
1
+ /* A Bison parser, made by GNU Bison 1.875d. */
2
+
3
+ /* Skeleton parser for Yacc-like parsing with Bison,
4
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
5
+
6
+ This program is free software; you can redistribute it and/or modify
7
+ it under the terms of the GNU General Public License as published by
8
+ the Free Software Foundation; either version 2, or (at your option)
9
+ any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU General Public License for more details.
15
+
16
+ You should have received a copy of the GNU General Public License
17
+ along with this program; if not, write to the Free Software
18
+ Foundation, Inc., 59 Temple Place - Suite 330,
19
+ Boston, MA 02111-1307, USA. */
20
+
21
+ /* As a special exception, when this file is copied by Bison into a
22
+ Bison output file, you may use that output file without restriction.
23
+ This special exception was added by the Free Software Foundation
24
+ in version 1.24 of Bison. */
25
+
26
+ /* Tokens. */
27
+ #ifndef YYTOKENTYPE
28
+ # define YYTOKENTYPE
29
+ /* Put the tokens into the symbol table, so that GDB and other debuggers
30
+ know about them. */
31
+ enum yytokentype {
32
+ YAML_ANCHOR = 258,
33
+ YAML_ALIAS = 259,
34
+ YAML_TRANSFER = 260,
35
+ YAML_TAGURI = 261,
36
+ YAML_ITRANSFER = 262,
37
+ YAML_WORD = 263,
38
+ YAML_PLAIN = 264,
39
+ YAML_BLOCK = 265,
40
+ YAML_DOCSEP = 266,
41
+ YAML_IOPEN = 267,
42
+ YAML_INDENT = 268,
43
+ YAML_IEND = 269
44
+ };
45
+ #endif
46
+ #define YAML_ANCHOR 258
47
+ #define YAML_ALIAS 259
48
+ #define YAML_TRANSFER 260
49
+ #define YAML_TAGURI 261
50
+ #define YAML_ITRANSFER 262
51
+ #define YAML_WORD 263
52
+ #define YAML_PLAIN 264
53
+ #define YAML_BLOCK 265
54
+ #define YAML_DOCSEP 266
55
+ #define YAML_IOPEN 267
56
+ #define YAML_INDENT 268
57
+ #define YAML_IEND 269
58
+
59
+
60
+
61
+
62
+ #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
63
+ #line 35 "gram.y"
64
+ typedef union YYSTYPE {
65
+ SYMID nodeId;
66
+ SyckNode *nodeData;
67
+ char *name;
68
+ } YYSTYPE;
69
+ /* Line 1285 of yacc.c. */
70
+ #line 71 "gram.h"
71
+ # define yystype YYSTYPE /* obsolescent; will be withdrawn */
72
+ # define YYSTYPE_IS_DECLARED 1
73
+ # define YYSTYPE_IS_TRIVIAL 1
74
+ #endif
75
+
76
+
77
+
78
+
79
+
@@ -0,0 +1,173 @@
1
+ /*
2
+ * handler.c
3
+ *
4
+ * $Author$
5
+ *
6
+ * Copyright (C) 2003 why the lucky stiff
7
+ */
8
+
9
+ #include "ruby/ruby.h"
10
+ #include "syck.h"
11
+
12
+ SYMID
13
+ syck_hdlr_add_node( SyckParser *p, SyckNode *n )
14
+ {
15
+ SYMID id;
16
+
17
+ if ( ! n->id )
18
+ {
19
+ n->id = (p->handler)( p, n );
20
+ }
21
+ id = n->id;
22
+
23
+ if ( n->anchor == NULL )
24
+ {
25
+ syck_free_node( n );
26
+ }
27
+ return id;
28
+ }
29
+
30
+ SyckNode *
31
+ syck_hdlr_add_anchor( SyckParser *p, char *a, SyckNode *n )
32
+ {
33
+ SyckNode *ntmp = NULL;
34
+
35
+ n->anchor = a;
36
+ if ( p->bad_anchors != NULL )
37
+ {
38
+ SyckNode *bad;
39
+ if ( st_lookup( p->bad_anchors, (st_data_t)a, (void *)&bad ) )
40
+ {
41
+ if ( n->kind != syck_str_kind )
42
+ {
43
+ n->id = bad->id;
44
+ (p->handler)( p, n );
45
+ }
46
+ }
47
+ }
48
+ if ( p->anchors == NULL )
49
+ {
50
+ p->anchors = st_init_strtable();
51
+ }
52
+ if ( st_lookup( p->anchors, (st_data_t)a, (void *)&ntmp ) )
53
+ {
54
+ if ( ntmp != (void *)1 )
55
+ {
56
+ syck_free_node( ntmp );
57
+ }
58
+ }
59
+ st_insert( p->anchors, (st_data_t)a, (st_data_t)n );
60
+ return n;
61
+ }
62
+
63
+ void
64
+ syck_hdlr_remove_anchor( SyckParser *p, char *a )
65
+ {
66
+ char *atmp = a;
67
+ SyckNode *ntmp;
68
+ if ( p->anchors == NULL )
69
+ {
70
+ p->anchors = st_init_strtable();
71
+ }
72
+ if ( st_delete( p->anchors, (void *)&atmp, (void *)&ntmp ) )
73
+ {
74
+ if ( ntmp != (void *)1 )
75
+ {
76
+ syck_free_node( ntmp );
77
+ }
78
+ }
79
+ st_insert( p->anchors, (st_data_t)a, (st_data_t)1 );
80
+ }
81
+
82
+ SyckNode *
83
+ syck_hdlr_get_anchor( SyckParser *p, char *a )
84
+ {
85
+ SyckNode *n = NULL;
86
+
87
+ if ( p->anchors != NULL )
88
+ {
89
+ if ( st_lookup( p->anchors, (st_data_t)a, (void *)&n ) )
90
+ {
91
+ if ( n != (void *)1 )
92
+ {
93
+ S_FREE( a );
94
+ return n;
95
+ }
96
+ else
97
+ {
98
+ if ( p->bad_anchors == NULL )
99
+ {
100
+ p->bad_anchors = st_init_strtable();
101
+ }
102
+ if ( ! st_lookup( p->bad_anchors, (st_data_t)a, (void *)&n ) )
103
+ {
104
+ n = (p->bad_anchor_handler)( p, a );
105
+ st_insert( p->bad_anchors, (st_data_t)a, (st_data_t)n );
106
+ }
107
+ }
108
+ }
109
+ }
110
+
111
+ if ( n == NULL )
112
+ {
113
+ n = (p->bad_anchor_handler)( p, a );
114
+ }
115
+
116
+ if ( n->anchor )
117
+ {
118
+ S_FREE( a );
119
+ }
120
+ else
121
+ {
122
+ n->anchor = a;
123
+ }
124
+
125
+ return n;
126
+ }
127
+
128
+ void
129
+ syck_add_transfer( char *uri, SyckNode *n, int taguri )
130
+ {
131
+ if ( n->type_id != NULL )
132
+ {
133
+ S_FREE( n->type_id );
134
+ }
135
+
136
+ if ( taguri == 0 )
137
+ {
138
+ n->type_id = uri;
139
+ return;
140
+ }
141
+
142
+ n->type_id = syck_type_id_to_uri( uri );
143
+ S_FREE( uri );
144
+ }
145
+
146
+ char *
147
+ syck_xprivate( const char *type_id, int type_len )
148
+ {
149
+ char *uri = S_ALLOC_N( char, type_len + 14 );
150
+ uri[0] = '\0';
151
+ strcat( uri, "x-private:" );
152
+ strncat( uri, type_id, type_len );
153
+ return uri;
154
+ }
155
+
156
+ char *
157
+ syck_taguri( const char *domain, const char *type_id, int type_len )
158
+ {
159
+ char *uri = S_ALLOC_N( char, strlen( domain ) + type_len + 14 );
160
+ uri[0] = '\0';
161
+ strcat( uri, "tag:" );
162
+ strcat( uri, domain );
163
+ strcat( uri, ":" );
164
+ strncat( uri, type_id, type_len );
165
+ return uri;
166
+ }
167
+
168
+ int
169
+ syck_try_implicit( SyckNode *n )
170
+ {
171
+ return 1;
172
+ }
173
+
@@ -0,0 +1,2990 @@
1
+ /* Generated by re2c 0.9.10 on Mon Sep 19 21:46:50 2005 */
2
+ #line 1 "implicit.re"
3
+ /*
4
+ * implicit.re
5
+ *
6
+ * $Author$
7
+ *
8
+ * Copyright (C) 2003 why the lucky stiff
9
+ */
10
+
11
+ #include "ruby/ruby.h"
12
+ #include "syck.h"
13
+
14
+ #define YYCTYPE char
15
+ #define YYCURSOR cursor
16
+ #define YYMARKER marker
17
+ #define YYLIMIT limit
18
+ #define YYFILL(n) (void)0
19
+
20
+ void
21
+ try_tag_implicit( SyckNode *n, int taguri )
22
+ {
23
+ const char *tid = "";
24
+ switch ( n->kind )
25
+ {
26
+ case syck_str_kind:
27
+ tid = syck_match_implicit( n->data.str->ptr, n->data.str->len );
28
+ break;
29
+
30
+ case syck_seq_kind:
31
+ tid = "seq";
32
+ break;
33
+
34
+ case syck_map_kind:
35
+ tid = "map";
36
+ break;
37
+ }
38
+ if ( n->type_id != NULL ) S_FREE( n->type_id );
39
+ if ( taguri == 1 )
40
+ {
41
+ n->type_id = syck_taguri( YAML_DOMAIN, tid, (int)strlen( tid ) );
42
+ } else {
43
+ n->type_id = syck_strndup( tid, (int)strlen( tid ) );
44
+ }
45
+ }
46
+
47
+ const char *
48
+ syck_match_implicit( const char *str, size_t len )
49
+ {
50
+ const char *cursor, *limit, *marker = 0;
51
+ cursor = str;
52
+ limit = str + len;
53
+
54
+
55
+ #line 55 "<stdout>"
56
+ {
57
+ YYCTYPE yych;
58
+ unsigned int yyaccept;
59
+ goto yy0;
60
+ ++YYCURSOR;
61
+ yy0:
62
+ if((YYLIMIT - YYCURSOR) < 26) YYFILL(26);
63
+ yych = *YYCURSOR;
64
+ switch(yych){
65
+ case 0x00: goto yy6;
66
+ case '+': goto yy16;
67
+ case '-': goto yy17;
68
+ case '.': goto yy20;
69
+ case '0': goto yy18;
70
+ case '1':
71
+ case '2':
72
+ case '3':
73
+ case '4':
74
+ case '5':
75
+ case '6':
76
+ case '7':
77
+ case '8':
78
+ case '9': goto yy19;
79
+ case '<': goto yy22;
80
+ case '=': goto yy21;
81
+ case 'F': goto yy15;
82
+ case 'N': goto yy5;
83
+ case 'O': goto yy13;
84
+ case 'T': goto yy11;
85
+ case 'Y': goto yy9;
86
+ case 'f': goto yy14;
87
+ case 'n': goto yy4;
88
+ case 'o': goto yy12;
89
+ case 't': goto yy10;
90
+ case 'y': goto yy8;
91
+ case '~': goto yy2;
92
+ default: goto yy23;
93
+ }
94
+ yy2: ++YYCURSOR;
95
+ if((yych = *YYCURSOR) <= 0x00) goto yy6;
96
+ goto yy3;
97
+ yy3:
98
+ #line 123 "implicit.re"
99
+ { return "str"; }
100
+ #line 100 "<stdout>"
101
+ yy4: yyaccept = 0;
102
+ yych = *(YYMARKER = ++YYCURSOR);
103
+ switch(yych){
104
+ case 'o': goto yy172;
105
+ case 'u': goto yy200;
106
+ default: goto yy3;
107
+ }
108
+ yy5: yyaccept = 0;
109
+ yych = *(YYMARKER = ++YYCURSOR);
110
+ switch(yych){
111
+ case 'O': case 'o': goto yy172;
112
+ case 'U': goto yy195;
113
+ case 'u': goto yy196;
114
+ default: goto yy3;
115
+ }
116
+ yy6: ++YYCURSOR;
117
+ goto yy7;
118
+ yy7:
119
+ #line 85 "implicit.re"
120
+ { return "null"; }
121
+ #line 121 "<stdout>"
122
+ yy8: yyaccept = 0;
123
+ yych = *(YYMARKER = ++YYCURSOR);
124
+ switch(yych){
125
+ case 'e': goto yy194;
126
+ default: goto yy3;
127
+ }
128
+ yy9: yyaccept = 0;
129
+ yych = *(YYMARKER = ++YYCURSOR);
130
+ switch(yych){
131
+ case 'E': goto yy192;
132
+ case 'e': goto yy193;
133
+ default: goto yy3;
134
+ }
135
+ yy10: yyaccept = 0;
136
+ yych = *(YYMARKER = ++YYCURSOR);
137
+ switch(yych){
138
+ case 'r': goto yy190;
139
+ default: goto yy3;
140
+ }
141
+ yy11: yyaccept = 0;
142
+ yych = *(YYMARKER = ++YYCURSOR);
143
+ switch(yych){
144
+ case 'R': goto yy186;
145
+ case 'r': goto yy187;
146
+ default: goto yy3;
147
+ }
148
+ yy12: yyaccept = 0;
149
+ yych = *(YYMARKER = ++YYCURSOR);
150
+ switch(yych){
151
+ case 'f': goto yy185;
152
+ case 'n': goto yy182;
153
+ default: goto yy3;
154
+ }
155
+ yy13: yyaccept = 0;
156
+ yych = *(YYMARKER = ++YYCURSOR);
157
+ switch(yych){
158
+ case 'F': goto yy180;
159
+ case 'N': case 'n': goto yy182;
160
+ case 'f': goto yy181;
161
+ default: goto yy3;
162
+ }
163
+ yy14: yyaccept = 0;
164
+ yych = *(YYMARKER = ++YYCURSOR);
165
+ switch(yych){
166
+ case 'a': goto yy177;
167
+ default: goto yy3;
168
+ }
169
+ yy15: yyaccept = 0;
170
+ yych = *(YYMARKER = ++YYCURSOR);
171
+ switch(yych){
172
+ case 'A': goto yy168;
173
+ case 'a': goto yy169;
174
+ default: goto yy3;
175
+ }
176
+ yy16: yyaccept = 0;
177
+ yych = *(YYMARKER = ++YYCURSOR);
178
+ switch(yych){
179
+ case '.': goto yy167;
180
+ case '0': goto yy158;
181
+ case '1':
182
+ case '2':
183
+ case '3':
184
+ case '4':
185
+ case '5':
186
+ case '6':
187
+ case '7':
188
+ case '8':
189
+ case '9': goto yy47;
190
+ default: goto yy3;
191
+ }
192
+ yy17: yyaccept = 0;
193
+ yych = *(YYMARKER = ++YYCURSOR);
194
+ switch(yych){
195
+ case '.': goto yy157;
196
+ case '0': goto yy158;
197
+ case '1':
198
+ case '2':
199
+ case '3':
200
+ case '4':
201
+ case '5':
202
+ case '6':
203
+ case '7':
204
+ case '8':
205
+ case '9': goto yy47;
206
+ default: goto yy3;
207
+ }
208
+ yy18: yyaccept = 0;
209
+ yych = *(YYMARKER = ++YYCURSOR);
210
+ switch(yych){
211
+ case 0x00: goto yy52;
212
+ case ',': goto yy142;
213
+ case '.': goto yy50;
214
+ case '0':
215
+ case '1':
216
+ case '2':
217
+ case '3':
218
+ case '4':
219
+ case '5':
220
+ case '6':
221
+ case '7': goto yy140;
222
+ case '8':
223
+ case '9': goto yy141;
224
+ case ':': goto yy49;
225
+ case 'x': goto yy144;
226
+ default: goto yy3;
227
+ }
228
+ yy19: yyaccept = 0;
229
+ yych = *(YYMARKER = ++YYCURSOR);
230
+ switch(yych){
231
+ case 0x00: goto yy52;
232
+ case ',': goto yy47;
233
+ case '.': goto yy50;
234
+ case '0':
235
+ case '1':
236
+ case '2':
237
+ case '3':
238
+ case '4':
239
+ case '5':
240
+ case '6':
241
+ case '7':
242
+ case '8':
243
+ case '9': goto yy46;
244
+ case ':': goto yy49;
245
+ default: goto yy3;
246
+ }
247
+ yy20: yyaccept = 0;
248
+ yych = *(YYMARKER = ++YYCURSOR);
249
+ switch(yych){
250
+ case 'I': goto yy33;
251
+ case 'N': goto yy31;
252
+ case 'i': goto yy32;
253
+ case 'n': goto yy30;
254
+ default: goto yy3;
255
+ }
256
+ yy21: yych = *++YYCURSOR;
257
+ if(yych <= 0x00) goto yy28;
258
+ goto yy3;
259
+ yy22: yyaccept = 0;
260
+ yych = *(YYMARKER = ++YYCURSOR);
261
+ switch(yych){
262
+ case '<': goto yy24;
263
+ default: goto yy3;
264
+ }
265
+ yy23: yych = *++YYCURSOR;
266
+ goto yy3;
267
+ yy24: yych = *++YYCURSOR;
268
+ if(yych <= 0x00) goto yy26;
269
+ goto yy25;
270
+ yy25: YYCURSOR = YYMARKER;
271
+ switch(yyaccept){
272
+ case 0: goto yy3;
273
+ }
274
+ yy26: ++YYCURSOR;
275
+ goto yy27;
276
+ yy27:
277
+ #line 121 "implicit.re"
278
+ { return "merge"; }
279
+ #line 279 "<stdout>"
280
+ yy28: ++YYCURSOR;
281
+ goto yy29;
282
+ yy29:
283
+ #line 119 "implicit.re"
284
+ { return "default"; }
285
+ #line 285 "<stdout>"
286
+ yy30: yych = *++YYCURSOR;
287
+ switch(yych){
288
+ case 'a': goto yy45;
289
+ default: goto yy25;
290
+ }
291
+ yy31: yych = *++YYCURSOR;
292
+ switch(yych){
293
+ case 'A': goto yy40;
294
+ case 'a': goto yy41;
295
+ default: goto yy25;
296
+ }
297
+ yy32: yych = *++YYCURSOR;
298
+ switch(yych){
299
+ case 'n': goto yy39;
300
+ default: goto yy25;
301
+ }
302
+ yy33: yych = *++YYCURSOR;
303
+ switch(yych){
304
+ case 'N': goto yy34;
305
+ case 'n': goto yy35;
306
+ default: goto yy25;
307
+ }
308
+ yy34: yych = *++YYCURSOR;
309
+ switch(yych){
310
+ case 'F': goto yy36;
311
+ default: goto yy25;
312
+ }
313
+ yy35: yych = *++YYCURSOR;
314
+ switch(yych){
315
+ case 'f': goto yy36;
316
+ default: goto yy25;
317
+ }
318
+ yy36: yych = *++YYCURSOR;
319
+ if(yych >= 0x01) goto yy25;
320
+ goto yy37;
321
+ yy37: ++YYCURSOR;
322
+ goto yy38;
323
+ yy38:
324
+ #line 105 "implicit.re"
325
+ { return "float#inf"; }
326
+ #line 326 "<stdout>"
327
+ yy39: yych = *++YYCURSOR;
328
+ switch(yych){
329
+ case 'f': goto yy36;
330
+ default: goto yy25;
331
+ }
332
+ yy40: yych = *++YYCURSOR;
333
+ switch(yych){
334
+ case 'N': goto yy42;
335
+ default: goto yy25;
336
+ }
337
+ yy41: yych = *++YYCURSOR;
338
+ switch(yych){
339
+ case 'N': goto yy42;
340
+ default: goto yy25;
341
+ }
342
+ yy42: yych = *++YYCURSOR;
343
+ if(yych >= 0x01) goto yy25;
344
+ goto yy43;
345
+ yy43: ++YYCURSOR;
346
+ goto yy44;
347
+ yy44:
348
+ #line 109 "implicit.re"
349
+ { return "float#nan"; }
350
+ #line 350 "<stdout>"
351
+ yy45: yych = *++YYCURSOR;
352
+ switch(yych){
353
+ case 'n': goto yy42;
354
+ default: goto yy25;
355
+ }
356
+ yy46: yych = *++YYCURSOR;
357
+ switch(yych){
358
+ case '0':
359
+ case '1':
360
+ case '2':
361
+ case '3':
362
+ case '4':
363
+ case '5':
364
+ case '6':
365
+ case '7':
366
+ case '8':
367
+ case '9': goto yy74;
368
+ default: goto yy48;
369
+ }
370
+ yy47: ++YYCURSOR;
371
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
372
+ yych = *YYCURSOR;
373
+ goto yy48;
374
+ yy48: switch(yych){
375
+ case 0x00: goto yy52;
376
+ case ',': case '0':
377
+ case '1':
378
+ case '2':
379
+ case '3':
380
+ case '4':
381
+ case '5':
382
+ case '6':
383
+ case '7':
384
+ case '8':
385
+ case '9': goto yy47;
386
+ case '.': goto yy50;
387
+ case ':': goto yy49;
388
+ default: goto yy25;
389
+ }
390
+ yy49: ++YYCURSOR;
391
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
392
+ yych = *YYCURSOR;
393
+ switch(yych){
394
+ case '0':
395
+ case '1':
396
+ case '2':
397
+ case '3':
398
+ case '4':
399
+ case '5': goto yy66;
400
+ case '6':
401
+ case '7':
402
+ case '8':
403
+ case '9': goto yy67;
404
+ default: goto yy25;
405
+ }
406
+ yy50: ++YYCURSOR;
407
+ if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
408
+ yych = *YYCURSOR;
409
+ goto yy51;
410
+ yy51: switch(yych){
411
+ case 0x00: goto yy56;
412
+ case ',': goto yy54;
413
+ case '.': goto yy58;
414
+ case '0':
415
+ case '1':
416
+ case '2':
417
+ case '3':
418
+ case '4':
419
+ case '5':
420
+ case '6':
421
+ case '7':
422
+ case '8':
423
+ case '9': goto yy50;
424
+ case 'E': case 'e': goto yy60;
425
+ default: goto yy25;
426
+ }
427
+ yy52: ++YYCURSOR;
428
+ goto yy53;
429
+ yy53:
430
+ #line 97 "implicit.re"
431
+ { return "int"; }
432
+ #line 432 "<stdout>"
433
+ yy54: ++YYCURSOR;
434
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
435
+ yych = *YYCURSOR;
436
+ goto yy55;
437
+ yy55: switch(yych){
438
+ case 0x00: goto yy56;
439
+ case ',': case '0':
440
+ case '1':
441
+ case '2':
442
+ case '3':
443
+ case '4':
444
+ case '5':
445
+ case '6':
446
+ case '7':
447
+ case '8':
448
+ case '9': goto yy54;
449
+ default: goto yy25;
450
+ }
451
+ yy56: ++YYCURSOR;
452
+ goto yy57;
453
+ yy57:
454
+ #line 99 "implicit.re"
455
+ { return "float#fix"; }
456
+ #line 456 "<stdout>"
457
+ yy58: ++YYCURSOR;
458
+ if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
459
+ yych = *YYCURSOR;
460
+ goto yy59;
461
+ yy59: switch(yych){
462
+ case '.': case '0':
463
+ case '1':
464
+ case '2':
465
+ case '3':
466
+ case '4':
467
+ case '5':
468
+ case '6':
469
+ case '7':
470
+ case '8':
471
+ case '9': goto yy58;
472
+ case 'E': case 'e': goto yy60;
473
+ default: goto yy25;
474
+ }
475
+ yy60: yych = *++YYCURSOR;
476
+ switch(yych){
477
+ case '+': case '-': goto yy61;
478
+ default: goto yy25;
479
+ }
480
+ yy61: yych = *++YYCURSOR;
481
+ if(yych <= 0x00) goto yy25;
482
+ goto yy63;
483
+ yy62: ++YYCURSOR;
484
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
485
+ yych = *YYCURSOR;
486
+ goto yy63;
487
+ yy63: switch(yych){
488
+ case 0x00: goto yy64;
489
+ case '0':
490
+ case '1':
491
+ case '2':
492
+ case '3':
493
+ case '4':
494
+ case '5':
495
+ case '6':
496
+ case '7':
497
+ case '8':
498
+ case '9': goto yy62;
499
+ default: goto yy25;
500
+ }
501
+ yy64: ++YYCURSOR;
502
+ goto yy65;
503
+ yy65:
504
+ #line 101 "implicit.re"
505
+ { return "float#exp"; }
506
+ #line 506 "<stdout>"
507
+ yy66: ++YYCURSOR;
508
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
509
+ yych = *YYCURSOR;
510
+ switch(yych){
511
+ case 0x00: goto yy70;
512
+ case '.': goto yy68;
513
+ case '0':
514
+ case '1':
515
+ case '2':
516
+ case '3':
517
+ case '4':
518
+ case '5':
519
+ case '6':
520
+ case '7':
521
+ case '8':
522
+ case '9': goto yy67;
523
+ case ':': goto yy49;
524
+ default: goto yy25;
525
+ }
526
+ yy67: ++YYCURSOR;
527
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
528
+ yych = *YYCURSOR;
529
+ switch(yych){
530
+ case 0x00: goto yy70;
531
+ case '.': goto yy68;
532
+ case ':': goto yy49;
533
+ default: goto yy25;
534
+ }
535
+ yy68: ++YYCURSOR;
536
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
537
+ yych = *YYCURSOR;
538
+ goto yy69;
539
+ yy69: switch(yych){
540
+ case 0x00: goto yy72;
541
+ case ',': case '0':
542
+ case '1':
543
+ case '2':
544
+ case '3':
545
+ case '4':
546
+ case '5':
547
+ case '6':
548
+ case '7':
549
+ case '8':
550
+ case '9': goto yy68;
551
+ default: goto yy25;
552
+ }
553
+ yy70: ++YYCURSOR;
554
+ goto yy71;
555
+ yy71:
556
+ #line 95 "implicit.re"
557
+ { return "int#base60"; }
558
+ #line 558 "<stdout>"
559
+ yy72: ++YYCURSOR;
560
+ goto yy73;
561
+ yy73:
562
+ #line 103 "implicit.re"
563
+ { return "float#base60"; }
564
+ #line 564 "<stdout>"
565
+ yy74: yych = *++YYCURSOR;
566
+ switch(yych){
567
+ case '0':
568
+ case '1':
569
+ case '2':
570
+ case '3':
571
+ case '4':
572
+ case '5':
573
+ case '6':
574
+ case '7':
575
+ case '8':
576
+ case '9': goto yy75;
577
+ default: goto yy48;
578
+ }
579
+ yy75: yych = *++YYCURSOR;
580
+ switch(yych){
581
+ case '-': goto yy76;
582
+ default: goto yy48;
583
+ }
584
+ yy76: yych = *++YYCURSOR;
585
+ switch(yych){
586
+ case '0':
587
+ case '1':
588
+ case '2':
589
+ case '3':
590
+ case '4':
591
+ case '5':
592
+ case '6':
593
+ case '7':
594
+ case '8':
595
+ case '9': goto yy77;
596
+ default: goto yy25;
597
+ }
598
+ yy77: yych = *++YYCURSOR;
599
+ switch(yych){
600
+ case '0':
601
+ case '1':
602
+ case '2':
603
+ case '3':
604
+ case '4':
605
+ case '5':
606
+ case '6':
607
+ case '7':
608
+ case '8':
609
+ case '9': goto yy78;
610
+ default: goto yy25;
611
+ }
612
+ yy78: yych = *++YYCURSOR;
613
+ switch(yych){
614
+ case '-': goto yy79;
615
+ default: goto yy25;
616
+ }
617
+ yy79: yych = *++YYCURSOR;
618
+ switch(yych){
619
+ case '0':
620
+ case '1':
621
+ case '2':
622
+ case '3':
623
+ case '4':
624
+ case '5':
625
+ case '6':
626
+ case '7':
627
+ case '8':
628
+ case '9': goto yy80;
629
+ default: goto yy25;
630
+ }
631
+ yy80: yych = *++YYCURSOR;
632
+ switch(yych){
633
+ case '0':
634
+ case '1':
635
+ case '2':
636
+ case '3':
637
+ case '4':
638
+ case '5':
639
+ case '6':
640
+ case '7':
641
+ case '8':
642
+ case '9': goto yy81;
643
+ default: goto yy25;
644
+ }
645
+ yy81: yych = *++YYCURSOR;
646
+ switch(yych){
647
+ case 0x00: goto yy82;
648
+ case '0':
649
+ case '1':
650
+ case '2':
651
+ case '3':
652
+ case '4':
653
+ case '5':
654
+ case '6':
655
+ case '7':
656
+ case '8':
657
+ case '9': goto yy25;
658
+ case 'T': goto yy84;
659
+ case 't': goto yy85;
660
+ default: goto yy87;
661
+ }
662
+ yy82: ++YYCURSOR;
663
+ goto yy83;
664
+ yy83:
665
+ #line 111 "implicit.re"
666
+ { return "timestamp#ymd"; }
667
+ #line 667 "<stdout>"
668
+ yy84: yych = *++YYCURSOR;
669
+ switch(yych){
670
+ case '0':
671
+ case '1':
672
+ case '2':
673
+ case '3':
674
+ case '4':
675
+ case '5':
676
+ case '6':
677
+ case '7':
678
+ case '8':
679
+ case '9': goto yy126;
680
+ default: goto yy25;
681
+ }
682
+ yy85: yych = *++YYCURSOR;
683
+ switch(yych){
684
+ case '0':
685
+ case '1':
686
+ case '2':
687
+ case '3':
688
+ case '4':
689
+ case '5':
690
+ case '6':
691
+ case '7':
692
+ case '8':
693
+ case '9': goto yy108;
694
+ default: goto yy25;
695
+ }
696
+ yy86: ++YYCURSOR;
697
+ if((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
698
+ yych = *YYCURSOR;
699
+ goto yy87;
700
+ yy87: switch(yych){
701
+ case 0x09: case ' ': goto yy86;
702
+ case '0':
703
+ case '1':
704
+ case '2':
705
+ case '3':
706
+ case '4':
707
+ case '5':
708
+ case '6':
709
+ case '7':
710
+ case '8':
711
+ case '9': goto yy88;
712
+ default: goto yy25;
713
+ }
714
+ yy88: yych = *++YYCURSOR;
715
+ switch(yych){
716
+ case '0':
717
+ case '1':
718
+ case '2':
719
+ case '3':
720
+ case '4':
721
+ case '5':
722
+ case '6':
723
+ case '7':
724
+ case '8':
725
+ case '9': goto yy89;
726
+ default: goto yy25;
727
+ }
728
+ yy89: yych = *++YYCURSOR;
729
+ switch(yych){
730
+ case ':': goto yy90;
731
+ default: goto yy25;
732
+ }
733
+ yy90: yych = *++YYCURSOR;
734
+ switch(yych){
735
+ case '0':
736
+ case '1':
737
+ case '2':
738
+ case '3':
739
+ case '4':
740
+ case '5':
741
+ case '6':
742
+ case '7':
743
+ case '8':
744
+ case '9': goto yy91;
745
+ default: goto yy25;
746
+ }
747
+ yy91: yych = *++YYCURSOR;
748
+ switch(yych){
749
+ case '0':
750
+ case '1':
751
+ case '2':
752
+ case '3':
753
+ case '4':
754
+ case '5':
755
+ case '6':
756
+ case '7':
757
+ case '8':
758
+ case '9': goto yy92;
759
+ default: goto yy25;
760
+ }
761
+ yy92: yych = *++YYCURSOR;
762
+ switch(yych){
763
+ case ':': goto yy93;
764
+ default: goto yy25;
765
+ }
766
+ yy93: yych = *++YYCURSOR;
767
+ switch(yych){
768
+ case '0':
769
+ case '1':
770
+ case '2':
771
+ case '3':
772
+ case '4':
773
+ case '5':
774
+ case '6':
775
+ case '7':
776
+ case '8':
777
+ case '9': goto yy94;
778
+ default: goto yy25;
779
+ }
780
+ yy94: yych = *++YYCURSOR;
781
+ switch(yych){
782
+ case '0':
783
+ case '1':
784
+ case '2':
785
+ case '3':
786
+ case '4':
787
+ case '5':
788
+ case '6':
789
+ case '7':
790
+ case '8':
791
+ case '9': goto yy95;
792
+ default: goto yy25;
793
+ }
794
+ yy95: yych = *++YYCURSOR;
795
+ switch(yych){
796
+ case 0x09: case ' ': goto yy98;
797
+ case '.': goto yy96;
798
+ default: goto yy25;
799
+ }
800
+ yy96: ++YYCURSOR;
801
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
802
+ yych = *YYCURSOR;
803
+ goto yy97;
804
+ yy97: switch(yych){
805
+ case 0x09: case ' ': goto yy98;
806
+ case '0':
807
+ case '1':
808
+ case '2':
809
+ case '3':
810
+ case '4':
811
+ case '5':
812
+ case '6':
813
+ case '7':
814
+ case '8':
815
+ case '9': goto yy96;
816
+ default: goto yy25;
817
+ }
818
+ yy98: ++YYCURSOR;
819
+ if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
820
+ yych = *YYCURSOR;
821
+ goto yy99;
822
+ yy99: switch(yych){
823
+ case 0x09: case ' ': goto yy98;
824
+ case '+': case '-': goto yy101;
825
+ case 'Z': goto yy100;
826
+ default: goto yy25;
827
+ }
828
+ yy100: yych = *++YYCURSOR;
829
+ if(yych <= 0x00) goto yy105;
830
+ goto yy25;
831
+ yy101: yych = *++YYCURSOR;
832
+ switch(yych){
833
+ case '0':
834
+ case '1':
835
+ case '2':
836
+ case '3':
837
+ case '4':
838
+ case '5':
839
+ case '6':
840
+ case '7':
841
+ case '8':
842
+ case '9': goto yy102;
843
+ default: goto yy25;
844
+ }
845
+ yy102: yych = *++YYCURSOR;
846
+ switch(yych){
847
+ case '0':
848
+ case '1':
849
+ case '2':
850
+ case '3':
851
+ case '4':
852
+ case '5':
853
+ case '6':
854
+ case '7':
855
+ case '8':
856
+ case '9': goto yy103;
857
+ default: goto yy25;
858
+ }
859
+ yy103: yych = *++YYCURSOR;
860
+ switch(yych){
861
+ case 0x00: goto yy105;
862
+ case ':': goto yy104;
863
+ default: goto yy25;
864
+ }
865
+ yy104: yych = *++YYCURSOR;
866
+ switch(yych){
867
+ case '0':
868
+ case '1':
869
+ case '2':
870
+ case '3':
871
+ case '4':
872
+ case '5':
873
+ case '6':
874
+ case '7':
875
+ case '8':
876
+ case '9': goto yy107;
877
+ default: goto yy25;
878
+ }
879
+ yy105: ++YYCURSOR;
880
+ goto yy106;
881
+ yy106:
882
+ #line 115 "implicit.re"
883
+ { return "timestamp#spaced"; }
884
+ #line 884 "<stdout>"
885
+ yy107: yych = *++YYCURSOR;
886
+ switch(yych){
887
+ case '0':
888
+ case '1':
889
+ case '2':
890
+ case '3':
891
+ case '4':
892
+ case '5':
893
+ case '6':
894
+ case '7':
895
+ case '8':
896
+ case '9': goto yy100;
897
+ default: goto yy25;
898
+ }
899
+ yy108: yych = *++YYCURSOR;
900
+ switch(yych){
901
+ case '0':
902
+ case '1':
903
+ case '2':
904
+ case '3':
905
+ case '4':
906
+ case '5':
907
+ case '6':
908
+ case '7':
909
+ case '8':
910
+ case '9': goto yy109;
911
+ default: goto yy25;
912
+ }
913
+ yy109: yych = *++YYCURSOR;
914
+ switch(yych){
915
+ case ':': goto yy110;
916
+ default: goto yy25;
917
+ }
918
+ yy110: yych = *++YYCURSOR;
919
+ switch(yych){
920
+ case '0':
921
+ case '1':
922
+ case '2':
923
+ case '3':
924
+ case '4':
925
+ case '5':
926
+ case '6':
927
+ case '7':
928
+ case '8':
929
+ case '9': goto yy111;
930
+ default: goto yy25;
931
+ }
932
+ yy111: yych = *++YYCURSOR;
933
+ switch(yych){
934
+ case '0':
935
+ case '1':
936
+ case '2':
937
+ case '3':
938
+ case '4':
939
+ case '5':
940
+ case '6':
941
+ case '7':
942
+ case '8':
943
+ case '9': goto yy112;
944
+ default: goto yy25;
945
+ }
946
+ yy112: yych = *++YYCURSOR;
947
+ switch(yych){
948
+ case ':': goto yy113;
949
+ default: goto yy25;
950
+ }
951
+ yy113: yych = *++YYCURSOR;
952
+ switch(yych){
953
+ case '0':
954
+ case '1':
955
+ case '2':
956
+ case '3':
957
+ case '4':
958
+ case '5':
959
+ case '6':
960
+ case '7':
961
+ case '8':
962
+ case '9': goto yy114;
963
+ default: goto yy25;
964
+ }
965
+ yy114: yych = *++YYCURSOR;
966
+ switch(yych){
967
+ case '0':
968
+ case '1':
969
+ case '2':
970
+ case '3':
971
+ case '4':
972
+ case '5':
973
+ case '6':
974
+ case '7':
975
+ case '8':
976
+ case '9': goto yy115;
977
+ default: goto yy25;
978
+ }
979
+ yy115: yych = *++YYCURSOR;
980
+ switch(yych){
981
+ case '.': goto yy116;
982
+ case '0':
983
+ case '1':
984
+ case '2':
985
+ case '3':
986
+ case '4':
987
+ case '5':
988
+ case '6':
989
+ case '7':
990
+ case '8':
991
+ case '9': goto yy25;
992
+ default: goto yy117;
993
+ }
994
+ yy116: ++YYCURSOR;
995
+ if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
996
+ yych = *YYCURSOR;
997
+ goto yy117;
998
+ yy117: switch(yych){
999
+ case '+': case '-': goto yy119;
1000
+ case '0':
1001
+ case '1':
1002
+ case '2':
1003
+ case '3':
1004
+ case '4':
1005
+ case '5':
1006
+ case '6':
1007
+ case '7':
1008
+ case '8':
1009
+ case '9': goto yy116;
1010
+ case 'Z': goto yy118;
1011
+ default: goto yy25;
1012
+ }
1013
+ yy118: yych = *++YYCURSOR;
1014
+ if(yych <= 0x00) goto yy123;
1015
+ goto yy25;
1016
+ yy119: yych = *++YYCURSOR;
1017
+ switch(yych){
1018
+ case '0':
1019
+ case '1':
1020
+ case '2':
1021
+ case '3':
1022
+ case '4':
1023
+ case '5':
1024
+ case '6':
1025
+ case '7':
1026
+ case '8':
1027
+ case '9': goto yy120;
1028
+ default: goto yy25;
1029
+ }
1030
+ yy120: yych = *++YYCURSOR;
1031
+ switch(yych){
1032
+ case '0':
1033
+ case '1':
1034
+ case '2':
1035
+ case '3':
1036
+ case '4':
1037
+ case '5':
1038
+ case '6':
1039
+ case '7':
1040
+ case '8':
1041
+ case '9': goto yy121;
1042
+ default: goto yy25;
1043
+ }
1044
+ yy121: yych = *++YYCURSOR;
1045
+ switch(yych){
1046
+ case 0x00: goto yy123;
1047
+ case ':': goto yy122;
1048
+ default: goto yy25;
1049
+ }
1050
+ yy122: yych = *++YYCURSOR;
1051
+ switch(yych){
1052
+ case '0':
1053
+ case '1':
1054
+ case '2':
1055
+ case '3':
1056
+ case '4':
1057
+ case '5':
1058
+ case '6':
1059
+ case '7':
1060
+ case '8':
1061
+ case '9': goto yy125;
1062
+ default: goto yy25;
1063
+ }
1064
+ yy123: ++YYCURSOR;
1065
+ goto yy124;
1066
+ yy124:
1067
+ #line 113 "implicit.re"
1068
+ { return "timestamp#iso8601"; }
1069
+ #line 1069 "<stdout>"
1070
+ yy125: yych = *++YYCURSOR;
1071
+ switch(yych){
1072
+ case '0':
1073
+ case '1':
1074
+ case '2':
1075
+ case '3':
1076
+ case '4':
1077
+ case '5':
1078
+ case '6':
1079
+ case '7':
1080
+ case '8':
1081
+ case '9': goto yy118;
1082
+ default: goto yy25;
1083
+ }
1084
+ yy126: yych = *++YYCURSOR;
1085
+ switch(yych){
1086
+ case '0':
1087
+ case '1':
1088
+ case '2':
1089
+ case '3':
1090
+ case '4':
1091
+ case '5':
1092
+ case '6':
1093
+ case '7':
1094
+ case '8':
1095
+ case '9': goto yy127;
1096
+ default: goto yy25;
1097
+ }
1098
+ yy127: yych = *++YYCURSOR;
1099
+ switch(yych){
1100
+ case ':': goto yy128;
1101
+ default: goto yy25;
1102
+ }
1103
+ yy128: yych = *++YYCURSOR;
1104
+ switch(yych){
1105
+ case '0':
1106
+ case '1':
1107
+ case '2':
1108
+ case '3':
1109
+ case '4':
1110
+ case '5':
1111
+ case '6':
1112
+ case '7':
1113
+ case '8':
1114
+ case '9': goto yy129;
1115
+ default: goto yy25;
1116
+ }
1117
+ yy129: yych = *++YYCURSOR;
1118
+ switch(yych){
1119
+ case '0':
1120
+ case '1':
1121
+ case '2':
1122
+ case '3':
1123
+ case '4':
1124
+ case '5':
1125
+ case '6':
1126
+ case '7':
1127
+ case '8':
1128
+ case '9': goto yy130;
1129
+ default: goto yy25;
1130
+ }
1131
+ yy130: yych = *++YYCURSOR;
1132
+ switch(yych){
1133
+ case ':': goto yy131;
1134
+ default: goto yy25;
1135
+ }
1136
+ yy131: yych = *++YYCURSOR;
1137
+ switch(yych){
1138
+ case '0':
1139
+ case '1':
1140
+ case '2':
1141
+ case '3':
1142
+ case '4':
1143
+ case '5':
1144
+ case '6':
1145
+ case '7':
1146
+ case '8':
1147
+ case '9': goto yy132;
1148
+ default: goto yy25;
1149
+ }
1150
+ yy132: yych = *++YYCURSOR;
1151
+ switch(yych){
1152
+ case '0':
1153
+ case '1':
1154
+ case '2':
1155
+ case '3':
1156
+ case '4':
1157
+ case '5':
1158
+ case '6':
1159
+ case '7':
1160
+ case '8':
1161
+ case '9': goto yy133;
1162
+ default: goto yy25;
1163
+ }
1164
+ yy133: yych = *++YYCURSOR;
1165
+ switch(yych){
1166
+ case '.': goto yy134;
1167
+ case '0':
1168
+ case '1':
1169
+ case '2':
1170
+ case '3':
1171
+ case '4':
1172
+ case '5':
1173
+ case '6':
1174
+ case '7':
1175
+ case '8':
1176
+ case '9': goto yy25;
1177
+ case 'Z': goto yy136;
1178
+ default: goto yy135;
1179
+ }
1180
+ yy134: ++YYCURSOR;
1181
+ if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
1182
+ yych = *YYCURSOR;
1183
+ goto yy135;
1184
+ yy135: switch(yych){
1185
+ case '+': case '-': goto yy119;
1186
+ case '0': goto yy134;
1187
+ case '1':
1188
+ case '2':
1189
+ case '3':
1190
+ case '4':
1191
+ case '5':
1192
+ case '6':
1193
+ case '7':
1194
+ case '8':
1195
+ case '9': goto yy138;
1196
+ case 'Z': goto yy118;
1197
+ default: goto yy25;
1198
+ }
1199
+ yy136: yych = *++YYCURSOR;
1200
+ if(yych >= 0x01) goto yy25;
1201
+ goto yy137;
1202
+ yy137: yych = *++YYCURSOR;
1203
+ goto yy124;
1204
+ yy138: ++YYCURSOR;
1205
+ if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
1206
+ yych = *YYCURSOR;
1207
+ goto yy139;
1208
+ yy139: switch(yych){
1209
+ case '+': case '-': goto yy119;
1210
+ case '0': goto yy134;
1211
+ case '1':
1212
+ case '2':
1213
+ case '3':
1214
+ case '4':
1215
+ case '5':
1216
+ case '6':
1217
+ case '7':
1218
+ case '8':
1219
+ case '9': goto yy138;
1220
+ case 'Z': goto yy136;
1221
+ default: goto yy25;
1222
+ }
1223
+ yy140: yych = *++YYCURSOR;
1224
+ switch(yych){
1225
+ case '0':
1226
+ case '1':
1227
+ case '2':
1228
+ case '3':
1229
+ case '4':
1230
+ case '5':
1231
+ case '6':
1232
+ case '7': goto yy155;
1233
+ case '8':
1234
+ case '9': goto yy153;
1235
+ default: goto yy143;
1236
+ }
1237
+ yy141: yych = *++YYCURSOR;
1238
+ switch(yych){
1239
+ case '0':
1240
+ case '1':
1241
+ case '2':
1242
+ case '3':
1243
+ case '4':
1244
+ case '5':
1245
+ case '6':
1246
+ case '7':
1247
+ case '8':
1248
+ case '9': goto yy153;
1249
+ default: goto yy152;
1250
+ }
1251
+ yy142: ++YYCURSOR;
1252
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
1253
+ yych = *YYCURSOR;
1254
+ goto yy143;
1255
+ yy143: switch(yych){
1256
+ case 0x00: goto yy149;
1257
+ case ',': case '0':
1258
+ case '1':
1259
+ case '2':
1260
+ case '3':
1261
+ case '4':
1262
+ case '5':
1263
+ case '6':
1264
+ case '7': goto yy142;
1265
+ case '.': goto yy50;
1266
+ case '8':
1267
+ case '9': goto yy151;
1268
+ case ':': goto yy49;
1269
+ default: goto yy25;
1270
+ }
1271
+ yy144: yych = *++YYCURSOR;
1272
+ if(yych <= 0x00) goto yy25;
1273
+ goto yy146;
1274
+ yy145: ++YYCURSOR;
1275
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
1276
+ yych = *YYCURSOR;
1277
+ goto yy146;
1278
+ yy146: switch(yych){
1279
+ case 0x00: goto yy147;
1280
+ case ',': case '0':
1281
+ case '1':
1282
+ case '2':
1283
+ case '3':
1284
+ case '4':
1285
+ case '5':
1286
+ case '6':
1287
+ case '7':
1288
+ case '8':
1289
+ case '9': case 'A':
1290
+ case 'B':
1291
+ case 'C':
1292
+ case 'D':
1293
+ case 'E':
1294
+ case 'F': case 'a':
1295
+ case 'b':
1296
+ case 'c':
1297
+ case 'd':
1298
+ case 'e':
1299
+ case 'f': goto yy145;
1300
+ default: goto yy25;
1301
+ }
1302
+ yy147: ++YYCURSOR;
1303
+ goto yy148;
1304
+ yy148:
1305
+ #line 91 "implicit.re"
1306
+ { return "int#hex"; }
1307
+ #line 1307 "<stdout>"
1308
+ yy149: ++YYCURSOR;
1309
+ goto yy150;
1310
+ yy150:
1311
+ #line 93 "implicit.re"
1312
+ { return "int#oct"; }
1313
+ #line 1313 "<stdout>"
1314
+ yy151: ++YYCURSOR;
1315
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
1316
+ yych = *YYCURSOR;
1317
+ goto yy152;
1318
+ yy152: switch(yych){
1319
+ case ',': case '0':
1320
+ case '1':
1321
+ case '2':
1322
+ case '3':
1323
+ case '4':
1324
+ case '5':
1325
+ case '6':
1326
+ case '7':
1327
+ case '8':
1328
+ case '9': goto yy151;
1329
+ case '.': goto yy50;
1330
+ case ':': goto yy49;
1331
+ default: goto yy25;
1332
+ }
1333
+ yy153: yych = *++YYCURSOR;
1334
+ switch(yych){
1335
+ case '0':
1336
+ case '1':
1337
+ case '2':
1338
+ case '3':
1339
+ case '4':
1340
+ case '5':
1341
+ case '6':
1342
+ case '7':
1343
+ case '8':
1344
+ case '9': goto yy154;
1345
+ default: goto yy152;
1346
+ }
1347
+ yy154: yych = *++YYCURSOR;
1348
+ switch(yych){
1349
+ case '-': goto yy76;
1350
+ default: goto yy152;
1351
+ }
1352
+ yy155: yych = *++YYCURSOR;
1353
+ switch(yych){
1354
+ case '0':
1355
+ case '1':
1356
+ case '2':
1357
+ case '3':
1358
+ case '4':
1359
+ case '5':
1360
+ case '6':
1361
+ case '7': goto yy156;
1362
+ case '8':
1363
+ case '9': goto yy154;
1364
+ default: goto yy143;
1365
+ }
1366
+ yy156: yych = *++YYCURSOR;
1367
+ switch(yych){
1368
+ case '-': goto yy76;
1369
+ default: goto yy143;
1370
+ }
1371
+ yy157: yych = *++YYCURSOR;
1372
+ switch(yych){
1373
+ case 'I': goto yy160;
1374
+ case 'i': goto yy159;
1375
+ default: goto yy25;
1376
+ }
1377
+ yy158: yych = *++YYCURSOR;
1378
+ switch(yych){
1379
+ case 0x00: goto yy52;
1380
+ case 'x': goto yy144;
1381
+ default: goto yy143;
1382
+ }
1383
+ yy159: yych = *++YYCURSOR;
1384
+ switch(yych){
1385
+ case 'n': goto yy166;
1386
+ default: goto yy25;
1387
+ }
1388
+ yy160: yych = *++YYCURSOR;
1389
+ switch(yych){
1390
+ case 'N': goto yy161;
1391
+ case 'n': goto yy162;
1392
+ default: goto yy25;
1393
+ }
1394
+ yy161: yych = *++YYCURSOR;
1395
+ switch(yych){
1396
+ case 'F': goto yy163;
1397
+ default: goto yy25;
1398
+ }
1399
+ yy162: yych = *++YYCURSOR;
1400
+ switch(yych){
1401
+ case 'f': goto yy163;
1402
+ default: goto yy25;
1403
+ }
1404
+ yy163: yych = *++YYCURSOR;
1405
+ if(yych >= 0x01) goto yy25;
1406
+ goto yy164;
1407
+ yy164: ++YYCURSOR;
1408
+ goto yy165;
1409
+ yy165:
1410
+ #line 107 "implicit.re"
1411
+ { return "float#neginf"; }
1412
+ #line 1412 "<stdout>"
1413
+ yy166: yych = *++YYCURSOR;
1414
+ switch(yych){
1415
+ case 'f': goto yy163;
1416
+ default: goto yy25;
1417
+ }
1418
+ yy167: yych = *++YYCURSOR;
1419
+ switch(yych){
1420
+ case 'I': goto yy33;
1421
+ case 'i': goto yy32;
1422
+ default: goto yy25;
1423
+ }
1424
+ yy168: yych = *++YYCURSOR;
1425
+ switch(yych){
1426
+ case 'L': goto yy175;
1427
+ default: goto yy25;
1428
+ }
1429
+ yy169: yych = *++YYCURSOR;
1430
+ switch(yych){
1431
+ case 'l': goto yy170;
1432
+ default: goto yy25;
1433
+ }
1434
+ yy170: yych = *++YYCURSOR;
1435
+ switch(yych){
1436
+ case 's': goto yy171;
1437
+ default: goto yy25;
1438
+ }
1439
+ yy171: yych = *++YYCURSOR;
1440
+ switch(yych){
1441
+ case 'e': goto yy172;
1442
+ default: goto yy25;
1443
+ }
1444
+ yy172: yych = *++YYCURSOR;
1445
+ if(yych >= 0x01) goto yy25;
1446
+ goto yy173;
1447
+ yy173: ++YYCURSOR;
1448
+ goto yy174;
1449
+ yy174:
1450
+ #line 89 "implicit.re"
1451
+ { return "bool#no"; }
1452
+ #line 1452 "<stdout>"
1453
+ yy175: yych = *++YYCURSOR;
1454
+ switch(yych){
1455
+ case 'S': goto yy176;
1456
+ default: goto yy25;
1457
+ }
1458
+ yy176: yych = *++YYCURSOR;
1459
+ switch(yych){
1460
+ case 'E': goto yy172;
1461
+ default: goto yy25;
1462
+ }
1463
+ yy177: yych = *++YYCURSOR;
1464
+ switch(yych){
1465
+ case 'l': goto yy178;
1466
+ default: goto yy25;
1467
+ }
1468
+ yy178: yych = *++YYCURSOR;
1469
+ switch(yych){
1470
+ case 's': goto yy179;
1471
+ default: goto yy25;
1472
+ }
1473
+ yy179: yych = *++YYCURSOR;
1474
+ switch(yych){
1475
+ case 'e': goto yy172;
1476
+ default: goto yy25;
1477
+ }
1478
+ yy180: yych = *++YYCURSOR;
1479
+ switch(yych){
1480
+ case 'F': goto yy172;
1481
+ default: goto yy25;
1482
+ }
1483
+ yy181: yych = *++YYCURSOR;
1484
+ switch(yych){
1485
+ case 'f': goto yy172;
1486
+ default: goto yy25;
1487
+ }
1488
+ yy182: yych = *++YYCURSOR;
1489
+ if(yych >= 0x01) goto yy25;
1490
+ goto yy183;
1491
+ yy183: ++YYCURSOR;
1492
+ goto yy184;
1493
+ yy184:
1494
+ #line 87 "implicit.re"
1495
+ { return "bool#yes"; }
1496
+ #line 1496 "<stdout>"
1497
+ yy185: yych = *++YYCURSOR;
1498
+ switch(yych){
1499
+ case 'f': goto yy172;
1500
+ default: goto yy25;
1501
+ }
1502
+ yy186: yych = *++YYCURSOR;
1503
+ switch(yych){
1504
+ case 'U': goto yy189;
1505
+ default: goto yy25;
1506
+ }
1507
+ yy187: yych = *++YYCURSOR;
1508
+ switch(yych){
1509
+ case 'u': goto yy188;
1510
+ default: goto yy25;
1511
+ }
1512
+ yy188: yych = *++YYCURSOR;
1513
+ switch(yych){
1514
+ case 'e': goto yy182;
1515
+ default: goto yy25;
1516
+ }
1517
+ yy189: yych = *++YYCURSOR;
1518
+ switch(yych){
1519
+ case 'E': goto yy182;
1520
+ default: goto yy25;
1521
+ }
1522
+ yy190: yych = *++YYCURSOR;
1523
+ switch(yych){
1524
+ case 'u': goto yy191;
1525
+ default: goto yy25;
1526
+ }
1527
+ yy191: yych = *++YYCURSOR;
1528
+ switch(yych){
1529
+ case 'e': goto yy182;
1530
+ default: goto yy25;
1531
+ }
1532
+ yy192: yych = *++YYCURSOR;
1533
+ switch(yych){
1534
+ case 'S': goto yy182;
1535
+ default: goto yy25;
1536
+ }
1537
+ yy193: yych = *++YYCURSOR;
1538
+ switch(yych){
1539
+ case 's': goto yy182;
1540
+ default: goto yy25;
1541
+ }
1542
+ yy194: yych = *++YYCURSOR;
1543
+ switch(yych){
1544
+ case 's': goto yy182;
1545
+ default: goto yy25;
1546
+ }
1547
+ yy195: yych = *++YYCURSOR;
1548
+ switch(yych){
1549
+ case 'L': goto yy199;
1550
+ default: goto yy25;
1551
+ }
1552
+ yy196: yych = *++YYCURSOR;
1553
+ switch(yych){
1554
+ case 'l': goto yy197;
1555
+ default: goto yy25;
1556
+ }
1557
+ yy197: yych = *++YYCURSOR;
1558
+ switch(yych){
1559
+ case 'l': goto yy198;
1560
+ default: goto yy25;
1561
+ }
1562
+ yy198: yych = *++YYCURSOR;
1563
+ if(yych <= 0x00) goto yy6;
1564
+ goto yy25;
1565
+ yy199: yych = *++YYCURSOR;
1566
+ switch(yych){
1567
+ case 'L': goto yy198;
1568
+ default: goto yy25;
1569
+ }
1570
+ yy200: yych = *++YYCURSOR;
1571
+ switch(yych){
1572
+ case 'l': goto yy201;
1573
+ default: goto yy25;
1574
+ }
1575
+ yy201: ++YYCURSOR;
1576
+ switch((yych = *YYCURSOR)) {
1577
+ case 'l': goto yy198;
1578
+ default: goto yy25;
1579
+ }
1580
+ }
1581
+ #line 125 "implicit.re"
1582
+
1583
+
1584
+ }
1585
+
1586
+ /* Remove ending fragment and compare types */
1587
+ int
1588
+ syck_tagcmp( const char *tag1, const char *tag2 )
1589
+ {
1590
+ if ( tag1 == tag2 ) return 1;
1591
+ if ( tag1 == NULL || tag2 == NULL ) return 0;
1592
+ else {
1593
+ int i;
1594
+ char *othorpe;
1595
+ char *tmp1 = syck_strndup( tag1, strlen( tag1 ) );
1596
+ char *tmp2 = syck_strndup( tag2, strlen( tag2 ) );
1597
+ othorpe = strstr( tmp1, "#" );
1598
+ if ( othorpe != NULL ) {
1599
+ othorpe[0] = '\0';
1600
+ }
1601
+ othorpe = strstr( tmp2, "#" );
1602
+ if ( othorpe != NULL ) {
1603
+ othorpe[0] = '\0';
1604
+ }
1605
+ i = strcmp( tmp1, tmp2 );
1606
+ S_FREE( tmp1 ); S_FREE( tmp2 );
1607
+ return i;
1608
+ }
1609
+ }
1610
+
1611
+ char *
1612
+ syck_type_id_to_uri( const char *type_id )
1613
+ {
1614
+ const char *cursor, *limit, *marker = 0;
1615
+
1616
+ cursor = type_id;
1617
+ limit = type_id + strlen( type_id );
1618
+
1619
+
1620
+ #line 1620 "<stdout>"
1621
+ {
1622
+ YYCTYPE yych;
1623
+ unsigned int yyaccept = 0;
1624
+ goto yy202;
1625
+ ++YYCURSOR;
1626
+ yy202:
1627
+ if((YYLIMIT - YYCURSOR) < 11) YYFILL(11);
1628
+ yych = *YYCURSOR;
1629
+ switch(yych){
1630
+ case 0x00: goto yy204;
1631
+ case '!': goto yy208;
1632
+ case '0':
1633
+ case '1':
1634
+ case '2':
1635
+ case '3':
1636
+ case '4':
1637
+ case '5':
1638
+ case '6':
1639
+ case '7':
1640
+ case '8':
1641
+ case '9': case 'A':
1642
+ case 'B':
1643
+ case 'C':
1644
+ case 'D':
1645
+ case 'E':
1646
+ case 'F':
1647
+ case 'G':
1648
+ case 'H':
1649
+ case 'I':
1650
+ case 'J':
1651
+ case 'K':
1652
+ case 'L':
1653
+ case 'M':
1654
+ case 'N':
1655
+ case 'O':
1656
+ case 'P':
1657
+ case 'Q':
1658
+ case 'R':
1659
+ case 'S':
1660
+ case 'T':
1661
+ case 'U':
1662
+ case 'V':
1663
+ case 'W':
1664
+ case 'X':
1665
+ case 'Y':
1666
+ case 'Z': case '_': case 'a':
1667
+ case 'b':
1668
+ case 'c':
1669
+ case 'd':
1670
+ case 'e':
1671
+ case 'f':
1672
+ case 'g':
1673
+ case 'h':
1674
+ case 'i':
1675
+ case 'j':
1676
+ case 'k':
1677
+ case 'l':
1678
+ case 'm':
1679
+ case 'n':
1680
+ case 'o':
1681
+ case 'p':
1682
+ case 'q':
1683
+ case 'r':
1684
+ case 's': case 'u':
1685
+ case 'v':
1686
+ case 'w': case 'y':
1687
+ case 'z': goto yy210;
1688
+ case 't': goto yy205;
1689
+ case 'x': goto yy207;
1690
+ default: goto yy211;
1691
+ }
1692
+ yy204: YYCURSOR = YYMARKER;
1693
+ switch(yyaccept){
1694
+ case 0: goto yy206;
1695
+ }
1696
+ yy205: yyaccept = 0;
1697
+ yych = *(YYMARKER = ++YYCURSOR);
1698
+ switch(yych){
1699
+ case ',': goto yy216;
1700
+ case '-': goto yy212;
1701
+ case '.': goto yy217;
1702
+ case '/': goto yy218;
1703
+ case '0':
1704
+ case '1':
1705
+ case '2':
1706
+ case '3':
1707
+ case '4':
1708
+ case '5':
1709
+ case '6':
1710
+ case '7':
1711
+ case '8':
1712
+ case '9': case 'A':
1713
+ case 'B':
1714
+ case 'C':
1715
+ case 'D':
1716
+ case 'E':
1717
+ case 'F':
1718
+ case 'G':
1719
+ case 'H':
1720
+ case 'I':
1721
+ case 'J':
1722
+ case 'K':
1723
+ case 'L':
1724
+ case 'M':
1725
+ case 'N':
1726
+ case 'O':
1727
+ case 'P':
1728
+ case 'Q':
1729
+ case 'R':
1730
+ case 'S':
1731
+ case 'T':
1732
+ case 'U':
1733
+ case 'V':
1734
+ case 'W':
1735
+ case 'X':
1736
+ case 'Y':
1737
+ case 'Z': case '_': case 'b':
1738
+ case 'c':
1739
+ case 'd':
1740
+ case 'e':
1741
+ case 'f':
1742
+ case 'g':
1743
+ case 'h':
1744
+ case 'i':
1745
+ case 'j':
1746
+ case 'k':
1747
+ case 'l':
1748
+ case 'm':
1749
+ case 'n':
1750
+ case 'o':
1751
+ case 'p':
1752
+ case 'q':
1753
+ case 'r':
1754
+ case 's':
1755
+ case 't':
1756
+ case 'u':
1757
+ case 'v':
1758
+ case 'w':
1759
+ case 'x':
1760
+ case 'y':
1761
+ case 'z': goto yy214;
1762
+ case 'a': goto yy246;
1763
+ default: goto yy206;
1764
+ }
1765
+ yy206:
1766
+ #line 202 "implicit.re"
1767
+ { return syck_taguri( YAML_DOMAIN, type_id, (int)strlen( type_id ) ); }
1768
+ #line 1768 "<stdout>"
1769
+ yy207: yyaccept = 0;
1770
+ yych = *(YYMARKER = ++YYCURSOR);
1771
+ switch(yych){
1772
+ case ',': case '.':
1773
+ case '/':
1774
+ case '0':
1775
+ case '1':
1776
+ case '2':
1777
+ case '3':
1778
+ case '4':
1779
+ case '5':
1780
+ case '6':
1781
+ case '7':
1782
+ case '8':
1783
+ case '9': case 'A':
1784
+ case 'B':
1785
+ case 'C':
1786
+ case 'D':
1787
+ case 'E':
1788
+ case 'F':
1789
+ case 'G':
1790
+ case 'H':
1791
+ case 'I':
1792
+ case 'J':
1793
+ case 'K':
1794
+ case 'L':
1795
+ case 'M':
1796
+ case 'N':
1797
+ case 'O':
1798
+ case 'P':
1799
+ case 'Q':
1800
+ case 'R':
1801
+ case 'S':
1802
+ case 'T':
1803
+ case 'U':
1804
+ case 'V':
1805
+ case 'W':
1806
+ case 'X':
1807
+ case 'Y':
1808
+ case 'Z': case '_': case 'a':
1809
+ case 'b':
1810
+ case 'c':
1811
+ case 'd':
1812
+ case 'e':
1813
+ case 'f':
1814
+ case 'g':
1815
+ case 'h':
1816
+ case 'i':
1817
+ case 'j':
1818
+ case 'k':
1819
+ case 'l':
1820
+ case 'm':
1821
+ case 'n':
1822
+ case 'o':
1823
+ case 'p':
1824
+ case 'q':
1825
+ case 'r':
1826
+ case 's':
1827
+ case 't':
1828
+ case 'u':
1829
+ case 'v':
1830
+ case 'w':
1831
+ case 'x':
1832
+ case 'y':
1833
+ case 'z': goto yy215;
1834
+ case '-': goto yy236;
1835
+ default: goto yy206;
1836
+ }
1837
+ yy208: ++YYCURSOR;
1838
+ goto yy209;
1839
+ yy209:
1840
+ #line 176 "implicit.re"
1841
+ { return syck_xprivate( type_id + 1, (int)strlen( type_id ) - 1 ); }
1842
+ #line 1842 "<stdout>"
1843
+ yy210: yyaccept = 0;
1844
+ yych = *(YYMARKER = ++YYCURSOR);
1845
+ switch(yych){
1846
+ case ',': goto yy216;
1847
+ case '-': goto yy212;
1848
+ case '.': goto yy217;
1849
+ case '/': goto yy218;
1850
+ case '0':
1851
+ case '1':
1852
+ case '2':
1853
+ case '3':
1854
+ case '4':
1855
+ case '5':
1856
+ case '6':
1857
+ case '7':
1858
+ case '8':
1859
+ case '9': case 'A':
1860
+ case 'B':
1861
+ case 'C':
1862
+ case 'D':
1863
+ case 'E':
1864
+ case 'F':
1865
+ case 'G':
1866
+ case 'H':
1867
+ case 'I':
1868
+ case 'J':
1869
+ case 'K':
1870
+ case 'L':
1871
+ case 'M':
1872
+ case 'N':
1873
+ case 'O':
1874
+ case 'P':
1875
+ case 'Q':
1876
+ case 'R':
1877
+ case 'S':
1878
+ case 'T':
1879
+ case 'U':
1880
+ case 'V':
1881
+ case 'W':
1882
+ case 'X':
1883
+ case 'Y':
1884
+ case 'Z': case '_': case 'a':
1885
+ case 'b':
1886
+ case 'c':
1887
+ case 'd':
1888
+ case 'e':
1889
+ case 'f':
1890
+ case 'g':
1891
+ case 'h':
1892
+ case 'i':
1893
+ case 'j':
1894
+ case 'k':
1895
+ case 'l':
1896
+ case 'm':
1897
+ case 'n':
1898
+ case 'o':
1899
+ case 'p':
1900
+ case 'q':
1901
+ case 'r':
1902
+ case 's':
1903
+ case 't':
1904
+ case 'u':
1905
+ case 'v':
1906
+ case 'w':
1907
+ case 'x':
1908
+ case 'y':
1909
+ case 'z': goto yy214;
1910
+ default: goto yy206;
1911
+ }
1912
+ yy211: yych = *++YYCURSOR;
1913
+ goto yy206;
1914
+ yy212: ++YYCURSOR;
1915
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
1916
+ yych = *YYCURSOR;
1917
+ goto yy213;
1918
+ yy213: switch(yych){
1919
+ case '-': goto yy212;
1920
+ case '0':
1921
+ case '1':
1922
+ case '2':
1923
+ case '3':
1924
+ case '4':
1925
+ case '5':
1926
+ case '6':
1927
+ case '7':
1928
+ case '8':
1929
+ case '9': case 'A':
1930
+ case 'B':
1931
+ case 'C':
1932
+ case 'D':
1933
+ case 'E':
1934
+ case 'F':
1935
+ case 'G':
1936
+ case 'H':
1937
+ case 'I':
1938
+ case 'J':
1939
+ case 'K':
1940
+ case 'L':
1941
+ case 'M':
1942
+ case 'N':
1943
+ case 'O':
1944
+ case 'P':
1945
+ case 'Q':
1946
+ case 'R':
1947
+ case 'S':
1948
+ case 'T':
1949
+ case 'U':
1950
+ case 'V':
1951
+ case 'W':
1952
+ case 'X':
1953
+ case 'Y':
1954
+ case 'Z': case '_': case 'a':
1955
+ case 'b':
1956
+ case 'c':
1957
+ case 'd':
1958
+ case 'e':
1959
+ case 'f':
1960
+ case 'g':
1961
+ case 'h':
1962
+ case 'i':
1963
+ case 'j':
1964
+ case 'k':
1965
+ case 'l':
1966
+ case 'm':
1967
+ case 'n':
1968
+ case 'o':
1969
+ case 'p':
1970
+ case 'q':
1971
+ case 'r':
1972
+ case 's':
1973
+ case 't':
1974
+ case 'u':
1975
+ case 'v':
1976
+ case 'w':
1977
+ case 'x':
1978
+ case 'y':
1979
+ case 'z': goto yy214;
1980
+ default: goto yy204;
1981
+ }
1982
+ yy214: ++YYCURSOR;
1983
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
1984
+ yych = *YYCURSOR;
1985
+ goto yy215;
1986
+ yy215: switch(yych){
1987
+ case ',': goto yy216;
1988
+ case '-': goto yy212;
1989
+ case '.': goto yy217;
1990
+ case '/': goto yy218;
1991
+ case '0':
1992
+ case '1':
1993
+ case '2':
1994
+ case '3':
1995
+ case '4':
1996
+ case '5':
1997
+ case '6':
1998
+ case '7':
1999
+ case '8':
2000
+ case '9': case 'A':
2001
+ case 'B':
2002
+ case 'C':
2003
+ case 'D':
2004
+ case 'E':
2005
+ case 'F':
2006
+ case 'G':
2007
+ case 'H':
2008
+ case 'I':
2009
+ case 'J':
2010
+ case 'K':
2011
+ case 'L':
2012
+ case 'M':
2013
+ case 'N':
2014
+ case 'O':
2015
+ case 'P':
2016
+ case 'Q':
2017
+ case 'R':
2018
+ case 'S':
2019
+ case 'T':
2020
+ case 'U':
2021
+ case 'V':
2022
+ case 'W':
2023
+ case 'X':
2024
+ case 'Y':
2025
+ case 'Z': case '_': case 'a':
2026
+ case 'b':
2027
+ case 'c':
2028
+ case 'd':
2029
+ case 'e':
2030
+ case 'f':
2031
+ case 'g':
2032
+ case 'h':
2033
+ case 'i':
2034
+ case 'j':
2035
+ case 'k':
2036
+ case 'l':
2037
+ case 'm':
2038
+ case 'n':
2039
+ case 'o':
2040
+ case 'p':
2041
+ case 'q':
2042
+ case 'r':
2043
+ case 's':
2044
+ case 't':
2045
+ case 'u':
2046
+ case 'v':
2047
+ case 'w':
2048
+ case 'x':
2049
+ case 'y':
2050
+ case 'z': goto yy214;
2051
+ default: goto yy204;
2052
+ }
2053
+ yy216: yych = *++YYCURSOR;
2054
+ switch(yych){
2055
+ case '0':
2056
+ case '1':
2057
+ case '2':
2058
+ case '3':
2059
+ case '4':
2060
+ case '5':
2061
+ case '6':
2062
+ case '7':
2063
+ case '8':
2064
+ case '9': goto yy224;
2065
+ default: goto yy204;
2066
+ }
2067
+ yy217: ++YYCURSOR;
2068
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
2069
+ yych = *YYCURSOR;
2070
+ switch(yych){
2071
+ case '0':
2072
+ case '1':
2073
+ case '2':
2074
+ case '3':
2075
+ case '4':
2076
+ case '5':
2077
+ case '6':
2078
+ case '7':
2079
+ case '8':
2080
+ case '9': case 'A':
2081
+ case 'B':
2082
+ case 'C':
2083
+ case 'D':
2084
+ case 'E':
2085
+ case 'F':
2086
+ case 'G':
2087
+ case 'H':
2088
+ case 'I':
2089
+ case 'J':
2090
+ case 'K':
2091
+ case 'L':
2092
+ case 'M':
2093
+ case 'N':
2094
+ case 'O':
2095
+ case 'P':
2096
+ case 'Q':
2097
+ case 'R':
2098
+ case 'S':
2099
+ case 'T':
2100
+ case 'U':
2101
+ case 'V':
2102
+ case 'W':
2103
+ case 'X':
2104
+ case 'Y':
2105
+ case 'Z': case '_': case 'a':
2106
+ case 'b':
2107
+ case 'c':
2108
+ case 'd':
2109
+ case 'e':
2110
+ case 'f':
2111
+ case 'g':
2112
+ case 'h':
2113
+ case 'i':
2114
+ case 'j':
2115
+ case 'k':
2116
+ case 'l':
2117
+ case 'm':
2118
+ case 'n':
2119
+ case 'o':
2120
+ case 'p':
2121
+ case 'q':
2122
+ case 'r':
2123
+ case 's':
2124
+ case 't':
2125
+ case 'u':
2126
+ case 'v':
2127
+ case 'w':
2128
+ case 'x':
2129
+ case 'y':
2130
+ case 'z': goto yy220;
2131
+ default: goto yy204;
2132
+ }
2133
+ yy218: ++YYCURSOR;
2134
+ goto yy219;
2135
+ yy219:
2136
+ #line 178 "implicit.re"
2137
+ { char *domain = S_ALLOC_N( char, ( YYCURSOR - type_id ) + 15 );
2138
+ char *uri;
2139
+
2140
+ domain[0] = '\0';
2141
+ strncat( domain, type_id, ( YYCURSOR - type_id ) - 1 );
2142
+ strcat( domain, "." );
2143
+ strcat( domain, YAML_DOMAIN );
2144
+ uri = syck_taguri( domain, YYCURSOR, (int)(YYLIMIT - YYCURSOR) );
2145
+
2146
+ S_FREE( domain );
2147
+ return uri;
2148
+ }
2149
+ #line 2149 "<stdout>"
2150
+ yy220: ++YYCURSOR;
2151
+ if((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
2152
+ yych = *YYCURSOR;
2153
+ goto yy221;
2154
+ yy221: switch(yych){
2155
+ case ',': goto yy216;
2156
+ case '-': goto yy222;
2157
+ case '.': goto yy217;
2158
+ case '/': goto yy218;
2159
+ case '0':
2160
+ case '1':
2161
+ case '2':
2162
+ case '3':
2163
+ case '4':
2164
+ case '5':
2165
+ case '6':
2166
+ case '7':
2167
+ case '8':
2168
+ case '9': case 'A':
2169
+ case 'B':
2170
+ case 'C':
2171
+ case 'D':
2172
+ case 'E':
2173
+ case 'F':
2174
+ case 'G':
2175
+ case 'H':
2176
+ case 'I':
2177
+ case 'J':
2178
+ case 'K':
2179
+ case 'L':
2180
+ case 'M':
2181
+ case 'N':
2182
+ case 'O':
2183
+ case 'P':
2184
+ case 'Q':
2185
+ case 'R':
2186
+ case 'S':
2187
+ case 'T':
2188
+ case 'U':
2189
+ case 'V':
2190
+ case 'W':
2191
+ case 'X':
2192
+ case 'Y':
2193
+ case 'Z': case '_': case 'a':
2194
+ case 'b':
2195
+ case 'c':
2196
+ case 'd':
2197
+ case 'e':
2198
+ case 'f':
2199
+ case 'g':
2200
+ case 'h':
2201
+ case 'i':
2202
+ case 'j':
2203
+ case 'k':
2204
+ case 'l':
2205
+ case 'm':
2206
+ case 'n':
2207
+ case 'o':
2208
+ case 'p':
2209
+ case 'q':
2210
+ case 'r':
2211
+ case 's':
2212
+ case 't':
2213
+ case 'u':
2214
+ case 'v':
2215
+ case 'w':
2216
+ case 'x':
2217
+ case 'y':
2218
+ case 'z': goto yy220;
2219
+ default: goto yy204;
2220
+ }
2221
+ yy222: ++YYCURSOR;
2222
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
2223
+ yych = *YYCURSOR;
2224
+ goto yy223;
2225
+ yy223: switch(yych){
2226
+ case '-': goto yy222;
2227
+ case '0':
2228
+ case '1':
2229
+ case '2':
2230
+ case '3':
2231
+ case '4':
2232
+ case '5':
2233
+ case '6':
2234
+ case '7':
2235
+ case '8':
2236
+ case '9': case 'A':
2237
+ case 'B':
2238
+ case 'C':
2239
+ case 'D':
2240
+ case 'E':
2241
+ case 'F':
2242
+ case 'G':
2243
+ case 'H':
2244
+ case 'I':
2245
+ case 'J':
2246
+ case 'K':
2247
+ case 'L':
2248
+ case 'M':
2249
+ case 'N':
2250
+ case 'O':
2251
+ case 'P':
2252
+ case 'Q':
2253
+ case 'R':
2254
+ case 'S':
2255
+ case 'T':
2256
+ case 'U':
2257
+ case 'V':
2258
+ case 'W':
2259
+ case 'X':
2260
+ case 'Y':
2261
+ case 'Z': case '_': case 'a':
2262
+ case 'b':
2263
+ case 'c':
2264
+ case 'd':
2265
+ case 'e':
2266
+ case 'f':
2267
+ case 'g':
2268
+ case 'h':
2269
+ case 'i':
2270
+ case 'j':
2271
+ case 'k':
2272
+ case 'l':
2273
+ case 'm':
2274
+ case 'n':
2275
+ case 'o':
2276
+ case 'p':
2277
+ case 'q':
2278
+ case 'r':
2279
+ case 's':
2280
+ case 't':
2281
+ case 'u':
2282
+ case 'v':
2283
+ case 'w':
2284
+ case 'x':
2285
+ case 'y':
2286
+ case 'z': goto yy220;
2287
+ default: goto yy204;
2288
+ }
2289
+ yy224: yych = *++YYCURSOR;
2290
+ switch(yych){
2291
+ case '0':
2292
+ case '1':
2293
+ case '2':
2294
+ case '3':
2295
+ case '4':
2296
+ case '5':
2297
+ case '6':
2298
+ case '7':
2299
+ case '8':
2300
+ case '9': goto yy225;
2301
+ default: goto yy204;
2302
+ }
2303
+ yy225: yych = *++YYCURSOR;
2304
+ switch(yych){
2305
+ case '0':
2306
+ case '1':
2307
+ case '2':
2308
+ case '3':
2309
+ case '4':
2310
+ case '5':
2311
+ case '6':
2312
+ case '7':
2313
+ case '8':
2314
+ case '9': goto yy226;
2315
+ default: goto yy204;
2316
+ }
2317
+ yy226: yych = *++YYCURSOR;
2318
+ switch(yych){
2319
+ case '0':
2320
+ case '1':
2321
+ case '2':
2322
+ case '3':
2323
+ case '4':
2324
+ case '5':
2325
+ case '6':
2326
+ case '7':
2327
+ case '8':
2328
+ case '9': goto yy227;
2329
+ default: goto yy204;
2330
+ }
2331
+ yy227: yych = *++YYCURSOR;
2332
+ switch(yych){
2333
+ case '-': goto yy228;
2334
+ case '/': goto yy229;
2335
+ default: goto yy204;
2336
+ }
2337
+ yy228: yych = *++YYCURSOR;
2338
+ switch(yych){
2339
+ case '0':
2340
+ case '1':
2341
+ case '2':
2342
+ case '3':
2343
+ case '4':
2344
+ case '5':
2345
+ case '6':
2346
+ case '7':
2347
+ case '8':
2348
+ case '9': goto yy231;
2349
+ default: goto yy204;
2350
+ }
2351
+ yy229: ++YYCURSOR;
2352
+ goto yy230;
2353
+ yy230:
2354
+ #line 191 "implicit.re"
2355
+ { char *domain = S_ALLOC_N( char, YYCURSOR - type_id );
2356
+ char *uri;
2357
+
2358
+ domain[0] = '\0';
2359
+ strncat( domain, type_id, ( YYCURSOR - type_id ) - 1 );
2360
+ uri = syck_taguri( domain, YYCURSOR, (int)(YYLIMIT - YYCURSOR) );
2361
+
2362
+ S_FREE( domain );
2363
+ return uri;
2364
+ }
2365
+ #line 2365 "<stdout>"
2366
+ yy231: yych = *++YYCURSOR;
2367
+ switch(yych){
2368
+ case '0':
2369
+ case '1':
2370
+ case '2':
2371
+ case '3':
2372
+ case '4':
2373
+ case '5':
2374
+ case '6':
2375
+ case '7':
2376
+ case '8':
2377
+ case '9': goto yy232;
2378
+ default: goto yy204;
2379
+ }
2380
+ yy232: yych = *++YYCURSOR;
2381
+ switch(yych){
2382
+ case '-': goto yy233;
2383
+ case '/': goto yy229;
2384
+ default: goto yy204;
2385
+ }
2386
+ yy233: yych = *++YYCURSOR;
2387
+ switch(yych){
2388
+ case '0':
2389
+ case '1':
2390
+ case '2':
2391
+ case '3':
2392
+ case '4':
2393
+ case '5':
2394
+ case '6':
2395
+ case '7':
2396
+ case '8':
2397
+ case '9': goto yy234;
2398
+ default: goto yy204;
2399
+ }
2400
+ yy234: yych = *++YYCURSOR;
2401
+ switch(yych){
2402
+ case '0':
2403
+ case '1':
2404
+ case '2':
2405
+ case '3':
2406
+ case '4':
2407
+ case '5':
2408
+ case '6':
2409
+ case '7':
2410
+ case '8':
2411
+ case '9': goto yy235;
2412
+ default: goto yy204;
2413
+ }
2414
+ yy235: yych = *++YYCURSOR;
2415
+ switch(yych){
2416
+ case '/': goto yy229;
2417
+ default: goto yy204;
2418
+ }
2419
+ yy236: yych = *++YYCURSOR;
2420
+ switch(yych){
2421
+ case 'p': goto yy237;
2422
+ default: goto yy213;
2423
+ }
2424
+ yy237: yych = *++YYCURSOR;
2425
+ switch(yych){
2426
+ case ',': goto yy216;
2427
+ case '.': goto yy217;
2428
+ case '/': goto yy218;
2429
+ case 'r': goto yy238;
2430
+ default: goto yy213;
2431
+ }
2432
+ yy238: yych = *++YYCURSOR;
2433
+ switch(yych){
2434
+ case ',': goto yy216;
2435
+ case '.': goto yy217;
2436
+ case '/': goto yy218;
2437
+ case 'i': goto yy239;
2438
+ default: goto yy213;
2439
+ }
2440
+ yy239: yych = *++YYCURSOR;
2441
+ switch(yych){
2442
+ case ',': goto yy216;
2443
+ case '.': goto yy217;
2444
+ case '/': goto yy218;
2445
+ case 'v': goto yy240;
2446
+ default: goto yy213;
2447
+ }
2448
+ yy240: yych = *++YYCURSOR;
2449
+ switch(yych){
2450
+ case ',': goto yy216;
2451
+ case '.': goto yy217;
2452
+ case '/': goto yy218;
2453
+ case 'a': goto yy241;
2454
+ default: goto yy213;
2455
+ }
2456
+ yy241: yych = *++YYCURSOR;
2457
+ switch(yych){
2458
+ case ',': goto yy216;
2459
+ case '.': goto yy217;
2460
+ case '/': goto yy218;
2461
+ case 't': goto yy242;
2462
+ default: goto yy213;
2463
+ }
2464
+ yy242: yych = *++YYCURSOR;
2465
+ switch(yych){
2466
+ case ',': goto yy216;
2467
+ case '.': goto yy217;
2468
+ case '/': goto yy218;
2469
+ case 'e': goto yy243;
2470
+ default: goto yy213;
2471
+ }
2472
+ yy243: yych = *++YYCURSOR;
2473
+ switch(yych){
2474
+ case ',': goto yy216;
2475
+ case '.': goto yy217;
2476
+ case '/': goto yy218;
2477
+ case ':': goto yy244;
2478
+ default: goto yy213;
2479
+ }
2480
+ yy244: ++YYCURSOR;
2481
+ goto yy245;
2482
+ yy245:
2483
+ #line 174 "implicit.re"
2484
+ { return syck_strndup( type_id, strlen( type_id ) ); }
2485
+ #line 2485 "<stdout>"
2486
+ yy246: yych = *++YYCURSOR;
2487
+ switch(yych){
2488
+ case ',': goto yy216;
2489
+ case '.': goto yy217;
2490
+ case '/': goto yy218;
2491
+ case 'g': goto yy247;
2492
+ default: goto yy213;
2493
+ }
2494
+ yy247: yych = *++YYCURSOR;
2495
+ switch(yych){
2496
+ case ',': goto yy216;
2497
+ case '.': goto yy217;
2498
+ case '/': goto yy218;
2499
+ case ':': goto yy248;
2500
+ default: goto yy213;
2501
+ }
2502
+ yy248: yych = *++YYCURSOR;
2503
+ switch(yych){
2504
+ case ',':
2505
+ case '-':
2506
+ case '.': goto yy204;
2507
+ default: goto yy250;
2508
+ }
2509
+ yy249: ++YYCURSOR;
2510
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
2511
+ yych = *YYCURSOR;
2512
+ goto yy250;
2513
+ yy250: switch(yych){
2514
+ case ',': goto yy253;
2515
+ case '-': goto yy251;
2516
+ case '.': goto yy254;
2517
+ case '0':
2518
+ case '1':
2519
+ case '2':
2520
+ case '3':
2521
+ case '4':
2522
+ case '5':
2523
+ case '6':
2524
+ case '7':
2525
+ case '8':
2526
+ case '9': case 'A':
2527
+ case 'B':
2528
+ case 'C':
2529
+ case 'D':
2530
+ case 'E':
2531
+ case 'F':
2532
+ case 'G':
2533
+ case 'H':
2534
+ case 'I':
2535
+ case 'J':
2536
+ case 'K':
2537
+ case 'L':
2538
+ case 'M':
2539
+ case 'N':
2540
+ case 'O':
2541
+ case 'P':
2542
+ case 'Q':
2543
+ case 'R':
2544
+ case 'S':
2545
+ case 'T':
2546
+ case 'U':
2547
+ case 'V':
2548
+ case 'W':
2549
+ case 'X':
2550
+ case 'Y':
2551
+ case 'Z': case '_': case 'a':
2552
+ case 'b':
2553
+ case 'c':
2554
+ case 'd':
2555
+ case 'e':
2556
+ case 'f':
2557
+ case 'g':
2558
+ case 'h':
2559
+ case 'i':
2560
+ case 'j':
2561
+ case 'k':
2562
+ case 'l':
2563
+ case 'm':
2564
+ case 'n':
2565
+ case 'o':
2566
+ case 'p':
2567
+ case 'q':
2568
+ case 'r':
2569
+ case 's':
2570
+ case 't':
2571
+ case 'u':
2572
+ case 'v':
2573
+ case 'w':
2574
+ case 'x':
2575
+ case 'y':
2576
+ case 'z': goto yy249;
2577
+ default: goto yy204;
2578
+ }
2579
+ yy251: ++YYCURSOR;
2580
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
2581
+ yych = *YYCURSOR;
2582
+ goto yy252;
2583
+ yy252: switch(yych){
2584
+ case '-': goto yy251;
2585
+ case '0':
2586
+ case '1':
2587
+ case '2':
2588
+ case '3':
2589
+ case '4':
2590
+ case '5':
2591
+ case '6':
2592
+ case '7':
2593
+ case '8':
2594
+ case '9': case 'A':
2595
+ case 'B':
2596
+ case 'C':
2597
+ case 'D':
2598
+ case 'E':
2599
+ case 'F':
2600
+ case 'G':
2601
+ case 'H':
2602
+ case 'I':
2603
+ case 'J':
2604
+ case 'K':
2605
+ case 'L':
2606
+ case 'M':
2607
+ case 'N':
2608
+ case 'O':
2609
+ case 'P':
2610
+ case 'Q':
2611
+ case 'R':
2612
+ case 'S':
2613
+ case 'T':
2614
+ case 'U':
2615
+ case 'V':
2616
+ case 'W':
2617
+ case 'X':
2618
+ case 'Y':
2619
+ case 'Z': case '_': case 'a':
2620
+ case 'b':
2621
+ case 'c':
2622
+ case 'd':
2623
+ case 'e':
2624
+ case 'f':
2625
+ case 'g':
2626
+ case 'h':
2627
+ case 'i':
2628
+ case 'j':
2629
+ case 'k':
2630
+ case 'l':
2631
+ case 'm':
2632
+ case 'n':
2633
+ case 'o':
2634
+ case 'p':
2635
+ case 'q':
2636
+ case 'r':
2637
+ case 's':
2638
+ case 't':
2639
+ case 'u':
2640
+ case 'v':
2641
+ case 'w':
2642
+ case 'x':
2643
+ case 'y':
2644
+ case 'z': goto yy249;
2645
+ default: goto yy204;
2646
+ }
2647
+ yy253: yych = *++YYCURSOR;
2648
+ switch(yych){
2649
+ case '0':
2650
+ case '1':
2651
+ case '2':
2652
+ case '3':
2653
+ case '4':
2654
+ case '5':
2655
+ case '6':
2656
+ case '7':
2657
+ case '8':
2658
+ case '9': goto yy259;
2659
+ default: goto yy204;
2660
+ }
2661
+ yy254: ++YYCURSOR;
2662
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
2663
+ yych = *YYCURSOR;
2664
+ switch(yych){
2665
+ case '0':
2666
+ case '1':
2667
+ case '2':
2668
+ case '3':
2669
+ case '4':
2670
+ case '5':
2671
+ case '6':
2672
+ case '7':
2673
+ case '8':
2674
+ case '9': case 'A':
2675
+ case 'B':
2676
+ case 'C':
2677
+ case 'D':
2678
+ case 'E':
2679
+ case 'F':
2680
+ case 'G':
2681
+ case 'H':
2682
+ case 'I':
2683
+ case 'J':
2684
+ case 'K':
2685
+ case 'L':
2686
+ case 'M':
2687
+ case 'N':
2688
+ case 'O':
2689
+ case 'P':
2690
+ case 'Q':
2691
+ case 'R':
2692
+ case 'S':
2693
+ case 'T':
2694
+ case 'U':
2695
+ case 'V':
2696
+ case 'W':
2697
+ case 'X':
2698
+ case 'Y':
2699
+ case 'Z': case '_': case 'a':
2700
+ case 'b':
2701
+ case 'c':
2702
+ case 'd':
2703
+ case 'e':
2704
+ case 'f':
2705
+ case 'g':
2706
+ case 'h':
2707
+ case 'i':
2708
+ case 'j':
2709
+ case 'k':
2710
+ case 'l':
2711
+ case 'm':
2712
+ case 'n':
2713
+ case 'o':
2714
+ case 'p':
2715
+ case 'q':
2716
+ case 'r':
2717
+ case 's':
2718
+ case 't':
2719
+ case 'u':
2720
+ case 'v':
2721
+ case 'w':
2722
+ case 'x':
2723
+ case 'y':
2724
+ case 'z': goto yy255;
2725
+ default: goto yy204;
2726
+ }
2727
+ yy255: ++YYCURSOR;
2728
+ if((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
2729
+ yych = *YYCURSOR;
2730
+ goto yy256;
2731
+ yy256: switch(yych){
2732
+ case ',': goto yy253;
2733
+ case '-': goto yy257;
2734
+ case '.': goto yy254;
2735
+ case '0':
2736
+ case '1':
2737
+ case '2':
2738
+ case '3':
2739
+ case '4':
2740
+ case '5':
2741
+ case '6':
2742
+ case '7':
2743
+ case '8':
2744
+ case '9': case 'A':
2745
+ case 'B':
2746
+ case 'C':
2747
+ case 'D':
2748
+ case 'E':
2749
+ case 'F':
2750
+ case 'G':
2751
+ case 'H':
2752
+ case 'I':
2753
+ case 'J':
2754
+ case 'K':
2755
+ case 'L':
2756
+ case 'M':
2757
+ case 'N':
2758
+ case 'O':
2759
+ case 'P':
2760
+ case 'Q':
2761
+ case 'R':
2762
+ case 'S':
2763
+ case 'T':
2764
+ case 'U':
2765
+ case 'V':
2766
+ case 'W':
2767
+ case 'X':
2768
+ case 'Y':
2769
+ case 'Z': case '_': case 'a':
2770
+ case 'b':
2771
+ case 'c':
2772
+ case 'd':
2773
+ case 'e':
2774
+ case 'f':
2775
+ case 'g':
2776
+ case 'h':
2777
+ case 'i':
2778
+ case 'j':
2779
+ case 'k':
2780
+ case 'l':
2781
+ case 'm':
2782
+ case 'n':
2783
+ case 'o':
2784
+ case 'p':
2785
+ case 'q':
2786
+ case 'r':
2787
+ case 's':
2788
+ case 't':
2789
+ case 'u':
2790
+ case 'v':
2791
+ case 'w':
2792
+ case 'x':
2793
+ case 'y':
2794
+ case 'z': goto yy255;
2795
+ default: goto yy204;
2796
+ }
2797
+ yy257: ++YYCURSOR;
2798
+ if(YYLIMIT == YYCURSOR) YYFILL(1);
2799
+ yych = *YYCURSOR;
2800
+ goto yy258;
2801
+ yy258: switch(yych){
2802
+ case '-': goto yy257;
2803
+ case '0':
2804
+ case '1':
2805
+ case '2':
2806
+ case '3':
2807
+ case '4':
2808
+ case '5':
2809
+ case '6':
2810
+ case '7':
2811
+ case '8':
2812
+ case '9': case 'A':
2813
+ case 'B':
2814
+ case 'C':
2815
+ case 'D':
2816
+ case 'E':
2817
+ case 'F':
2818
+ case 'G':
2819
+ case 'H':
2820
+ case 'I':
2821
+ case 'J':
2822
+ case 'K':
2823
+ case 'L':
2824
+ case 'M':
2825
+ case 'N':
2826
+ case 'O':
2827
+ case 'P':
2828
+ case 'Q':
2829
+ case 'R':
2830
+ case 'S':
2831
+ case 'T':
2832
+ case 'U':
2833
+ case 'V':
2834
+ case 'W':
2835
+ case 'X':
2836
+ case 'Y':
2837
+ case 'Z': case '_': case 'a':
2838
+ case 'b':
2839
+ case 'c':
2840
+ case 'd':
2841
+ case 'e':
2842
+ case 'f':
2843
+ case 'g':
2844
+ case 'h':
2845
+ case 'i':
2846
+ case 'j':
2847
+ case 'k':
2848
+ case 'l':
2849
+ case 'm':
2850
+ case 'n':
2851
+ case 'o':
2852
+ case 'p':
2853
+ case 'q':
2854
+ case 'r':
2855
+ case 's':
2856
+ case 't':
2857
+ case 'u':
2858
+ case 'v':
2859
+ case 'w':
2860
+ case 'x':
2861
+ case 'y':
2862
+ case 'z': goto yy255;
2863
+ default: goto yy204;
2864
+ }
2865
+ yy259: yych = *++YYCURSOR;
2866
+ switch(yych){
2867
+ case '0':
2868
+ case '1':
2869
+ case '2':
2870
+ case '3':
2871
+ case '4':
2872
+ case '5':
2873
+ case '6':
2874
+ case '7':
2875
+ case '8':
2876
+ case '9': goto yy260;
2877
+ default: goto yy204;
2878
+ }
2879
+ yy260: yych = *++YYCURSOR;
2880
+ switch(yych){
2881
+ case '0':
2882
+ case '1':
2883
+ case '2':
2884
+ case '3':
2885
+ case '4':
2886
+ case '5':
2887
+ case '6':
2888
+ case '7':
2889
+ case '8':
2890
+ case '9': goto yy261;
2891
+ default: goto yy204;
2892
+ }
2893
+ yy261: yych = *++YYCURSOR;
2894
+ switch(yych){
2895
+ case '0':
2896
+ case '1':
2897
+ case '2':
2898
+ case '3':
2899
+ case '4':
2900
+ case '5':
2901
+ case '6':
2902
+ case '7':
2903
+ case '8':
2904
+ case '9': goto yy262;
2905
+ default: goto yy204;
2906
+ }
2907
+ yy262: yych = *++YYCURSOR;
2908
+ switch(yych){
2909
+ case '-': goto yy263;
2910
+ case ':': goto yy264;
2911
+ default: goto yy204;
2912
+ }
2913
+ yy263: yych = *++YYCURSOR;
2914
+ switch(yych){
2915
+ case '0':
2916
+ case '1':
2917
+ case '2':
2918
+ case '3':
2919
+ case '4':
2920
+ case '5':
2921
+ case '6':
2922
+ case '7':
2923
+ case '8':
2924
+ case '9': goto yy266;
2925
+ default: goto yy204;
2926
+ }
2927
+ yy264: ++YYCURSOR;
2928
+ goto yy265;
2929
+ yy265:
2930
+ #line 172 "implicit.re"
2931
+ { return syck_strndup( type_id, strlen( type_id ) ); }
2932
+ #line 2932 "<stdout>"
2933
+ yy266: yych = *++YYCURSOR;
2934
+ switch(yych){
2935
+ case '0':
2936
+ case '1':
2937
+ case '2':
2938
+ case '3':
2939
+ case '4':
2940
+ case '5':
2941
+ case '6':
2942
+ case '7':
2943
+ case '8':
2944
+ case '9': goto yy267;
2945
+ default: goto yy204;
2946
+ }
2947
+ yy267: yych = *++YYCURSOR;
2948
+ switch(yych){
2949
+ case '-': goto yy268;
2950
+ case ':': goto yy264;
2951
+ default: goto yy204;
2952
+ }
2953
+ yy268: yych = *++YYCURSOR;
2954
+ switch(yych){
2955
+ case '0':
2956
+ case '1':
2957
+ case '2':
2958
+ case '3':
2959
+ case '4':
2960
+ case '5':
2961
+ case '6':
2962
+ case '7':
2963
+ case '8':
2964
+ case '9': goto yy269;
2965
+ default: goto yy204;
2966
+ }
2967
+ yy269: yych = *++YYCURSOR;
2968
+ switch(yych){
2969
+ case '0':
2970
+ case '1':
2971
+ case '2':
2972
+ case '3':
2973
+ case '4':
2974
+ case '5':
2975
+ case '6':
2976
+ case '7':
2977
+ case '8':
2978
+ case '9': goto yy270;
2979
+ default: goto yy204;
2980
+ }
2981
+ yy270: ++YYCURSOR;
2982
+ switch((yych = *YYCURSOR)) {
2983
+ case ':': goto yy264;
2984
+ default: goto yy204;
2985
+ }
2986
+ }
2987
+ #line 204 "implicit.re"
2988
+
2989
+
2990
+ }