This source file includes following definitions.
- ZEND_EXTERN_MODULE_GLOBALS
- unescape_string
- phpdbg_lex
1
2 #line 1 "sapi/phpdbg/phpdbg_lexer.l"
3
4
5
6
7 #include "phpdbg.h"
8 #include "phpdbg_cmd.h"
9
10 #include "phpdbg_parser.h"
11
12 #define LEX(v) (PHPDBG_G(lexer).v)
13
14 #define YYCTYPE unsigned char
15 #define YYSETCONDITION(x) LEX(state) = x;
16 #define YYGETCONDITION() LEX(state)
17 #define YYCURSOR LEX(cursor)
18 #define YYMARKER LEX(marker)
19 #define YYCTXMARKER LEX(ctxmarker)
20 #define yyleng LEX(len)
21 #define yytext ((char*) LEX(text))
22 #undef YYDEBUG
23 #define YYDEBUG(a, b)
24 #define YYFILL(n)
25
26 #define NORMAL 0
27 #define PRE_RAW 1
28 #define RAW 2
29 #define INITIAL 3
30
31 ZEND_EXTERN_MODULE_GLOBALS(phpdbg)
32
33 void phpdbg_init_lexer (phpdbg_param_t *stack, char *input) {
34 PHPDBG_G(parser_stack) = stack;
35
36 YYSETCONDITION(INITIAL);
37
38 LEX(text) = YYCURSOR = (unsigned char *) input;
39 LEX(len) = strlen(input);
40 }
41
42 static int unescape_string(char *s) {
43 switch (*s) {
44 case '\'':
45 case '\"': {
46 char start = *s;
47 size_t off = 1;
48 do {
49 if (s[off] == '\\') {
50 off++;
51 }
52 *s = s[off];
53 } while ((++s)[off] != start);
54 return off + 1;
55 }
56 }
57
58 return 0;
59 }
60
61 int phpdbg_lex (phpdbg_param_t* yylval) {
62
63 restart:
64 LEX(text) = YYCURSOR;
65
66
67 #line 68 "sapi/phpdbg/phpdbg_lexer.c"
68 {
69 YYCTYPE yych;
70 unsigned int yyaccept = 0;
71 if (YYGETCONDITION() < 2) {
72 if (YYGETCONDITION() < 1) {
73 goto yyc_NORMAL;
74 } else {
75 goto yyc_PRE_RAW;
76 }
77 } else {
78 if (YYGETCONDITION() < 3) {
79 goto yyc_RAW;
80 } else {
81 goto yyc_INITIAL;
82 }
83 }
84
85 yyc_INITIAL:
86 {
87 static const unsigned char yybm[] = {
88 0, 0, 0, 0, 0, 0, 0, 0,
89 0, 128, 0, 0, 0, 128, 0, 0,
90 0, 0, 0, 0, 0, 0, 0, 0,
91 0, 0, 0, 0, 0, 0, 0, 0,
92 128, 0, 0, 0, 0, 0, 0, 0,
93 0, 0, 0, 0, 0, 0, 0, 0,
94 0, 0, 0, 0, 0, 0, 0, 0,
95 0, 0, 0, 0, 0, 0, 0, 0,
96 0, 0, 0, 0, 0, 0, 0, 0,
97 0, 0, 0, 0, 0, 0, 0, 0,
98 0, 0, 0, 0, 0, 0, 0, 0,
99 0, 0, 0, 0, 0, 0, 0, 0,
100 0, 0, 0, 0, 0, 0, 0, 0,
101 0, 0, 0, 0, 0, 0, 0, 0,
102 0, 0, 0, 0, 0, 0, 0, 0,
103 0, 0, 0, 0, 0, 0, 0, 0,
104 0, 0, 0, 0, 0, 0, 0, 0,
105 0, 0, 0, 0, 0, 0, 0, 0,
106 0, 0, 0, 0, 0, 0, 0, 0,
107 0, 0, 0, 0, 0, 0, 0, 0,
108 0, 0, 0, 0, 0, 0, 0, 0,
109 0, 0, 0, 0, 0, 0, 0, 0,
110 0, 0, 0, 0, 0, 0, 0, 0,
111 0, 0, 0, 0, 0, 0, 0, 0,
112 0, 0, 0, 0, 0, 0, 0, 0,
113 0, 0, 0, 0, 0, 0, 0, 0,
114 0, 0, 0, 0, 0, 0, 0, 0,
115 0, 0, 0, 0, 0, 0, 0, 0,
116 0, 0, 0, 0, 0, 0, 0, 0,
117 0, 0, 0, 0, 0, 0, 0, 0,
118 0, 0, 0, 0, 0, 0, 0, 0,
119 0, 0, 0, 0, 0, 0, 0, 0,
120 };
121 YYDEBUG(1, *YYCURSOR);
122 YYFILL(4);
123 yych = *YYCURSOR;
124 if (yych <= '#') {
125 if (yych <= '\f') {
126 if (yych <= 0x08) {
127 if (yych <= 0x00) goto yy9;
128 goto yy14;
129 } else {
130 if (yych <= '\t') goto yy3;
131 if (yych <= '\n') goto yy9;
132 goto yy14;
133 }
134 } else {
135 if (yych <= 0x1F) {
136 if (yych >= 0x0E) goto yy14;
137 } else {
138 if (yych <= ' ') goto yy5;
139 if (yych <= '"') goto yy14;
140 goto yy8;
141 }
142 }
143 } else {
144 if (yych <= 'S') {
145 if (yych <= 'E') {
146 if (yych <= 'D') goto yy14;
147 goto yy10;
148 } else {
149 if (yych <= 'Q') goto yy14;
150 if (yych <= 'R') goto yy13;
151 goto yy11;
152 }
153 } else {
154 if (yych <= 'q') {
155 if (yych == 'e') goto yy10;
156 goto yy14;
157 } else {
158 if (yych <= 'r') goto yy12;
159 if (yych <= 's') goto yy11;
160 goto yy14;
161 }
162 }
163 }
164 yy3:
165 YYDEBUG(3, *YYCURSOR);
166 ++YYCURSOR;
167 if (yybm[0+(yych = *YYCURSOR)] & 128) {
168 goto yy5;
169 }
170 yy4:
171 YYDEBUG(4, *YYCURSOR);
172 yyleng = (size_t) YYCURSOR - (size_t) yytext;
173 #line 206 "sapi/phpdbg/phpdbg_lexer.l"
174 {
175 YYSETCONDITION(NORMAL);
176
177 YYCURSOR = LEX(text);
178 goto restart;
179 }
180 #line 181 "sapi/phpdbg/phpdbg_lexer.c"
181 yy5:
182 YYDEBUG(5, *YYCURSOR);
183 ++YYCURSOR;
184 YYFILL(1);
185 yych = *YYCURSOR;
186 YYDEBUG(6, *YYCURSOR);
187 if (yybm[0+yych] & 128) {
188 goto yy5;
189 }
190 YYDEBUG(7, *YYCURSOR);
191 yyleng = (size_t) YYCURSOR - (size_t) yytext;
192 #line 175 "sapi/phpdbg/phpdbg_lexer.l"
193 {
194
195
196 goto restart;
197 }
198 #line 199 "sapi/phpdbg/phpdbg_lexer.c"
199 yy8:
200 YYDEBUG(8, *YYCURSOR);
201 yych = *++YYCURSOR;
202 goto yy4;
203 yy9:
204 YYDEBUG(9, *YYCURSOR);
205 yych = *++YYCURSOR;
206 goto yy4;
207 yy10:
208 YYDEBUG(10, *YYCURSOR);
209 yyaccept = 0;
210 yych = *(YYMARKER = ++YYCURSOR);
211 if (yych == 'V') goto yy25;
212 if (yych == 'v') goto yy25;
213 goto yy4;
214 yy11:
215 YYDEBUG(11, *YYCURSOR);
216 yyaccept = 0;
217 yych = *(YYMARKER = ++YYCURSOR);
218 if (yych == 'H') goto yy21;
219 if (yych == 'h') goto yy21;
220 goto yy4;
221 yy12:
222 YYDEBUG(12, *YYCURSOR);
223 yyaccept = 0;
224 yych = *(YYMARKER = ++YYCURSOR);
225 if (yych <= 0x1F) {
226 if (yych <= '\t') {
227 if (yych <= 0x08) goto yy4;
228 goto yy18;
229 } else {
230 if (yych == '\r') goto yy18;
231 goto yy4;
232 }
233 } else {
234 if (yych <= 'U') {
235 if (yych <= ' ') goto yy18;
236 if (yych <= 'T') goto yy4;
237 goto yy15;
238 } else {
239 if (yych == 'u') goto yy15;
240 goto yy4;
241 }
242 }
243 yy13:
244 YYDEBUG(13, *YYCURSOR);
245 yyaccept = 0;
246 yych = *(YYMARKER = ++YYCURSOR);
247 if (yych == 'U') goto yy15;
248 if (yych == 'u') goto yy15;
249 goto yy4;
250 yy14:
251 YYDEBUG(14, *YYCURSOR);
252 yych = *++YYCURSOR;
253 goto yy4;
254 yy15:
255 YYDEBUG(15, *YYCURSOR);
256 yych = *++YYCURSOR;
257 if (yych == 'N') goto yy17;
258 if (yych == 'n') goto yy17;
259 yy16:
260 YYDEBUG(16, *YYCURSOR);
261 YYCURSOR = YYMARKER;
262 goto yy4;
263 yy17:
264 YYDEBUG(17, *YYCURSOR);
265 yych = *++YYCURSOR;
266 if (yych <= '\f') {
267 if (yych != '\t') goto yy16;
268 } else {
269 if (yych <= '\r') goto yy18;
270 if (yych != ' ') goto yy16;
271 }
272 yy18:
273 YYDEBUG(18, *YYCURSOR);
274 ++YYCURSOR;
275 YYFILL(1);
276 yych = *YYCURSOR;
277 YYDEBUG(19, *YYCURSOR);
278 if (yych <= '\f') {
279 if (yych == '\t') goto yy18;
280 } else {
281 if (yych <= '\r') goto yy18;
282 if (yych == ' ') goto yy18;
283 }
284 YYDEBUG(20, *YYCURSOR);
285 yyleng = (size_t) YYCURSOR - (size_t) yytext;
286 #line 193 "sapi/phpdbg/phpdbg_lexer.l"
287 {
288 YYSETCONDITION(PRE_RAW);
289 phpdbg_init_param(yylval, EMPTY_PARAM);
290 return T_RUN;
291 }
292 #line 293 "sapi/phpdbg/phpdbg_lexer.c"
293 yy21:
294 YYDEBUG(21, *YYCURSOR);
295 yych = *++YYCURSOR;
296 if (yych <= '\f') {
297 if (yych != '\t') goto yy16;
298 } else {
299 if (yych <= '\r') goto yy22;
300 if (yych != ' ') goto yy16;
301 }
302 yy22:
303 YYDEBUG(22, *YYCURSOR);
304 ++YYCURSOR;
305 YYFILL(1);
306 yych = *YYCURSOR;
307 YYDEBUG(23, *YYCURSOR);
308 if (yych <= '\f') {
309 if (yych == '\t') goto yy22;
310 } else {
311 if (yych <= '\r') goto yy22;
312 if (yych == ' ') goto yy22;
313 }
314 YYDEBUG(24, *YYCURSOR);
315 yyleng = (size_t) YYCURSOR - (size_t) yytext;
316 #line 187 "sapi/phpdbg/phpdbg_lexer.l"
317 {
318 YYSETCONDITION(PRE_RAW);
319 phpdbg_init_param(yylval, EMPTY_PARAM);
320 return T_SHELL;
321 }
322 #line 323 "sapi/phpdbg/phpdbg_lexer.c"
323 yy25:
324 YYDEBUG(25, *YYCURSOR);
325 yych = *++YYCURSOR;
326 if (yych <= '\f') {
327 if (yych != '\t') goto yy16;
328 } else {
329 if (yych <= '\r') goto yy26;
330 if (yych != ' ') goto yy16;
331 }
332 yy26:
333 YYDEBUG(26, *YYCURSOR);
334 ++YYCURSOR;
335 YYFILL(1);
336 yych = *YYCURSOR;
337 YYDEBUG(27, *YYCURSOR);
338 if (yych <= '\f') {
339 if (yych == '\t') goto yy26;
340 } else {
341 if (yych <= '\r') goto yy26;
342 if (yych == ' ') goto yy26;
343 }
344 YYDEBUG(28, *YYCURSOR);
345 yyleng = (size_t) YYCURSOR - (size_t) yytext;
346 #line 181 "sapi/phpdbg/phpdbg_lexer.l"
347 {
348 YYSETCONDITION(PRE_RAW);
349 phpdbg_init_param(yylval, EMPTY_PARAM);
350 return T_EVAL;
351 }
352 #line 353 "sapi/phpdbg/phpdbg_lexer.c"
353 }
354
355 yyc_NORMAL:
356 {
357 static const unsigned char yybm[] = {
358
359 0, 242, 242, 242, 242, 242, 242, 242,
360 242, 160, 0, 242, 242, 160, 242, 242,
361 242, 242, 242, 242, 242, 242, 242, 242,
362 242, 242, 242, 242, 242, 242, 242, 242,
363 160, 242, 50, 160, 242, 242, 242, 194,
364 242, 242, 242, 242, 242, 242, 243, 242,
365 251, 251, 251, 251, 251, 251, 251, 251,
366 251, 251, 160, 242, 242, 242, 242, 242,
367 242, 254, 254, 254, 254, 254, 254, 246,
368 246, 246, 246, 246, 246, 246, 246, 246,
369 246, 246, 246, 246, 246, 246, 246, 246,
370 246, 246, 246, 242, 2, 242, 242, 242,
371 242, 254, 254, 254, 254, 254, 254, 246,
372 246, 246, 246, 246, 246, 246, 246, 246,
373 246, 246, 246, 246, 246, 246, 246, 246,
374 246, 246, 246, 242, 242, 242, 242, 242,
375 242, 242, 242, 242, 242, 242, 242, 242,
376 242, 242, 242, 242, 242, 242, 242, 242,
377 242, 242, 242, 242, 242, 242, 242, 242,
378 242, 242, 242, 242, 242, 242, 242, 242,
379 242, 242, 242, 242, 242, 242, 242, 242,
380 242, 242, 242, 242, 242, 242, 242, 242,
381 242, 242, 242, 242, 242, 242, 242, 242,
382 242, 242, 242, 242, 242, 242, 242, 242,
383 242, 242, 242, 242, 242, 242, 242, 242,
384 242, 242, 242, 242, 242, 242, 242, 242,
385 242, 242, 242, 242, 242, 242, 242, 242,
386 242, 242, 242, 242, 242, 242, 242, 242,
387 242, 242, 242, 242, 242, 242, 242, 242,
388 242, 242, 242, 242, 242, 242, 242, 242,
389 242, 242, 242, 242, 242, 242, 242, 242,
390 242, 242, 242, 242, 242, 242, 242, 242,
391
392 0, 128, 128, 128, 128, 128, 128, 128,
393 128, 64, 0, 128, 128, 64, 128, 128,
394 128, 128, 128, 128, 128, 128, 128, 128,
395 128, 128, 128, 128, 128, 128, 128, 128,
396 64, 128, 0, 0, 128, 128, 128, 0,
397 128, 128, 128, 128, 128, 128, 128, 128,
398 128, 128, 128, 128, 128, 128, 128, 128,
399 128, 128, 0, 128, 128, 128, 128, 128,
400 128, 128, 128, 128, 128, 128, 128, 128,
401 128, 128, 128, 128, 128, 128, 128, 128,
402 128, 128, 128, 128, 128, 128, 128, 128,
403 128, 128, 128, 128, 128, 128, 128, 128,
404 128, 128, 128, 128, 128, 128, 128, 128,
405 128, 128, 128, 128, 128, 128, 128, 128,
406 128, 128, 128, 128, 128, 128, 128, 128,
407 128, 128, 128, 128, 128, 128, 128, 128,
408 128, 128, 128, 128, 128, 128, 128, 128,
409 128, 128, 128, 128, 128, 128, 128, 128,
410 128, 128, 128, 128, 128, 128, 128, 128,
411 128, 128, 128, 128, 128, 128, 128, 128,
412 128, 128, 128, 128, 128, 128, 128, 128,
413 128, 128, 128, 128, 128, 128, 128, 128,
414 128, 128, 128, 128, 128, 128, 128, 128,
415 128, 128, 128, 128, 128, 128, 128, 128,
416 128, 128, 128, 128, 128, 128, 128, 128,
417 128, 128, 128, 128, 128, 128, 128, 128,
418 128, 128, 128, 128, 128, 128, 128, 128,
419 128, 128, 128, 128, 128, 128, 128, 128,
420 128, 128, 128, 128, 128, 128, 128, 128,
421 128, 128, 128, 128, 128, 128, 128, 128,
422 128, 128, 128, 128, 128, 128, 128, 128,
423 128, 128, 128, 128, 128, 128, 128, 128,
424 };
425 YYDEBUG(29, *YYCURSOR);
426 YYFILL(11);
427 yych = *YYCURSOR;
428 if (yybm[256+yych] & 64) {
429 goto yy31;
430 }
431 YYDEBUG(-1, yych);
432 switch (yych) {
433 case 0x00:
434 case '\t':
435 case '\n': goto yy36;
436 case '"': goto yy44;
437 case '#': goto yy34;
438 case '\'': goto yy46;
439 case '-': goto yy38;
440 case '.':
441 case '1':
442 case '2':
443 case '3':
444 case '4':
445 case '5':
446 case '6':
447 case '7':
448 case '8':
449 case '9': goto yy47;
450 case '0': goto yy50;
451 case ':': goto yy41;
452 case 'D':
453 case 'd': goto yy51;
454 case 'E':
455 case 'e': goto yy52;
456 case 'F':
457 case 'f': goto yy53;
458 case 'I':
459 case 'i': goto yy40;
460 case 'N':
461 case 'n': goto yy54;
462 case 'O':
463 case 'o': goto yy55;
464 case 'T':
465 case 't': goto yy56;
466 case 'Y':
467 case 'y': goto yy57;
468 case 'Z': goto yy58;
469 case 'z': goto yy59;
470 default: goto yy42;
471 }
472 yy31:
473 YYDEBUG(31, *YYCURSOR);
474 ++YYCURSOR;
475 YYFILL(1);
476 yych = *YYCURSOR;
477 YYDEBUG(32, *YYCURSOR);
478 if (yybm[256+yych] & 64) {
479 goto yy31;
480 }
481 YYDEBUG(33, *YYCURSOR);
482 yyleng = (size_t) YYCURSOR - (size_t) yytext;
483 #line 175 "sapi/phpdbg/phpdbg_lexer.l"
484 {
485
486
487 goto restart;
488 }
489 #line 490 "sapi/phpdbg/phpdbg_lexer.c"
490 yy34:
491 YYDEBUG(34, *YYCURSOR);
492 YYCTXMARKER = YYCURSOR + 1;
493 yyaccept = 0;
494 yych = *(YYMARKER = ++YYCURSOR);
495 if (yych <= '.') {
496 if (yych <= ',') goto yy35;
497 if (yych <= '-') goto yy146;
498 goto yy147;
499 } else {
500 if (yych <= '/') goto yy35;
501 if (yych <= '9') goto yy147;
502 }
503 yy35:
504 YYDEBUG(35, *YYCURSOR);
505 yyleng = (size_t) YYCURSOR - (size_t) yytext;
506 #line 110 "sapi/phpdbg/phpdbg_lexer.l"
507 {
508 YYSETCONDITION(INITIAL);
509 return T_SEPARATOR;
510 }
511 #line 512 "sapi/phpdbg/phpdbg_lexer.c"
512 yy36:
513 YYDEBUG(36, *YYCURSOR);
514 ++YYCURSOR;
515 YYDEBUG(37, *YYCURSOR);
516 yyleng = (size_t) YYCURSOR - (size_t) yytext;
517 #line 89 "sapi/phpdbg/phpdbg_lexer.l"
518 {
519 return 0;
520 }
521 #line 522 "sapi/phpdbg/phpdbg_lexer.c"
522 yy38:
523 YYDEBUG(38, *YYCURSOR);
524 yyaccept = 1;
525 yych = *(YYMARKER = ++YYCURSOR);
526 if (yybm[0+yych] & 1) {
527 goto yy47;
528 }
529 if (yych == 'r') goto yy136;
530 goto yy43;
531 yy39:
532 YYDEBUG(39, *YYCURSOR);
533 yyleng = (size_t) YYCURSOR - (size_t) yytext;
534 #line 161 "sapi/phpdbg/phpdbg_lexer.l"
535 {
536 phpdbg_init_param(yylval, STR_PARAM);
537 yylval->str = estrndup(yytext, yyleng - unescape_string(yytext));
538 yylval->len = yyleng;
539 return T_ID;
540 }
541 #line 542 "sapi/phpdbg/phpdbg_lexer.c"
542 yy40:
543 YYDEBUG(40, *YYCURSOR);
544 yyaccept = 1;
545 yych = *(YYMARKER = ++YYCURSOR);
546 if (yych == 'F') goto yy132;
547 if (yych == 'f') goto yy132;
548 goto yy43;
549 yy41:
550 YYDEBUG(41, *YYCURSOR);
551 YYCTXMARKER = YYCURSOR + 1;
552 yych = *++YYCURSOR;
553 if (yych == ':') goto yy130;
554 if (yych == '\\') goto yy68;
555 goto yy128;
556 yy42:
557 YYDEBUG(42, *YYCURSOR);
558 yyaccept = 1;
559 YYMARKER = ++YYCURSOR;
560 YYFILL(3);
561 yych = *YYCURSOR;
562 yy43:
563 YYDEBUG(43, *YYCURSOR);
564 if (yybm[256+yych] & 128) {
565 goto yy42;
566 }
567 if (yych <= ' ') goto yy39;
568 if (yych == '#') goto yy39;
569 if (yych <= '\'') goto yy62;
570 goto yy61;
571 yy44:
572 YYDEBUG(44, *YYCURSOR);
573 yych = *++YYCURSOR;
574 if (yych == '"') goto yy62;
575 goto yy120;
576 yy45:
577 YYDEBUG(45, *YYCURSOR);
578 YYCURSOR = YYMARKER;
579 if (yyaccept <= 3) {
580 if (yyaccept <= 1) {
581 if (yyaccept == 0) {
582 goto yy35;
583 } else {
584 goto yy39;
585 }
586 } else {
587 if (yyaccept == 2) {
588 goto yy49;
589 } else {
590 goto yy76;
591 }
592 }
593 } else {
594 if (yyaccept <= 5) {
595 if (yyaccept == 4) {
596 goto yy107;
597 } else {
598 goto yy67;
599 }
600 } else {
601 goto yy142;
602 }
603 }
604 yy46:
605 YYDEBUG(46, *YYCURSOR);
606 yych = *++YYCURSOR;
607 if (yych == '\'') goto yy62;
608 goto yy109;
609 yy47:
610 YYDEBUG(47, *YYCURSOR);
611 yyaccept = 2;
612 YYMARKER = ++YYCURSOR;
613 YYFILL(3);
614 yych = *YYCURSOR;
615 YYDEBUG(48, *YYCURSOR);
616 if (yybm[0+yych] & 1) {
617 goto yy47;
618 }
619 if (yych <= ' ') {
620 if (yych <= '\n') {
621 if (yych <= 0x00) goto yy49;
622 if (yych <= 0x08) goto yy42;
623 } else {
624 if (yych == '\r') goto yy49;
625 if (yych <= 0x1F) goto yy42;
626 }
627 } else {
628 if (yych <= '&') {
629 if (yych <= '!') goto yy42;
630 if (yych <= '"') goto yy62;
631 if (yych >= '$') goto yy42;
632 } else {
633 if (yych <= '\'') goto yy62;
634 if (yych <= '/') goto yy42;
635 if (yych <= ':') goto yy61;
636 goto yy42;
637 }
638 }
639 yy49:
640 YYDEBUG(49, *YYCURSOR);
641 yyleng = (size_t) YYCURSOR - (size_t) yytext;
642 #line 142 "sapi/phpdbg/phpdbg_lexer.l"
643 {
644 phpdbg_init_param(yylval, NUMERIC_PARAM);
645 yylval->num = atoi(yytext);
646 return T_DIGITS;
647 }
648 #line 649 "sapi/phpdbg/phpdbg_lexer.c"
649 yy50:
650 YYDEBUG(50, *YYCURSOR);
651 yyaccept = 2;
652 yych = *(YYMARKER = ++YYCURSOR);
653 if (yybm[0+yych] & 1) {
654 goto yy47;
655 }
656 if (yych <= 0x1F) {
657 if (yych <= '\n') {
658 if (yych <= 0x00) goto yy49;
659 if (yych <= 0x08) goto yy43;
660 goto yy49;
661 } else {
662 if (yych == '\r') goto yy49;
663 goto yy43;
664 }
665 } else {
666 if (yych <= '#') {
667 if (yych <= ' ') goto yy49;
668 if (yych <= '"') goto yy43;
669 goto yy49;
670 } else {
671 if (yych == 'x') goto yy104;
672 goto yy43;
673 }
674 }
675 yy51:
676 YYDEBUG(51, *YYCURSOR);
677 yyaccept = 1;
678 yych = *(YYMARKER = ++YYCURSOR);
679 if (yych == 'I') goto yy98;
680 if (yych == 'i') goto yy98;
681 goto yy43;
682 yy52:
683 YYDEBUG(52, *YYCURSOR);
684 yyaccept = 1;
685 yych = *(YYMARKER = ++YYCURSOR);
686 if (yych == 'N') goto yy93;
687 if (yych == 'n') goto yy93;
688 goto yy43;
689 yy53:
690 YYDEBUG(53, *YYCURSOR);
691 yyaccept = 1;
692 yych = *(YYMARKER = ++YYCURSOR);
693 if (yych == 'A') goto yy90;
694 if (yych == 'a') goto yy90;
695 goto yy43;
696 yy54:
697 YYDEBUG(54, *YYCURSOR);
698 yyaccept = 1;
699 yych = *(YYMARKER = ++YYCURSOR);
700 if (yych == 'O') goto yy87;
701 if (yych == 'o') goto yy87;
702 goto yy43;
703 yy55:
704 YYDEBUG(55, *YYCURSOR);
705 yyaccept = 1;
706 yych = *(YYMARKER = ++YYCURSOR);
707 if (yych <= 'N') {
708 if (yych == 'F') goto yy86;
709 if (yych <= 'M') goto yy43;
710 goto yy81;
711 } else {
712 if (yych <= 'f') {
713 if (yych <= 'e') goto yy43;
714 goto yy86;
715 } else {
716 if (yych == 'n') goto yy81;
717 goto yy43;
718 }
719 }
720 yy56:
721 YYDEBUG(56, *YYCURSOR);
722 yyaccept = 1;
723 yych = *(YYMARKER = ++YYCURSOR);
724 if (yych == 'R') goto yy84;
725 if (yych == 'r') goto yy84;
726 goto yy43;
727 yy57:
728 YYDEBUG(57, *YYCURSOR);
729 yyaccept = 1;
730 yych = *(YYMARKER = ++YYCURSOR);
731 if (yych == 'E') goto yy80;
732 if (yych == 'e') goto yy80;
733 goto yy43;
734 yy58:
735 YYDEBUG(58, *YYCURSOR);
736 yyaccept = 1;
737 yych = *(YYMARKER = ++YYCURSOR);
738 if (yych == 'E') goto yy77;
739 goto yy43;
740 yy59:
741 YYDEBUG(59, *YYCURSOR);
742 yyaccept = 1;
743 yych = *(YYMARKER = ++YYCURSOR);
744 if (yych != 'e') goto yy43;
745 YYDEBUG(60, *YYCURSOR);
746 yyaccept = 1;
747 yych = *(YYMARKER = ++YYCURSOR);
748 if (yych == 'n') goto yy71;
749 goto yy43;
750 yy61:
751 YYDEBUG(61, *YYCURSOR);
752 yych = *++YYCURSOR;
753 if (yych == '/') goto yy65;
754 if (yych == '\\') goto yy68;
755 goto yy45;
756 yy62:
757 YYDEBUG(62, *YYCURSOR);
758 ++YYCURSOR;
759 YYFILL(3);
760 yych = *YYCURSOR;
761 yy63:
762 YYDEBUG(63, *YYCURSOR);
763 if (yybm[0+yych] & 2) {
764 goto yy62;
765 }
766 if (yych <= '#') goto yy45;
767 yy64:
768 YYDEBUG(64, *YYCURSOR);
769 yych = *++YYCURSOR;
770 if (yych != '/') goto yy45;
771 yy65:
772 YYDEBUG(65, *YYCURSOR);
773 yych = *++YYCURSOR;
774 if (yych != '/') goto yy45;
775 YYDEBUG(66, *YYCURSOR);
776 ++YYCURSOR;
777 yy67:
778 YYDEBUG(67, *YYCURSOR);
779 yyleng = (size_t) YYCURSOR - (size_t) yytext;
780 #line 123 "sapi/phpdbg/phpdbg_lexer.l"
781 {
782 phpdbg_init_param(yylval, STR_PARAM);
783 yylval->str = estrndup(yytext, yyleng);
784 yylval->len = yyleng;
785 return T_PROTO;
786 }
787 #line 788 "sapi/phpdbg/phpdbg_lexer.c"
788 yy68:
789 YYDEBUG(68, *YYCURSOR);
790 yyaccept = 1;
791 YYMARKER = ++YYCURSOR;
792 YYFILL(1);
793 yych = *YYCURSOR;
794 YYDEBUG(69, *YYCURSOR);
795 if (yych <= ' ') {
796 if (yych <= '\n') {
797 if (yych <= 0x00) goto yy39;
798 if (yych <= 0x08) goto yy68;
799 goto yy39;
800 } else {
801 if (yych == '\r') goto yy39;
802 if (yych <= 0x1F) goto yy68;
803 goto yy39;
804 }
805 } else {
806 if (yych <= '&') {
807 if (yych <= '!') goto yy68;
808 if (yych <= '#') goto yy39;
809 goto yy68;
810 } else {
811 if (yych <= '\'') goto yy39;
812 if (yych != ':') goto yy68;
813 }
814 }
815 YYDEBUG(70, *YYCURSOR);
816 ++YYCURSOR;
817 YYFILL(1);
818 yych = *YYCURSOR;
819 if (yych == '\\') goto yy68;
820 goto yy45;
821 yy71:
822 YYDEBUG(71, *YYCURSOR);
823 yyaccept = 1;
824 yych = *(YYMARKER = ++YYCURSOR);
825 if (yych != 'd') goto yy43;
826 YYDEBUG(72, *YYCURSOR);
827 yyaccept = 1;
828 yych = *(YYMARKER = ++YYCURSOR);
829 if (yych != '_') goto yy43;
830 yy73:
831 YYDEBUG(73, *YYCURSOR);
832 yyaccept = 1;
833 yych = *(YYMARKER = ++YYCURSOR);
834 if (yybm[0+yych] & 4) {
835 goto yy74;
836 }
837 goto yy43;
838 yy74:
839 YYDEBUG(74, *YYCURSOR);
840 yyaccept = 3;
841 YYMARKER = ++YYCURSOR;
842 YYFILL(3);
843 yych = *YYCURSOR;
844 YYDEBUG(75, *YYCURSOR);
845 if (yybm[0+yych] & 4) {
846 goto yy74;
847 }
848 if (yych <= ' ') {
849 if (yych <= '\n') {
850 if (yych <= 0x00) goto yy76;
851 if (yych <= 0x08) goto yy42;
852 } else {
853 if (yych == '\r') goto yy76;
854 if (yych <= 0x1F) goto yy42;
855 }
856 } else {
857 if (yych <= '&') {
858 if (yych <= '!') goto yy42;
859 if (yych <= '"') goto yy62;
860 if (yych >= '$') goto yy42;
861 } else {
862 if (yych <= '\'') goto yy62;
863 if (yych == ':') goto yy61;
864 goto yy42;
865 }
866 }
867 yy76:
868 YYDEBUG(76, *YYCURSOR);
869 yyleng = (size_t) YYCURSOR - (size_t) yytext;
870 #line 154 "sapi/phpdbg/phpdbg_lexer.l"
871 {
872 phpdbg_init_param(yylval, OP_PARAM);
873 yylval->str = estrndup(yytext, yyleng);
874 yylval->len = yyleng;
875 return T_OPCODE;
876 }
877 #line 878 "sapi/phpdbg/phpdbg_lexer.c"
878 yy77:
879 YYDEBUG(77, *YYCURSOR);
880 yyaccept = 1;
881 yych = *(YYMARKER = ++YYCURSOR);
882 if (yych != 'N') goto yy43;
883 YYDEBUG(78, *YYCURSOR);
884 yyaccept = 1;
885 yych = *(YYMARKER = ++YYCURSOR);
886 if (yych != 'D') goto yy43;
887 YYDEBUG(79, *YYCURSOR);
888 yyaccept = 1;
889 yych = *(YYMARKER = ++YYCURSOR);
890 if (yych == '_') goto yy73;
891 goto yy43;
892 yy80:
893 YYDEBUG(80, *YYCURSOR);
894 yyaccept = 1;
895 yych = *(YYMARKER = ++YYCURSOR);
896 if (yych == 'S') goto yy81;
897 if (yych != 's') goto yy43;
898 yy81:
899 YYDEBUG(81, *YYCURSOR);
900 YYCTXMARKER = YYCURSOR + 1;
901 yyaccept = 1;
902 yych = *(YYMARKER = ++YYCURSOR);
903 if (yych <= '\f') {
904 if (yych <= 0x00) goto yy82;
905 if (yych <= 0x08) goto yy43;
906 if (yych >= '\v') goto yy43;
907 } else {
908 if (yych <= '\r') goto yy82;
909 if (yych != ' ') goto yy43;
910 }
911 yy82:
912 YYDEBUG(82, *YYCURSOR);
913 ++YYCURSOR;
914 YYDEBUG(83, *YYCURSOR);
915 YYCURSOR = YYCTXMARKER;
916 yyleng = (size_t) YYCURSOR - (size_t) yytext;
917 #line 130 "sapi/phpdbg/phpdbg_lexer.l"
918 {
919 phpdbg_init_param(yylval, NUMERIC_PARAM);
920 yylval->num = 1;
921 return T_TRUTHY;
922 }
923 #line 924 "sapi/phpdbg/phpdbg_lexer.c"
924 yy84:
925 YYDEBUG(84, *YYCURSOR);
926 yyaccept = 1;
927 yych = *(YYMARKER = ++YYCURSOR);
928 if (yych == 'U') goto yy85;
929 if (yych != 'u') goto yy43;
930 yy85:
931 YYDEBUG(85, *YYCURSOR);
932 yyaccept = 1;
933 yych = *(YYMARKER = ++YYCURSOR);
934 if (yych == 'E') goto yy81;
935 if (yych == 'e') goto yy81;
936 goto yy43;
937 yy86:
938 YYDEBUG(86, *YYCURSOR);
939 yyaccept = 1;
940 yych = *(YYMARKER = ++YYCURSOR);
941 if (yych == 'F') goto yy87;
942 if (yych != 'f') goto yy43;
943 yy87:
944 YYDEBUG(87, *YYCURSOR);
945 YYCTXMARKER = YYCURSOR + 1;
946 yyaccept = 1;
947 yych = *(YYMARKER = ++YYCURSOR);
948 if (yych <= '\f') {
949 if (yych <= 0x00) goto yy88;
950 if (yych <= 0x08) goto yy43;
951 if (yych >= '\v') goto yy43;
952 } else {
953 if (yych <= '\r') goto yy88;
954 if (yych != ' ') goto yy43;
955 }
956 yy88:
957 YYDEBUG(88, *YYCURSOR);
958 ++YYCURSOR;
959 YYDEBUG(89, *YYCURSOR);
960 YYCURSOR = YYCTXMARKER;
961 yyleng = (size_t) YYCURSOR - (size_t) yytext;
962 #line 136 "sapi/phpdbg/phpdbg_lexer.l"
963 {
964 phpdbg_init_param(yylval, NUMERIC_PARAM);
965 yylval->num = 0;
966 return T_FALSY;
967 }
968 #line 969 "sapi/phpdbg/phpdbg_lexer.c"
969 yy90:
970 YYDEBUG(90, *YYCURSOR);
971 yyaccept = 1;
972 yych = *(YYMARKER = ++YYCURSOR);
973 if (yych == 'L') goto yy91;
974 if (yych != 'l') goto yy43;
975 yy91:
976 YYDEBUG(91, *YYCURSOR);
977 yyaccept = 1;
978 yych = *(YYMARKER = ++YYCURSOR);
979 if (yych == 'S') goto yy92;
980 if (yych != 's') goto yy43;
981 yy92:
982 YYDEBUG(92, *YYCURSOR);
983 yyaccept = 1;
984 yych = *(YYMARKER = ++YYCURSOR);
985 if (yych == 'E') goto yy87;
986 if (yych == 'e') goto yy87;
987 goto yy43;
988 yy93:
989 YYDEBUG(93, *YYCURSOR);
990 yyaccept = 1;
991 yych = *(YYMARKER = ++YYCURSOR);
992 if (yych == 'A') goto yy94;
993 if (yych != 'a') goto yy43;
994 yy94:
995 YYDEBUG(94, *YYCURSOR);
996 yyaccept = 1;
997 yych = *(YYMARKER = ++YYCURSOR);
998 if (yych == 'B') goto yy95;
999 if (yych != 'b') goto yy43;
1000 yy95:
1001 YYDEBUG(95, *YYCURSOR);
1002 yyaccept = 1;
1003 yych = *(YYMARKER = ++YYCURSOR);
1004 if (yych == 'L') goto yy96;
1005 if (yych != 'l') goto yy43;
1006 yy96:
1007 YYDEBUG(96, *YYCURSOR);
1008 yyaccept = 1;
1009 yych = *(YYMARKER = ++YYCURSOR);
1010 if (yych == 'E') goto yy97;
1011 if (yych != 'e') goto yy43;
1012 yy97:
1013 YYDEBUG(97, *YYCURSOR);
1014 yyaccept = 1;
1015 yych = *(YYMARKER = ++YYCURSOR);
1016 if (yych == 'D') goto yy81;
1017 if (yych == 'd') goto yy81;
1018 goto yy43;
1019 yy98:
1020 YYDEBUG(98, *YYCURSOR);
1021 yyaccept = 1;
1022 yych = *(YYMARKER = ++YYCURSOR);
1023 if (yych == 'S') goto yy99;
1024 if (yych != 's') goto yy43;
1025 yy99:
1026 YYDEBUG(99, *YYCURSOR);
1027 yyaccept = 1;
1028 yych = *(YYMARKER = ++YYCURSOR);
1029 if (yych == 'A') goto yy100;
1030 if (yych != 'a') goto yy43;
1031 yy100:
1032 YYDEBUG(100, *YYCURSOR);
1033 yyaccept = 1;
1034 yych = *(YYMARKER = ++YYCURSOR);
1035 if (yych == 'B') goto yy101;
1036 if (yych != 'b') goto yy43;
1037 yy101:
1038 YYDEBUG(101, *YYCURSOR);
1039 yyaccept = 1;
1040 yych = *(YYMARKER = ++YYCURSOR);
1041 if (yych == 'L') goto yy102;
1042 if (yych != 'l') goto yy43;
1043 yy102:
1044 YYDEBUG(102, *YYCURSOR);
1045 yyaccept = 1;
1046 yych = *(YYMARKER = ++YYCURSOR);
1047 if (yych == 'E') goto yy103;
1048 if (yych != 'e') goto yy43;
1049 yy103:
1050 YYDEBUG(103, *YYCURSOR);
1051 yyaccept = 1;
1052 yych = *(YYMARKER = ++YYCURSOR);
1053 if (yych == 'D') goto yy87;
1054 if (yych == 'd') goto yy87;
1055 goto yy43;
1056 yy104:
1057 YYDEBUG(104, *YYCURSOR);
1058 yyaccept = 1;
1059 yych = *(YYMARKER = ++YYCURSOR);
1060 if (yybm[0+yych] & 8) {
1061 goto yy105;
1062 }
1063 goto yy43;
1064 yy105:
1065 YYDEBUG(105, *YYCURSOR);
1066 yyaccept = 4;
1067 YYMARKER = ++YYCURSOR;
1068 YYFILL(3);
1069 yych = *YYCURSOR;
1070 YYDEBUG(106, *YYCURSOR);
1071 if (yybm[0+yych] & 8) {
1072 goto yy105;
1073 }
1074 if (yych <= ' ') {
1075 if (yych <= '\n') {
1076 if (yych <= 0x00) goto yy107;
1077 if (yych <= 0x08) goto yy42;
1078 } else {
1079 if (yych == '\r') goto yy107;
1080 if (yych <= 0x1F) goto yy42;
1081 }
1082 } else {
1083 if (yych <= '&') {
1084 if (yych <= '!') goto yy42;
1085 if (yych <= '"') goto yy62;
1086 if (yych >= '$') goto yy42;
1087 } else {
1088 if (yych <= '\'') goto yy62;
1089 if (yych <= '/') goto yy42;
1090 if (yych <= ':') goto yy61;
1091 goto yy42;
1092 }
1093 }
1094 yy107:
1095 YYDEBUG(107, *YYCURSOR);
1096 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1097 #line 148 "sapi/phpdbg/phpdbg_lexer.l"
1098 {
1099 phpdbg_init_param(yylval, ADDR_PARAM);
1100 yylval->addr = strtoul(yytext, 0, 16);
1101 return T_ADDR;
1102 }
1103 #line 1104 "sapi/phpdbg/phpdbg_lexer.c"
1104 yy108:
1105 YYDEBUG(108, *YYCURSOR);
1106 ++YYCURSOR;
1107 YYFILL(4);
1108 yych = *YYCURSOR;
1109 yy109:
1110 YYDEBUG(109, *YYCURSOR);
1111 if (yybm[0+yych] & 16) {
1112 goto yy108;
1113 }
1114 if (yych <= '\n') {
1115 if (yych <= 0x00) goto yy45;
1116 if (yych >= '\n') goto yy45;
1117 } else {
1118 if (yych <= '#') goto yy110;
1119 if (yych <= '\'') goto yy118;
1120 if (yych <= ':') goto yy112;
1121 goto yy113;
1122 }
1123 yy110:
1124 YYDEBUG(110, *YYCURSOR);
1125 ++YYCURSOR;
1126 YYFILL(1);
1127 yych = *YYCURSOR;
1128 yy111:
1129 YYDEBUG(111, *YYCURSOR);
1130 if (yybm[0+yych] & 32) {
1131 goto yy110;
1132 }
1133 if (yych <= '\n') goto yy45;
1134 if (yych <= '\'') goto yy115;
1135 goto yy116;
1136 yy112:
1137 YYDEBUG(112, *YYCURSOR);
1138 yych = *++YYCURSOR;
1139 if (yych == '/') goto yy114;
1140 goto yy111;
1141 yy113:
1142 YYDEBUG(113, *YYCURSOR);
1143 ++YYCURSOR;
1144 YYFILL(3);
1145 yych = *YYCURSOR;
1146 if (yych <= '"') {
1147 if (yych <= '\f') {
1148 if (yych <= 0x00) goto yy45;
1149 if (yych <= 0x08) goto yy62;
1150 if (yych <= '\n') goto yy45;
1151 goto yy62;
1152 } else {
1153 if (yych <= '\r') goto yy45;
1154 if (yych == ' ') goto yy45;
1155 goto yy62;
1156 }
1157 } else {
1158 if (yych <= '9') {
1159 if (yych <= '#') goto yy45;
1160 if (yych == '\'') goto yy108;
1161 goto yy62;
1162 } else {
1163 if (yych <= ':') goto yy64;
1164 if (yych == '\\') goto yy108;
1165 goto yy62;
1166 }
1167 }
1168 yy114:
1169 YYDEBUG(114, *YYCURSOR);
1170 yych = *++YYCURSOR;
1171 if (yych == '/') goto yy117;
1172 goto yy111;
1173 yy115:
1174 YYDEBUG(115, *YYCURSOR);
1175 yych = *++YYCURSOR;
1176 goto yy39;
1177 yy116:
1178 YYDEBUG(116, *YYCURSOR);
1179 ++YYCURSOR;
1180 YYFILL(1);
1181 yych = *YYCURSOR;
1182 if (yych == '\'') goto yy110;
1183 if (yych == '\\') goto yy110;
1184 goto yy45;
1185 yy117:
1186 YYDEBUG(117, *YYCURSOR);
1187 yyaccept = 5;
1188 yych = *(YYMARKER = ++YYCURSOR);
1189 if (yych <= 0x00) goto yy67;
1190 if (yych == '\n') goto yy67;
1191 goto yy111;
1192 yy118:
1193 YYDEBUG(118, *YYCURSOR);
1194 yyaccept = 1;
1195 yych = *(YYMARKER = ++YYCURSOR);
1196 if (yych <= '\r') {
1197 if (yych <= 0x08) {
1198 if (yych <= 0x00) goto yy39;
1199 goto yy63;
1200 } else {
1201 if (yych <= '\n') goto yy39;
1202 if (yych <= '\f') goto yy63;
1203 goto yy39;
1204 }
1205 } else {
1206 if (yych <= ' ') {
1207 if (yych <= 0x1F) goto yy63;
1208 goto yy39;
1209 } else {
1210 if (yych == '#') goto yy39;
1211 goto yy63;
1212 }
1213 }
1214 yy119:
1215 YYDEBUG(119, *YYCURSOR);
1216 ++YYCURSOR;
1217 YYFILL(4);
1218 yych = *YYCURSOR;
1219 yy120:
1220 YYDEBUG(120, *YYCURSOR);
1221 if (yybm[0+yych] & 64) {
1222 goto yy119;
1223 }
1224 if (yych <= ' ') {
1225 if (yych <= 0x00) goto yy45;
1226 if (yych == '\n') goto yy45;
1227 } else {
1228 if (yych <= '"') goto yy118;
1229 if (yych <= '#') goto yy121;
1230 if (yych <= ':') goto yy123;
1231 goto yy124;
1232 }
1233 yy121:
1234 YYDEBUG(121, *YYCURSOR);
1235 ++YYCURSOR;
1236 YYFILL(1);
1237 yych = *YYCURSOR;
1238 yy122:
1239 YYDEBUG(122, *YYCURSOR);
1240 if (yybm[0+yych] & 128) {
1241 goto yy121;
1242 }
1243 if (yych <= '\n') goto yy45;
1244 if (yych <= '"') goto yy115;
1245 goto yy126;
1246 yy123:
1247 YYDEBUG(123, *YYCURSOR);
1248 yych = *++YYCURSOR;
1249 if (yych == '/') goto yy125;
1250 goto yy122;
1251 yy124:
1252 YYDEBUG(124, *YYCURSOR);
1253 ++YYCURSOR;
1254 YYFILL(3);
1255 yych = *YYCURSOR;
1256 if (yych <= ' ') {
1257 if (yych <= '\n') {
1258 if (yych <= 0x00) goto yy45;
1259 if (yych <= 0x08) goto yy62;
1260 goto yy45;
1261 } else {
1262 if (yych == '\r') goto yy45;
1263 if (yych <= 0x1F) goto yy62;
1264 goto yy45;
1265 }
1266 } else {
1267 if (yych <= '9') {
1268 if (yych <= '!') goto yy62;
1269 if (yych <= '"') goto yy119;
1270 if (yych <= '#') goto yy45;
1271 goto yy62;
1272 } else {
1273 if (yych <= ':') goto yy64;
1274 if (yych == '\\') goto yy119;
1275 goto yy62;
1276 }
1277 }
1278 yy125:
1279 YYDEBUG(125, *YYCURSOR);
1280 yych = *++YYCURSOR;
1281 if (yych == '/') goto yy127;
1282 goto yy122;
1283 yy126:
1284 YYDEBUG(126, *YYCURSOR);
1285 ++YYCURSOR;
1286 YYFILL(1);
1287 yych = *YYCURSOR;
1288 if (yych == '"') goto yy121;
1289 if (yych == '\\') goto yy121;
1290 goto yy45;
1291 yy127:
1292 YYDEBUG(127, *YYCURSOR);
1293 yyaccept = 5;
1294 yych = *(YYMARKER = ++YYCURSOR);
1295 if (yych <= 0x00) goto yy67;
1296 if (yych == '\n') goto yy67;
1297 goto yy122;
1298 yy128:
1299 YYDEBUG(128, *YYCURSOR);
1300 ++YYCURSOR;
1301 YYDEBUG(129, *YYCURSOR);
1302 YYCURSOR = YYCTXMARKER;
1303 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1304 #line 119 "sapi/phpdbg/phpdbg_lexer.l"
1305 {
1306 return T_COLON;
1307 }
1308 #line 1309 "sapi/phpdbg/phpdbg_lexer.c"
1309 yy130:
1310 YYDEBUG(130, *YYCURSOR);
1311 ++YYCURSOR;
1312 YYDEBUG(131, *YYCURSOR);
1313 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1314 #line 115 "sapi/phpdbg/phpdbg_lexer.l"
1315 {
1316 return T_DCOLON;
1317 }
1318 #line 1319 "sapi/phpdbg/phpdbg_lexer.c"
1319 yy132:
1320 YYDEBUG(132, *YYCURSOR);
1321 yyaccept = 1;
1322 yych = *(YYMARKER = ++YYCURSOR);
1323 if (yych <= '\f') {
1324 if (yych != '\t') goto yy43;
1325 } else {
1326 if (yych <= '\r') goto yy133;
1327 if (yych != ' ') goto yy43;
1328 }
1329 yy133:
1330 YYDEBUG(133, *YYCURSOR);
1331 ++YYCURSOR;
1332 YYFILL(1);
1333 yych = *YYCURSOR;
1334 YYDEBUG(134, *YYCURSOR);
1335 if (yych <= '\f') {
1336 if (yych == '\t') goto yy133;
1337 } else {
1338 if (yych <= '\r') goto yy133;
1339 if (yych == ' ') goto yy133;
1340 }
1341 YYDEBUG(135, *YYCURSOR);
1342 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1343 #line 100 "sapi/phpdbg/phpdbg_lexer.l"
1344 {
1345 YYSETCONDITION(RAW);
1346 phpdbg_init_param(yylval, EMPTY_PARAM);
1347 return T_IF;
1348 }
1349 #line 1350 "sapi/phpdbg/phpdbg_lexer.c"
1350 yy136:
1351 YYDEBUG(136, *YYCURSOR);
1352 yyaccept = 1;
1353 yych = *(YYMARKER = ++YYCURSOR);
1354 if (yych <= ' ') {
1355 if (yych <= '\f') {
1356 if (yych != '\t') goto yy43;
1357 } else {
1358 if (yych <= '\r') goto yy137;
1359 if (yych <= 0x1F) goto yy43;
1360 }
1361 } else {
1362 if (yych <= '.') {
1363 if (yych <= ',') goto yy43;
1364 if (yych <= '-') goto yy139;
1365 goto yy140;
1366 } else {
1367 if (yych <= '/') goto yy43;
1368 if (yych <= '9') goto yy140;
1369 goto yy43;
1370 }
1371 }
1372 yy137:
1373 YYDEBUG(137, *YYCURSOR);
1374 ++YYCURSOR;
1375 YYFILL(2);
1376 yych = *YYCURSOR;
1377 YYDEBUG(138, *YYCURSOR);
1378 if (yych <= ' ') {
1379 if (yych <= '\f') {
1380 if (yych == '\t') goto yy137;
1381 goto yy45;
1382 } else {
1383 if (yych <= '\r') goto yy137;
1384 if (yych <= 0x1F) goto yy45;
1385 goto yy137;
1386 }
1387 } else {
1388 if (yych <= '.') {
1389 if (yych <= ',') goto yy45;
1390 if (yych <= '-') goto yy143;
1391 goto yy144;
1392 } else {
1393 if (yych <= '/') goto yy45;
1394 if (yych <= '9') goto yy144;
1395 goto yy45;
1396 }
1397 }
1398 yy139:
1399 YYDEBUG(139, *YYCURSOR);
1400 yyaccept = 1;
1401 yych = *(YYMARKER = ++YYCURSOR);
1402 if (yych == '.') goto yy140;
1403 if (yych <= '/') goto yy43;
1404 if (yych >= ':') goto yy43;
1405 yy140:
1406 YYDEBUG(140, *YYCURSOR);
1407 yyaccept = 6;
1408 YYMARKER = ++YYCURSOR;
1409 YYFILL(3);
1410 yych = *YYCURSOR;
1411 YYDEBUG(141, *YYCURSOR);
1412 if (yych <= '"') {
1413 if (yych <= '\f') {
1414 if (yych <= 0x00) goto yy142;
1415 if (yych <= 0x08) goto yy42;
1416 if (yych >= '\v') goto yy42;
1417 } else {
1418 if (yych <= 0x1F) {
1419 if (yych >= 0x0E) goto yy42;
1420 } else {
1421 if (yych <= ' ') goto yy142;
1422 if (yych <= '!') goto yy42;
1423 goto yy62;
1424 }
1425 }
1426 } else {
1427 if (yych <= '-') {
1428 if (yych <= '#') goto yy142;
1429 if (yych == '\'') goto yy62;
1430 goto yy42;
1431 } else {
1432 if (yych <= '/') {
1433 if (yych <= '.') goto yy140;
1434 goto yy42;
1435 } else {
1436 if (yych <= '9') goto yy140;
1437 if (yych <= ':') goto yy61;
1438 goto yy42;
1439 }
1440 }
1441 }
1442 yy142:
1443 YYDEBUG(142, *YYCURSOR);
1444 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1445 #line 93 "sapi/phpdbg/phpdbg_lexer.l"
1446 {
1447 char *text = yytext + 2;
1448 while (*++text < '0');
1449 yylval->num = atoi(text);
1450 return T_REQ_ID;
1451 }
1452 #line 1453 "sapi/phpdbg/phpdbg_lexer.c"
1453 yy143:
1454 YYDEBUG(143, *YYCURSOR);
1455 yych = *++YYCURSOR;
1456 if (yych == '.') goto yy144;
1457 if (yych <= '/') goto yy45;
1458 if (yych >= ':') goto yy45;
1459 yy144:
1460 YYDEBUG(144, *YYCURSOR);
1461 ++YYCURSOR;
1462 YYFILL(1);
1463 yych = *YYCURSOR;
1464 YYDEBUG(145, *YYCURSOR);
1465 if (yych == '.') goto yy144;
1466 if (yych <= '/') goto yy142;
1467 if (yych <= '9') goto yy144;
1468 goto yy142;
1469 yy146:
1470 YYDEBUG(146, *YYCURSOR);
1471 yych = *++YYCURSOR;
1472 if (yych == '.') goto yy147;
1473 if (yych <= '/') goto yy45;
1474 if (yych >= ':') goto yy45;
1475 yy147:
1476 YYDEBUG(147, *YYCURSOR);
1477 ++YYCURSOR;
1478 YYFILL(1);
1479 yych = *YYCURSOR;
1480 YYDEBUG(148, *YYCURSOR);
1481 if (yych == '.') goto yy147;
1482 if (yych <= '/') goto yy149;
1483 if (yych <= '9') goto yy147;
1484 yy149:
1485 YYDEBUG(149, *YYCURSOR);
1486 YYCURSOR = YYCTXMARKER;
1487 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1488 #line 106 "sapi/phpdbg/phpdbg_lexer.l"
1489 {
1490 return T_POUND;
1491 }
1492 #line 1493 "sapi/phpdbg/phpdbg_lexer.c"
1493 }
1494
1495 yyc_PRE_RAW:
1496 {
1497 static const unsigned char yybm[] = {
1498 0, 0, 0, 0, 0, 0, 0, 0,
1499 0, 64, 0, 0, 0, 64, 0, 0,
1500 0, 0, 0, 0, 0, 0, 0, 0,
1501 0, 0, 0, 0, 0, 0, 0, 0,
1502 64, 0, 0, 0, 0, 0, 0, 0,
1503 0, 0, 0, 0, 0, 0, 128, 0,
1504 128, 128, 128, 128, 128, 128, 128, 128,
1505 128, 128, 0, 0, 0, 0, 0, 0,
1506 0, 0, 0, 0, 0, 0, 0, 0,
1507 0, 0, 0, 0, 0, 0, 0, 0,
1508 0, 0, 0, 0, 0, 0, 0, 0,
1509 0, 0, 0, 0, 0, 0, 0, 0,
1510 0, 0, 0, 0, 0, 0, 0, 0,
1511 0, 0, 0, 0, 0, 0, 0, 0,
1512 0, 0, 0, 0, 0, 0, 0, 0,
1513 0, 0, 0, 0, 0, 0, 0, 0,
1514 0, 0, 0, 0, 0, 0, 0, 0,
1515 0, 0, 0, 0, 0, 0, 0, 0,
1516 0, 0, 0, 0, 0, 0, 0, 0,
1517 0, 0, 0, 0, 0, 0, 0, 0,
1518 0, 0, 0, 0, 0, 0, 0, 0,
1519 0, 0, 0, 0, 0, 0, 0, 0,
1520 0, 0, 0, 0, 0, 0, 0, 0,
1521 0, 0, 0, 0, 0, 0, 0, 0,
1522 0, 0, 0, 0, 0, 0, 0, 0,
1523 0, 0, 0, 0, 0, 0, 0, 0,
1524 0, 0, 0, 0, 0, 0, 0, 0,
1525 0, 0, 0, 0, 0, 0, 0, 0,
1526 0, 0, 0, 0, 0, 0, 0, 0,
1527 0, 0, 0, 0, 0, 0, 0, 0,
1528 0, 0, 0, 0, 0, 0, 0, 0,
1529 0, 0, 0, 0, 0, 0, 0, 0,
1530 };
1531 YYDEBUG(150, *YYCURSOR);
1532 YYFILL(2);
1533 yych = *YYCURSOR;
1534 if (yych <= '\r') {
1535 if (yych <= '\t') {
1536 if (yych <= 0x00) goto yy158;
1537 if (yych <= 0x08) goto yy160;
1538 } else {
1539 if (yych <= '\n') goto yy158;
1540 if (yych <= '\f') goto yy160;
1541 }
1542 } else {
1543 if (yych <= '"') {
1544 if (yych == ' ') goto yy154;
1545 goto yy160;
1546 } else {
1547 if (yych <= '#') goto yy157;
1548 if (yych == '-') goto yy159;
1549 goto yy160;
1550 }
1551 }
1552 YYDEBUG(152, *YYCURSOR);
1553 ++YYCURSOR;
1554 if (yybm[0+(yych = *YYCURSOR)] & 64) {
1555 goto yy154;
1556 }
1557 yy153:
1558 YYDEBUG(153, *YYCURSOR);
1559 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1560 #line 199 "sapi/phpdbg/phpdbg_lexer.l"
1561 {
1562 YYSETCONDITION(RAW);
1563
1564 YYCURSOR = LEX(text);
1565 goto restart;
1566 }
1567 #line 1568 "sapi/phpdbg/phpdbg_lexer.c"
1568 yy154:
1569 YYDEBUG(154, *YYCURSOR);
1570 ++YYCURSOR;
1571 YYFILL(1);
1572 yych = *YYCURSOR;
1573 YYDEBUG(155, *YYCURSOR);
1574 if (yybm[0+yych] & 64) {
1575 goto yy154;
1576 }
1577 YYDEBUG(156, *YYCURSOR);
1578 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1579 #line 175 "sapi/phpdbg/phpdbg_lexer.l"
1580 {
1581
1582
1583 goto restart;
1584 }
1585 #line 1586 "sapi/phpdbg/phpdbg_lexer.c"
1586 yy157:
1587 YYDEBUG(157, *YYCURSOR);
1588 yych = *++YYCURSOR;
1589 goto yy153;
1590 yy158:
1591 YYDEBUG(158, *YYCURSOR);
1592 yych = *++YYCURSOR;
1593 goto yy153;
1594 yy159:
1595 YYDEBUG(159, *YYCURSOR);
1596 yyaccept = 0;
1597 yych = *(YYMARKER = ++YYCURSOR);
1598 if (yych == 'r') goto yy161;
1599 goto yy153;
1600 yy160:
1601 YYDEBUG(160, *YYCURSOR);
1602 yych = *++YYCURSOR;
1603 goto yy153;
1604 yy161:
1605 YYDEBUG(161, *YYCURSOR);
1606 ++YYCURSOR;
1607 YYFILL(2);
1608 yych = *YYCURSOR;
1609 YYDEBUG(162, *YYCURSOR);
1610 if (yybm[0+yych] & 128) {
1611 goto yy165;
1612 }
1613 if (yych <= '\r') {
1614 if (yych == '\t') goto yy161;
1615 if (yych >= '\r') goto yy161;
1616 } else {
1617 if (yych <= ' ') {
1618 if (yych >= ' ') goto yy161;
1619 } else {
1620 if (yych == '-') goto yy164;
1621 }
1622 }
1623 yy163:
1624 YYDEBUG(163, *YYCURSOR);
1625 YYCURSOR = YYMARKER;
1626 goto yy153;
1627 yy164:
1628 YYDEBUG(164, *YYCURSOR);
1629 yych = *++YYCURSOR;
1630 if (yybm[0+yych] & 128) {
1631 goto yy165;
1632 }
1633 goto yy163;
1634 yy165:
1635 YYDEBUG(165, *YYCURSOR);
1636 ++YYCURSOR;
1637 YYFILL(1);
1638 yych = *YYCURSOR;
1639 YYDEBUG(166, *YYCURSOR);
1640 if (yybm[0+yych] & 128) {
1641 goto yy165;
1642 }
1643 YYDEBUG(167, *YYCURSOR);
1644 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1645 #line 93 "sapi/phpdbg/phpdbg_lexer.l"
1646 {
1647 char *text = yytext + 2;
1648 while (*++text < '0');
1649 yylval->num = atoi(text);
1650 return T_REQ_ID;
1651 }
1652 #line 1653 "sapi/phpdbg/phpdbg_lexer.c"
1653 }
1654
1655 yyc_RAW:
1656 {
1657 static const unsigned char yybm[] = {
1658 0, 224, 224, 224, 224, 224, 224, 224,
1659 224, 240, 0, 224, 224, 240, 224, 224,
1660 224, 224, 224, 224, 224, 224, 224, 224,
1661 224, 224, 224, 224, 224, 224, 224, 224,
1662 240, 224, 64, 192, 224, 224, 224, 128,
1663 224, 224, 224, 224, 224, 224, 224, 224,
1664 224, 224, 224, 224, 224, 224, 224, 224,
1665 224, 224, 224, 224, 224, 224, 224, 224,
1666 224, 224, 224, 224, 224, 224, 224, 224,
1667 224, 224, 224, 224, 224, 224, 224, 224,
1668 224, 224, 224, 224, 224, 224, 224, 224,
1669 224, 224, 224, 224, 32, 224, 224, 224,
1670 224, 224, 224, 224, 224, 224, 224, 224,
1671 224, 224, 224, 224, 224, 224, 224, 224,
1672 224, 224, 224, 224, 224, 224, 224, 224,
1673 224, 224, 224, 224, 224, 224, 224, 224,
1674 224, 224, 224, 224, 224, 224, 224, 224,
1675 224, 224, 224, 224, 224, 224, 224, 224,
1676 224, 224, 224, 224, 224, 224, 224, 224,
1677 224, 224, 224, 224, 224, 224, 224, 224,
1678 224, 224, 224, 224, 224, 224, 224, 224,
1679 224, 224, 224, 224, 224, 224, 224, 224,
1680 224, 224, 224, 224, 224, 224, 224, 224,
1681 224, 224, 224, 224, 224, 224, 224, 224,
1682 224, 224, 224, 224, 224, 224, 224, 224,
1683 224, 224, 224, 224, 224, 224, 224, 224,
1684 224, 224, 224, 224, 224, 224, 224, 224,
1685 224, 224, 224, 224, 224, 224, 224, 224,
1686 224, 224, 224, 224, 224, 224, 224, 224,
1687 224, 224, 224, 224, 224, 224, 224, 224,
1688 224, 224, 224, 224, 224, 224, 224, 224,
1689 224, 224, 224, 224, 224, 224, 224, 224,
1690 };
1691 YYDEBUG(168, *YYCURSOR);
1692 YYFILL(1);
1693 yych = *YYCURSOR;
1694 if (yybm[0+yych] & 16) {
1695 goto yy170;
1696 }
1697 if (yych <= '!') {
1698 if (yych <= 0x00) goto yy175;
1699 if (yych <= 0x08) goto yy177;
1700 if (yych <= '\n') goto yy175;
1701 goto yy177;
1702 } else {
1703 if (yych <= '#') {
1704 if (yych <= '"') goto yy179;
1705 goto yy173;
1706 } else {
1707 if (yych == '\'') goto yy181;
1708 goto yy177;
1709 }
1710 }
1711 yy170:
1712 YYDEBUG(170, *YYCURSOR);
1713 yyaccept = 0;
1714 YYMARKER = ++YYCURSOR;
1715 YYFILL(1);
1716 yych = *YYCURSOR;
1717 YYDEBUG(171, *YYCURSOR);
1718 if (yybm[0+yych] & 16) {
1719 goto yy170;
1720 }
1721 if (yych <= '!') {
1722 if (yych <= 0x00) goto yy172;
1723 if (yych <= 0x08) goto yy177;
1724 if (yych >= '\v') goto yy177;
1725 } else {
1726 if (yych <= '#') {
1727 if (yych <= '"') goto yy179;
1728 } else {
1729 if (yych == '\'') goto yy181;
1730 goto yy177;
1731 }
1732 }
1733 yy172:
1734 YYDEBUG(172, *YYCURSOR);
1735 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1736 #line 168 "sapi/phpdbg/phpdbg_lexer.l"
1737 {
1738 phpdbg_init_param(yylval, STR_PARAM);
1739 yylval->str = estrndup(yytext, yyleng - unescape_string(yytext));
1740 yylval->len = yyleng;
1741 return T_INPUT;
1742 }
1743 #line 1744 "sapi/phpdbg/phpdbg_lexer.c"
1744 yy173:
1745 YYDEBUG(173, *YYCURSOR);
1746 ++YYCURSOR;
1747 YYDEBUG(174, *YYCURSOR);
1748 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1749 #line 110 "sapi/phpdbg/phpdbg_lexer.l"
1750 {
1751 YYSETCONDITION(INITIAL);
1752 return T_SEPARATOR;
1753 }
1754 #line 1755 "sapi/phpdbg/phpdbg_lexer.c"
1755 yy175:
1756 YYDEBUG(175, *YYCURSOR);
1757 ++YYCURSOR;
1758 YYDEBUG(176, *YYCURSOR);
1759 yyleng = (size_t) YYCURSOR - (size_t) yytext;
1760 #line 89 "sapi/phpdbg/phpdbg_lexer.l"
1761 {
1762 return 0;
1763 }
1764 #line 1765 "sapi/phpdbg/phpdbg_lexer.c"
1765 yy177:
1766 YYDEBUG(177, *YYCURSOR);
1767 yyaccept = 0;
1768 YYMARKER = ++YYCURSOR;
1769 YYFILL(1);
1770 yych = *YYCURSOR;
1771 YYDEBUG(178, *YYCURSOR);
1772 if (yybm[0+yych] & 32) {
1773 goto yy177;
1774 }
1775 if (yych <= '\n') goto yy172;
1776 if (yych <= '"') goto yy179;
1777 if (yych <= '#') goto yy172;
1778 goto yy181;
1779 yy179:
1780 YYDEBUG(179, *YYCURSOR);
1781 ++YYCURSOR;
1782 YYFILL(1);
1783 yych = *YYCURSOR;
1784 if (yybm[0+yych] & 128) {
1785 goto yy185;
1786 }
1787 if (yych >= '#') goto yy187;
1788 yy180:
1789 YYDEBUG(180, *YYCURSOR);
1790 YYCURSOR = YYMARKER;
1791 goto yy172;
1792 yy181:
1793 YYDEBUG(181, *YYCURSOR);
1794 ++YYCURSOR;
1795 YYFILL(1);
1796 yych = *YYCURSOR;
1797 if (yybm[0+yych] & 64) {
1798 goto yy182;
1799 }
1800 if (yych <= '\'') goto yy180;
1801 goto yy184;
1802 yy182:
1803 YYDEBUG(182, *YYCURSOR);
1804 ++YYCURSOR;
1805 YYFILL(1);
1806 yych = *YYCURSOR;
1807 YYDEBUG(183, *YYCURSOR);
1808 if (yybm[0+yych] & 64) {
1809 goto yy182;
1810 }
1811 if (yych <= '\n') goto yy180;
1812 if (yych <= '\'') goto yy177;
1813 yy184:
1814 YYDEBUG(184, *YYCURSOR);
1815 ++YYCURSOR;
1816 YYFILL(1);
1817 yych = *YYCURSOR;
1818 if (yych == '\'') goto yy182;
1819 if (yych == '\\') goto yy182;
1820 goto yy180;
1821 yy185:
1822 YYDEBUG(185, *YYCURSOR);
1823 ++YYCURSOR;
1824 YYFILL(1);
1825 yych = *YYCURSOR;
1826 YYDEBUG(186, *YYCURSOR);
1827 if (yybm[0+yych] & 128) {
1828 goto yy185;
1829 }
1830 if (yych <= '\n') goto yy180;
1831 if (yych <= '"') goto yy177;
1832 yy187:
1833 YYDEBUG(187, *YYCURSOR);
1834 ++YYCURSOR;
1835 YYFILL(1);
1836 yych = *YYCURSOR;
1837 if (yych == '"') goto yy185;
1838 if (yych == '\\') goto yy185;
1839 goto yy180;
1840 }
1841 }
1842 #line 213 "sapi/phpdbg/phpdbg_lexer.l"
1843
1844 }