syck 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+ }