1// re2c $INPUT -o $OUTPUT
2/* Generated by re2c 0.16 on Mon Jun 25 20:07:34 2018 */
3#line 1 "test.re"
4typedef enum num_t { ERR, BIN, OCT, DEC, HEX } num_t;
5static num_t lex(const char *YYCURSOR)
6{
7    const char *YYMARKER;
8
9#line 9 "test.c"
10{
11	char yych;
12	yych = *YYCURSOR;
13	switch (yych) {
14	case '0':	goto yy4;
15	case '1':
16	case '2':
17	case '3':
18	case '4':
19	case '5':
20	case '6':
21	case '7':
22	case '8':
23	case '9':	goto yy5;
24	default:	goto yy2;
25	}
26yy2:
27	++YYCURSOR;
28yy3:
29#line 15 "test.re"
30	{ return ERR; }
31#line 31 "test.c"
32yy4:
33	yych = *(YYMARKER = ++YYCURSOR);
34	switch (yych) {
35	case 0x00:	goto yy6;
36	case '0':
37	case '1':
38	case '2':
39	case '3':
40	case '4':
41	case '5':
42	case '6':
43	case '7':	goto yy8;
44	case 'B':
45	case 'b':	goto yy11;
46	case 'X':
47	case 'x':	goto yy12;
48	default:	goto yy3;
49	}
50yy5:
51	yych = *(YYMARKER = ++YYCURSOR);
52	switch (yych) {
53	case 0x00:	goto yy13;
54	case '0':
55	case '1':
56	case '2':
57	case '3':
58	case '4':
59	case '5':
60	case '6':
61	case '7':
62	case '8':
63	case '9':	goto yy15;
64	default:	goto yy3;
65	}
66yy6:
67	++YYCURSOR;
68#line 17 "test.re"
69	{ return OCT; }
70#line 70 "test.c"
71yy8:
72	++YYCURSOR;
73	yych = *YYCURSOR;
74	switch (yych) {
75	case 0x00:	goto yy6;
76	case '0':
77	case '1':
78	case '2':
79	case '3':
80	case '4':
81	case '5':
82	case '6':
83	case '7':	goto yy8;
84	default:	goto yy10;
85	}
86yy10:
87	YYCURSOR = YYMARKER;
88	goto yy3;
89yy11:
90	yych = *++YYCURSOR;
91	if (yych <= 0x00) goto yy10;
92	goto yy18;
93yy12:
94	yych = *++YYCURSOR;
95	if (yych <= 0x00) goto yy10;
96	goto yy20;
97yy13:
98	++YYCURSOR;
99#line 18 "test.re"
100	{ return DEC; }
101#line 101 "test.c"
102yy15:
103	++YYCURSOR;
104	yych = *YYCURSOR;
105	switch (yych) {
106	case 0x00:	goto yy13;
107	case '0':
108	case '1':
109	case '2':
110	case '3':
111	case '4':
112	case '5':
113	case '6':
114	case '7':
115	case '8':
116	case '9':	goto yy15;
117	default:	goto yy10;
118	}
119yy17:
120	++YYCURSOR;
121	yych = *YYCURSOR;
122yy18:
123	switch (yych) {
124	case 0x00:	goto yy21;
125	case '0':
126	case '1':	goto yy17;
127	default:	goto yy10;
128	}
129yy19:
130	++YYCURSOR;
131	yych = *YYCURSOR;
132yy20:
133	switch (yych) {
134	case 0x00:	goto yy23;
135	case '0':
136	case '1':
137	case '2':
138	case '3':
139	case '4':
140	case '5':
141	case '6':
142	case '7':
143	case '8':
144	case '9':
145	case 'A':
146	case 'B':
147	case 'C':
148	case 'D':
149	case 'E':
150	case 'F':
151	case 'a':
152	case 'b':
153	case 'c':
154	case 'd':
155	case 'e':
156	case 'f':	goto yy19;
157	default:	goto yy10;
158	}
159yy21:
160	++YYCURSOR;
161#line 16 "test.re"
162	{ return BIN; }
163#line 163 "test.c"
164yy23:
165	++YYCURSOR;
166#line 19 "test.re"
167	{ return HEX; }
168#line 168 "test.c"
169}
170#line 20 "test.re"
171
172}
173