Annotation of embedaddon/php/Zend/zend_ini_scanner.c, revision 1.1.1.1
1.1 misho 1: /* Generated by re2c 0.13.5 on Fri Aug 26 18:01:17 2011 */
2: #line 1 "Zend/zend_ini_scanner.l"
3: /*
4: +----------------------------------------------------------------------+
5: | Zend Engine |
6: +----------------------------------------------------------------------+
7: | Copyright (c) 1998-2012 Zend Technologies Ltd. (http://www.zend.com) |
8: +----------------------------------------------------------------------+
9: | This source file is subject to version 2.00 of the Zend license, |
10: | that is bundled with this package in the file LICENSE, and is |
11: | available through the world-wide-web at the following url: |
12: | http://www.zend.com/license/2_00.txt. |
13: | If you did not receive a copy of the Zend license and are unable to |
14: | obtain it through the world-wide-web, please send a note to |
15: | license@zend.com so we can mail you a copy immediately. |
16: +----------------------------------------------------------------------+
17: | Authors: Zeev Suraski <zeev@zend.com> |
18: | Jani Taskinen <jani@php.net> |
19: | Marcus Boerger <helly@php.net> |
20: | Nuno Lopes <nlopess@php.net> |
21: | Scott MacVicar <scottmac@php.net> |
22: +----------------------------------------------------------------------+
23: */
24:
25: /* $Id: zend_ini_scanner.c 321634 2012-01-01 13:15:04Z felipe $ */
26:
27: #include <errno.h>
28: #include "zend.h"
29: #include "zend_globals.h"
30: #include <zend_ini_parser.h>
31: #include "zend_ini_scanner.h"
32:
33: #if 0
34: # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
35: #else
36: # define YYDEBUG(s, c)
37: #endif
38:
39: #include "zend_ini_scanner_defs.h"
40:
41: #define YYCTYPE unsigned char
42: /* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
43: * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
44: #define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
45: #define YYCURSOR SCNG(yy_cursor)
46: #define YYLIMIT SCNG(yy_limit)
47: #define YYMARKER SCNG(yy_marker)
48:
49: #define YYGETCONDITION() SCNG(yy_state)
50: #define YYSETCONDITION(s) SCNG(yy_state) = s
51:
52: #define STATE(name) yyc##name
53:
54: /* emulate flex constructs */
55: #define BEGIN(state) YYSETCONDITION(STATE(state))
56: #define YYSTATE YYGETCONDITION()
57: #define yytext ((char*)SCNG(yy_text))
58: #define yyleng SCNG(yy_leng)
59: #define yyless(x) do { YYCURSOR = (unsigned char*)yytext + x; \
60: yyleng = (unsigned int)x; } while(0)
61:
62: /* #define yymore() goto yymore_restart */
63:
64: /* perform sanity check. If this message is triggered you should
65: increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */
66: #define YYMAXFILL 6
67: #if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)
68: # error ZEND_MMAP_AHEAD should be greater than YYMAXFILL
69: #endif
70:
71:
72: /* How it works (for the core ini directives):
73: * ===========================================
74: *
75: * 1. Scanner scans file for tokens and passes them to parser.
76: * 2. Parser parses the tokens and passes the name/value pairs to the callback
77: * function which stores them in the configuration hash table.
78: * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual
79: * registering of ini entries and uses zend_get_configuration_directive()
80: * to fetch the previously stored name/value pair from configuration hash table
81: * and registers the static ini entries which match the name to the value
82: * into EG(ini_directives) hash table.
83: * 4. PATH section entries are used per-request from down to top, each overriding
84: * previous if one exists. zend_alter_ini_entry() is called for each entry.
85: * Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the
86: * php_admin_* directives used within Apache httpd.conf when PHP is compiled as
87: * module for Apache.
88: * 5. User defined ini files (like .htaccess for apache) are parsed for each request and
89: * stored in separate hash defined by SAPI.
90: */
91:
92: /* TODO: (ordered by importance :-)
93: * ===============================================================================
94: *
95: * - Separate constant lookup totally from plain strings (using CONSTANT pattern)
96: * - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators
97: * - Add #include "some.ini"
98: * - Allow variables to refer to options also when using parse_ini_file()
99: *
100: */
101:
102: /* Globals Macros */
103: #define SCNG INI_SCNG
104: #ifdef ZTS
105: ZEND_API ts_rsrc_id ini_scanner_globals_id;
106: #else
107: ZEND_API zend_ini_scanner_globals ini_scanner_globals;
108: #endif
109:
110: /* Eat leading whitespace */
111: #define EAT_LEADING_WHITESPACE() \
112: while (yytext[0]) { \
113: if (yytext[0] == ' ' || yytext[0] == '\t') { \
114: SCNG(yy_text)++; \
115: yyleng--; \
116: } else { \
117: break; \
118: } \
119: }
120:
121: /* Eat trailing whitespace + extra char */
122: #define EAT_TRAILING_WHITESPACE_EX(ch) \
123: while (yyleng > 0 && ( \
124: (ch != 'X' && yytext[yyleng - 1] == ch) || \
125: yytext[yyleng - 1] == '\n' || \
126: yytext[yyleng - 1] == '\r' || \
127: yytext[yyleng - 1] == '\t' || \
128: yytext[yyleng - 1] == ' ') \
129: ) { \
130: yyleng--; \
131: }
132:
133: /* Eat trailing whitespace */
134: #define EAT_TRAILING_WHITESPACE() EAT_TRAILING_WHITESPACE_EX('X')
135:
136: #define zend_ini_copy_value(retval, str, len) { \
137: Z_STRVAL_P(retval) = zend_strndup(str, len); \
138: Z_STRLEN_P(retval) = len; \
139: Z_TYPE_P(retval) = IS_STRING; \
140: }
141:
142: #define RETURN_TOKEN(type, str, len) { \
143: zend_ini_copy_value(ini_lval, str, len); \
144: return type; \
145: }
146:
147: static void _yy_push_state(int new_state TSRMLS_DC)
148: {
149: zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));
150: YYSETCONDITION(new_state);
151: }
152:
153: #define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
154:
155: static void yy_pop_state(TSRMLS_D)
156: {
157: int *stack_state;
158: zend_stack_top(&SCNG(state_stack), (void **) &stack_state);
159: YYSETCONDITION(*stack_state);
160: zend_stack_del_top(&SCNG(state_stack));
161: }
162:
163: static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)
164: {
165: YYCURSOR = (YYCTYPE*)str;
166: SCNG(yy_start) = YYCURSOR;
167: YYLIMIT = YYCURSOR + len;
168: }
169:
170: #define ini_filename SCNG(filename)
171:
172: /* {{{ init_ini_scanner()
173: */
174: static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)
175: {
176: /* Sanity check */
177: if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {
178: zend_error(E_WARNING, "Invalid scanner mode");
179: return FAILURE;
180: }
181:
182: SCNG(lineno) = 1;
183: SCNG(scanner_mode) = scanner_mode;
184: SCNG(yy_in) = fh;
185:
186: if (fh != NULL) {
187: ini_filename = zend_strndup(fh->filename, strlen(fh->filename));
188: } else {
189: ini_filename = NULL;
190: }
191:
192: zend_stack_init(&SCNG(state_stack));
193: BEGIN(INITIAL);
194:
195: return SUCCESS;
196: }
197: /* }}} */
198:
199: /* {{{ shutdown_ini_scanner()
200: */
201: void shutdown_ini_scanner(TSRMLS_D)
202: {
203: zend_stack_destroy(&SCNG(state_stack));
204: if (ini_filename) {
205: free(ini_filename);
206: }
207: }
208: /* }}} */
209:
210: /* {{{ zend_ini_scanner_get_lineno()
211: */
212: int zend_ini_scanner_get_lineno(TSRMLS_D)
213: {
214: return SCNG(lineno);
215: }
216: /* }}} */
217:
218: /* {{{ zend_ini_scanner_get_filename()
219: */
220: char *zend_ini_scanner_get_filename(TSRMLS_D)
221: {
222: return ini_filename ? ini_filename : "Unknown";
223: }
224: /* }}} */
225:
226: /* {{{ zend_ini_open_file_for_scanning()
227: */
228: int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)
229: {
230: char *buf;
231: size_t size;
232:
233: if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE ||
234: init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE
235: ) {
236: return FAILURE;
237: }
238:
239: yy_scan_buffer(buf, size TSRMLS_CC);
240:
241: return SUCCESS;
242: }
243: /* }}} */
244:
245: /* {{{ zend_ini_prepare_string_for_scanning()
246: */
247: int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
248: {
249: int len = strlen(str);
250:
251: if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {
252: return FAILURE;
253: }
254:
255: yy_scan_buffer(str, len TSRMLS_CC);
256:
257: return SUCCESS;
258: }
259: /* }}} */
260:
261: /* {{{ zend_ini_escape_string()
262: */
263: static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
264: {
265: register char *s, *t;
266: char *end;
267:
268: zend_ini_copy_value(lval, str, len);
269:
270: /* convert escape sequences */
271: s = t = Z_STRVAL_P(lval);
272: end = s + Z_STRLEN_P(lval);
273:
274: while (s < end) {
275: if (*s == '\\') {
276: s++;
277: if (s >= end) {
278: *t++ = '\\';
279: continue;
280: }
281: switch (*s) {
282: case '"':
283: if (*s != quote_type) {
284: *t++ = '\\';
285: *t++ = *s;
286: break;
287: }
288: case '\\':
289: case '$':
290: *t++ = *s;
291: Z_STRLEN_P(lval)--;
292: break;
293: default:
294: *t++ = '\\';
295: *t++ = *s;
296: break;
297: }
298: } else {
299: *t++ = *s;
300: }
301: if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
302: SCNG(lineno)++;
303: }
304: s++;
305: }
306: *t = 0;
307: }
308: /* }}} */
309:
310: int ini_lex(zval *ini_lval TSRMLS_DC)
311: {
312: restart:
313: SCNG(yy_text) = YYCURSOR;
314:
315: /* yymore_restart: */
316: /* detect EOF */
317: if (YYCURSOR >= YYLIMIT) {
318: if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
319: BEGIN(INITIAL);
320: return END_OF_LINE;
321: }
322: return 0;
323: }
324:
325: /* Eat any UTF-8 BOM we find in the first 3 bytes */
326: if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
327: if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
328: YYCURSOR += 3;
329: goto restart;
330: }
331: }
332:
333: #line 334 "Zend/zend_ini_scanner.c"
334: {
335: YYCTYPE yych;
336: unsigned int yyaccept = 0;
337: if (YYGETCONDITION() < 4) {
338: if (YYGETCONDITION() < 2) {
339: if (YYGETCONDITION() < 1) {
340: goto yyc_INITIAL;
341: } else {
342: goto yyc_ST_OFFSET;
343: }
344: } else {
345: if (YYGETCONDITION() < 3) {
346: goto yyc_ST_SECTION_VALUE;
347: } else {
348: goto yyc_ST_VALUE;
349: }
350: }
351: } else {
352: if (YYGETCONDITION() < 6) {
353: if (YYGETCONDITION() < 5) {
354: goto yyc_ST_SECTION_RAW;
355: } else {
356: goto yyc_ST_DOUBLE_QUOTES;
357: }
358: } else {
359: if (YYGETCONDITION() < 7) {
360: goto yyc_ST_VARNAME;
361: } else {
362: goto yyc_ST_RAW;
363: }
364: }
365: }
366: /* *********************************** */
367: yyc_INITIAL:
368: {
369: static const unsigned char yybm[] = {
370: 144, 144, 144, 144, 144, 144, 144, 144,
371: 144, 160, 0, 144, 144, 0, 144, 144,
372: 144, 144, 144, 144, 144, 144, 144, 144,
373: 144, 144, 144, 144, 144, 144, 144, 144,
374: 240, 128, 128, 144, 128, 144, 128, 144,
375: 128, 128, 144, 144, 144, 144, 144, 144,
376: 144, 144, 144, 144, 144, 144, 144, 144,
377: 144, 144, 144, 128, 144, 128, 144, 144,
378: 144, 144, 144, 144, 144, 144, 144, 144,
379: 144, 144, 144, 144, 144, 144, 144, 144,
380: 144, 144, 144, 144, 144, 144, 144, 144,
381: 144, 144, 144, 128, 144, 144, 144, 144,
382: 144, 144, 144, 144, 144, 144, 144, 144,
383: 144, 144, 144, 144, 144, 144, 144, 144,
384: 144, 144, 144, 144, 144, 144, 144, 144,
385: 144, 144, 144, 128, 128, 128, 128, 144,
386: 144, 144, 144, 144, 144, 144, 144, 144,
387: 144, 144, 144, 144, 144, 144, 144, 144,
388: 144, 144, 144, 144, 144, 144, 144, 144,
389: 144, 144, 144, 144, 144, 144, 144, 144,
390: 144, 144, 144, 144, 144, 144, 144, 144,
391: 144, 144, 144, 144, 144, 144, 144, 144,
392: 144, 144, 144, 144, 144, 144, 144, 144,
393: 144, 144, 144, 144, 144, 144, 144, 144,
394: 144, 144, 144, 144, 144, 144, 144, 144,
395: 144, 144, 144, 144, 144, 144, 144, 144,
396: 144, 144, 144, 144, 144, 144, 144, 144,
397: 144, 144, 144, 144, 144, 144, 144, 144,
398: 144, 144, 144, 144, 144, 144, 144, 144,
399: 144, 144, 144, 144, 144, 144, 144, 144,
400: 144, 144, 144, 144, 144, 144, 144, 144,
401: 144, 144, 144, 144, 144, 144, 144, 144,
402: };
403:
404: YYDEBUG(0, *YYCURSOR);
405: YYFILL(5);
406: yych = *YYCURSOR;
407: YYDEBUG(-1, yych);
408: switch (yych) {
409: case '\t': goto yy4;
410: case '\n': goto yy6;
411: case '\r': goto yy8;
412: case ' ': goto yy9;
413: case '!':
414: case '"':
415: case '$':
416: case '&':
417: case '(':
418: case ')':
419: case '{':
420: case '|':
421: case '}':
422: case '~': goto yy10;
423: case '#': goto yy12;
424: case '%':
425: case '\'':
426: case '*':
427: case '+':
428: case ',':
429: case '-':
430: case '.':
431: case '/':
432: case ':':
433: case '<':
434: case '>':
435: case '?':
436: case '@':
437: case ']':
438: case '^': goto yy13;
439: case ';': goto yy14;
440: case '=': goto yy16;
441: case 'F':
442: case 'f': goto yy18;
443: case 'N':
444: case 'n': goto yy19;
445: case 'O':
446: case 'o': goto yy20;
447: case 'T':
448: case 't': goto yy21;
449: case 'Y':
450: case 'y': goto yy22;
451: case '[': goto yy23;
452: default: goto yy2;
453: }
454: yy2:
455: YYDEBUG(2, *YYCURSOR);
456: ++YYCURSOR;
457: yych = *YYCURSOR;
458: goto yy26;
459: yy3:
460: YYDEBUG(3, *YYCURSOR);
461: yyleng = YYCURSOR - SCNG(yy_text);
462: #line 426 "Zend/zend_ini_scanner.l"
463: { /* Get option name */
464: /* Eat leading whitespace */
465: EAT_LEADING_WHITESPACE();
466:
467: /* Eat trailing whitespace */
468: EAT_TRAILING_WHITESPACE();
469:
470: RETURN_TOKEN(TC_LABEL, yytext, yyleng);
471: }
472: #line 473 "Zend/zend_ini_scanner.c"
473: yy4:
474: YYDEBUG(4, *YYCURSOR);
475: yyaccept = 0;
476: yych = *(YYMARKER = ++YYCURSOR);
477: goto yy68;
478: yy5:
479: YYDEBUG(5, *YYCURSOR);
480: yyleng = YYCURSOR - SCNG(yy_text);
481: #line 544 "Zend/zend_ini_scanner.l"
482: {
483: /* eat whitespace */
484: goto restart;
485: }
486: #line 487 "Zend/zend_ini_scanner.c"
487: yy6:
488: YYDEBUG(6, *YYCURSOR);
489: ++YYCURSOR;
490: yy7:
491: YYDEBUG(7, *YYCURSOR);
492: yyleng = YYCURSOR - SCNG(yy_text);
493: #line 549 "Zend/zend_ini_scanner.l"
494: {
495: SCNG(lineno)++;
496: return END_OF_LINE;
497: }
498: #line 499 "Zend/zend_ini_scanner.c"
499: yy8:
500: YYDEBUG(8, *YYCURSOR);
501: yych = *++YYCURSOR;
502: if (yych == '\n') goto yy71;
503: goto yy7;
504: yy9:
505: YYDEBUG(9, *YYCURSOR);
506: yyaccept = 1;
507: yych = *(YYMARKER = ++YYCURSOR);
508: if (yych <= ' ') {
509: if (yych <= '\n') {
510: if (yych <= 0x08) goto yy26;
511: if (yych <= '\t') goto yy67;
512: goto yy71;
513: } else {
514: if (yych == '\r') goto yy72;
515: if (yych <= 0x1F) goto yy26;
516: goto yy69;
517: }
518: } else {
519: if (yych <= ':') {
520: if (yych == '#') goto yy58;
521: goto yy26;
522: } else {
523: if (yych <= ';') goto yy53;
524: if (yych == '=') goto yy51;
525: goto yy26;
526: }
527: }
528: yy10:
529: YYDEBUG(10, *YYCURSOR);
530: ++YYCURSOR;
531: YYDEBUG(11, *YYCURSOR);
532: yyleng = YYCURSOR - SCNG(yy_text);
533: #line 472 "Zend/zend_ini_scanner.l"
534: { /* Disallow these chars outside option values */
535: return yytext[0];
536: }
537: #line 538 "Zend/zend_ini_scanner.c"
538: yy12:
539: YYDEBUG(12, *YYCURSOR);
540: yyaccept = 1;
541: yych = *(YYMARKER = ++YYCURSOR);
542: goto yy59;
543: yy13:
544: YYDEBUG(13, *YYCURSOR);
545: yych = *++YYCURSOR;
546: goto yy26;
547: yy14:
548: YYDEBUG(14, *YYCURSOR);
549: yyaccept = 2;
550: yych = *(YYMARKER = ++YYCURSOR);
551: goto yy54;
552: YYDEBUG(15, *YYCURSOR);
553: yyleng = YYCURSOR - SCNG(yy_text);
554: #line 572 "Zend/zend_ini_scanner.l"
555: {
556: return 0;
557: }
558: #line 559 "Zend/zend_ini_scanner.c"
559: yy16:
560: YYDEBUG(16, *YYCURSOR);
561: ++YYCURSOR;
562: yych = *YYCURSOR;
563: goto yy52;
564: yy17:
565: YYDEBUG(17, *YYCURSOR);
566: yyleng = YYCURSOR - SCNG(yy_text);
567: #line 436 "Zend/zend_ini_scanner.l"
568: { /* Start option value */
569: if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
570: yy_push_state(ST_RAW TSRMLS_CC);
571: } else {
572: yy_push_state(ST_VALUE TSRMLS_CC);
573: }
574: return '=';
575: }
576: #line 577 "Zend/zend_ini_scanner.c"
577: yy18:
578: YYDEBUG(18, *YYCURSOR);
579: yych = *++YYCURSOR;
580: if (yych == 'A') goto yy48;
581: if (yych == 'a') goto yy48;
582: goto yy26;
583: yy19:
584: YYDEBUG(19, *YYCURSOR);
585: yych = *++YYCURSOR;
586: if (yych <= 'U') {
587: if (yych == 'O') goto yy44;
588: if (yych <= 'T') goto yy26;
589: goto yy45;
590: } else {
591: if (yych <= 'o') {
592: if (yych <= 'n') goto yy26;
593: goto yy44;
594: } else {
595: if (yych == 'u') goto yy45;
596: goto yy26;
597: }
598: }
599: yy20:
600: YYDEBUG(20, *YYCURSOR);
601: yych = *++YYCURSOR;
602: if (yych <= 'N') {
603: if (yych == 'F') goto yy38;
604: if (yych <= 'M') goto yy26;
605: goto yy31;
606: } else {
607: if (yych <= 'f') {
608: if (yych <= 'e') goto yy26;
609: goto yy38;
610: } else {
611: if (yych == 'n') goto yy31;
612: goto yy26;
613: }
614: }
615: yy21:
616: YYDEBUG(21, *YYCURSOR);
617: yych = *++YYCURSOR;
618: if (yych == 'R') goto yy36;
619: if (yych == 'r') goto yy36;
620: goto yy26;
621: yy22:
622: YYDEBUG(22, *YYCURSOR);
623: yych = *++YYCURSOR;
624: if (yych == 'E') goto yy27;
625: if (yych == 'e') goto yy27;
626: goto yy26;
627: yy23:
628: YYDEBUG(23, *YYCURSOR);
629: ++YYCURSOR;
630: YYDEBUG(24, *YYCURSOR);
631: yyleng = YYCURSOR - SCNG(yy_text);
632: #line 355 "Zend/zend_ini_scanner.l"
633: { /* Section start */
634: /* Enter section data lookup state */
635: if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
636: yy_push_state(ST_SECTION_RAW TSRMLS_CC);
637: } else {
638: yy_push_state(ST_SECTION_VALUE TSRMLS_CC);
639: }
640: return TC_SECTION;
641: }
642: #line 643 "Zend/zend_ini_scanner.c"
643: yy25:
644: YYDEBUG(25, *YYCURSOR);
645: ++YYCURSOR;
646: YYFILL(1);
647: yych = *YYCURSOR;
648: yy26:
649: YYDEBUG(26, *YYCURSOR);
650: if (yybm[0+yych] & 16) {
651: goto yy25;
652: }
653: if (yych == '[') goto yy28;
654: goto yy3;
655: yy27:
656: YYDEBUG(27, *YYCURSOR);
657: yych = *++YYCURSOR;
658: if (yych == 'S') goto yy31;
659: if (yych == 's') goto yy31;
660: goto yy26;
661: yy28:
662: YYDEBUG(28, *YYCURSOR);
663: ++YYCURSOR;
664: YYFILL(1);
665: yych = *YYCURSOR;
666: YYDEBUG(29, *YYCURSOR);
667: if (yybm[0+yych] & 32) {
668: goto yy28;
669: }
670: YYDEBUG(30, *YYCURSOR);
671: yyleng = YYCURSOR - SCNG(yy_text);
672: #line 380 "Zend/zend_ini_scanner.l"
673: { /* Start of option with offset */
674: /* Eat leading whitespace */
675: EAT_LEADING_WHITESPACE();
676:
677: /* Eat trailing whitespace and [ */
678: EAT_TRAILING_WHITESPACE_EX('[');
679:
680: /* Enter offset lookup state */
681: yy_push_state(ST_OFFSET TSRMLS_CC);
682:
683: RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
684: }
685: #line 686 "Zend/zend_ini_scanner.c"
686: yy31:
687: YYDEBUG(31, *YYCURSOR);
688: ++YYCURSOR;
689: YYFILL(1);
690: yych = *YYCURSOR;
691: YYDEBUG(32, *YYCURSOR);
692: if (yybm[0+yych] & 64) {
693: goto yy31;
694: }
695: if (yych <= '&') {
696: if (yych <= '\r') {
697: if (yych <= '\t') {
698: if (yych <= 0x08) goto yy25;
699: goto yy34;
700: } else {
701: if (yych <= '\n') goto yy33;
702: if (yych <= '\f') goto yy25;
703: }
704: } else {
705: if (yych <= '#') {
706: if (yych <= ' ') goto yy25;
707: if (yych >= '#') goto yy25;
708: } else {
709: if (yych == '%') goto yy25;
710: }
711: }
712: } else {
713: if (yych <= '<') {
714: if (yych <= ')') {
715: if (yych <= '\'') goto yy25;
716: } else {
717: if (yych != ';') goto yy25;
718: }
719: } else {
720: if (yych <= '[') {
721: if (yych <= '=') goto yy33;
722: if (yych <= 'Z') goto yy25;
723: goto yy28;
724: } else {
725: if (yych <= 'z') goto yy25;
726: if (yych >= 0x7F) goto yy25;
727: }
728: }
729: }
730: yy33:
731: YYDEBUG(33, *YYCURSOR);
732: yyleng = YYCURSOR - SCNG(yy_text);
733: #line 418 "Zend/zend_ini_scanner.l"
734: { /* TRUE value (when used outside option value/offset this causes parse error!) */
735: RETURN_TOKEN(BOOL_TRUE, "1", 1);
736: }
737: #line 738 "Zend/zend_ini_scanner.c"
738: yy34:
739: YYDEBUG(34, *YYCURSOR);
740: ++YYCURSOR;
741: YYFILL(1);
742: yych = *YYCURSOR;
743: YYDEBUG(35, *YYCURSOR);
744: if (yych == '\t') goto yy34;
745: if (yych == ' ') goto yy34;
746: goto yy33;
747: yy36:
748: YYDEBUG(36, *YYCURSOR);
749: yych = *++YYCURSOR;
750: if (yych == 'U') goto yy37;
751: if (yych != 'u') goto yy26;
752: yy37:
753: YYDEBUG(37, *YYCURSOR);
754: yych = *++YYCURSOR;
755: if (yych == 'E') goto yy31;
756: if (yych == 'e') goto yy31;
757: goto yy26;
758: yy38:
759: YYDEBUG(38, *YYCURSOR);
760: yych = *++YYCURSOR;
761: if (yych == 'F') goto yy39;
762: if (yych != 'f') goto yy26;
763: yy39:
764: YYDEBUG(39, *YYCURSOR);
765: ++YYCURSOR;
766: YYFILL(1);
767: yych = *YYCURSOR;
768: YYDEBUG(40, *YYCURSOR);
769: if (yych <= '%') {
770: if (yych <= '\r') {
771: if (yych <= '\t') {
772: if (yych <= 0x08) goto yy25;
773: goto yy42;
774: } else {
775: if (yych <= '\n') goto yy41;
776: if (yych <= '\f') goto yy25;
777: }
778: } else {
779: if (yych <= '"') {
780: if (yych <= 0x1F) goto yy25;
781: if (yych <= ' ') goto yy39;
782: } else {
783: if (yych != '$') goto yy25;
784: }
785: }
786: } else {
787: if (yych <= '<') {
788: if (yych <= ')') {
789: if (yych == '\'') goto yy25;
790: } else {
791: if (yych != ';') goto yy25;
792: }
793: } else {
794: if (yych <= '[') {
795: if (yych <= '=') goto yy41;
796: if (yych <= 'Z') goto yy25;
797: goto yy28;
798: } else {
799: if (yych <= 'z') goto yy25;
800: if (yych >= 0x7F) goto yy25;
801: }
802: }
803: }
804: yy41:
805: YYDEBUG(41, *YYCURSOR);
806: yyleng = YYCURSOR - SCNG(yy_text);
807: #line 422 "Zend/zend_ini_scanner.l"
808: { /* FALSE value (when used outside option value/offset this causes parse error!)*/
809: RETURN_TOKEN(BOOL_FALSE, "", 0);
810: }
811: #line 812 "Zend/zend_ini_scanner.c"
812: yy42:
813: YYDEBUG(42, *YYCURSOR);
814: ++YYCURSOR;
815: YYFILL(1);
816: yych = *YYCURSOR;
817: YYDEBUG(43, *YYCURSOR);
818: if (yych == '\t') goto yy42;
819: if (yych == ' ') goto yy42;
820: goto yy41;
821: yy44:
822: YYDEBUG(44, *YYCURSOR);
823: yych = *++YYCURSOR;
824: if (yych <= '&') {
825: if (yych <= 0x1F) {
826: if (yych <= '\n') {
827: if (yych <= 0x08) goto yy26;
828: if (yych <= '\t') goto yy42;
829: goto yy41;
830: } else {
831: if (yych == '\r') goto yy41;
832: goto yy26;
833: }
834: } else {
835: if (yych <= '#') {
836: if (yych <= ' ') goto yy39;
837: if (yych <= '"') goto yy41;
838: goto yy26;
839: } else {
840: if (yych == '%') goto yy26;
841: goto yy41;
842: }
843: }
844: } else {
845: if (yych <= '=') {
846: if (yych <= ':') {
847: if (yych <= '\'') goto yy26;
848: if (yych <= ')') goto yy41;
849: goto yy26;
850: } else {
851: if (yych == '<') goto yy26;
852: goto yy41;
853: }
854: } else {
855: if (yych <= 'm') {
856: if (yych == 'N') goto yy47;
857: goto yy26;
858: } else {
859: if (yych <= 'n') goto yy47;
860: if (yych <= 'z') goto yy26;
861: if (yych <= '~') goto yy41;
862: goto yy26;
863: }
864: }
865: }
866: yy45:
867: YYDEBUG(45, *YYCURSOR);
868: yych = *++YYCURSOR;
869: if (yych == 'L') goto yy46;
870: if (yych != 'l') goto yy26;
871: yy46:
872: YYDEBUG(46, *YYCURSOR);
873: yych = *++YYCURSOR;
874: if (yych == 'L') goto yy39;
875: if (yych == 'l') goto yy39;
876: goto yy26;
877: yy47:
878: YYDEBUG(47, *YYCURSOR);
879: yych = *++YYCURSOR;
880: if (yych == 'E') goto yy39;
881: if (yych == 'e') goto yy39;
882: goto yy26;
883: yy48:
884: YYDEBUG(48, *YYCURSOR);
885: yych = *++YYCURSOR;
886: if (yych == 'L') goto yy49;
887: if (yych != 'l') goto yy26;
888: yy49:
889: YYDEBUG(49, *YYCURSOR);
890: yych = *++YYCURSOR;
891: if (yych == 'S') goto yy50;
892: if (yych != 's') goto yy26;
893: yy50:
894: YYDEBUG(50, *YYCURSOR);
895: yych = *++YYCURSOR;
896: if (yych == 'E') goto yy39;
897: if (yych == 'e') goto yy39;
898: goto yy26;
899: yy51:
900: YYDEBUG(51, *YYCURSOR);
901: ++YYCURSOR;
902: YYFILL(1);
903: yych = *YYCURSOR;
904: yy52:
905: YYDEBUG(52, *YYCURSOR);
906: if (yych == '\t') goto yy51;
907: if (yych == ' ') goto yy51;
908: goto yy17;
909: yy53:
910: YYDEBUG(53, *YYCURSOR);
911: ++YYCURSOR;
912: YYFILL(2);
913: yych = *YYCURSOR;
914: yy54:
915: YYDEBUG(54, *YYCURSOR);
916: if (yybm[0+yych] & 128) {
917: goto yy53;
918: }
919: if (yych >= '\r') goto yy57;
920: yy55:
921: YYDEBUG(55, *YYCURSOR);
922: ++YYCURSOR;
923: yy56:
924: YYDEBUG(56, *YYCURSOR);
925: yyleng = YYCURSOR - SCNG(yy_text);
926: #line 554 "Zend/zend_ini_scanner.l"
927: { /* Comment */
928: BEGIN(INITIAL);
929: SCNG(lineno)++;
930: return END_OF_LINE;
931: }
932: #line 933 "Zend/zend_ini_scanner.c"
933: yy57:
934: YYDEBUG(57, *YYCURSOR);
935: yych = *++YYCURSOR;
936: if (yych == '\n') goto yy55;
937: goto yy56;
938: yy58:
939: YYDEBUG(58, *YYCURSOR);
940: yyaccept = 1;
941: YYMARKER = ++YYCURSOR;
942: YYFILL(2);
943: yych = *YYCURSOR;
944: yy59:
945: YYDEBUG(59, *YYCURSOR);
946: if (yych <= '&') {
947: if (yych <= '\r') {
948: if (yych <= '\t') {
949: if (yych <= 0x08) goto yy58;
950: } else {
951: if (yych <= '\n') goto yy64;
952: if (yych <= '\f') goto yy58;
953: goto yy66;
954: }
955: } else {
956: if (yych <= '#') {
957: if (yych <= ' ') goto yy58;
958: if (yych >= '#') goto yy58;
959: } else {
960: if (yych == '%') goto yy58;
961: }
962: }
963: } else {
964: if (yych <= '<') {
965: if (yych <= ')') {
966: if (yych <= '\'') goto yy58;
967: } else {
968: if (yych != ';') goto yy58;
969: }
970: } else {
971: if (yych <= '[') {
972: if (yych <= '=') goto yy60;
973: if (yych <= 'Z') goto yy58;
974: goto yy62;
975: } else {
976: if (yych <= 'z') goto yy58;
977: if (yych >= 0x7F) goto yy58;
978: }
979: }
980: }
981: yy60:
982: YYDEBUG(60, *YYCURSOR);
983: ++YYCURSOR;
984: YYFILL(2);
985: yych = *YYCURSOR;
986: YYDEBUG(61, *YYCURSOR);
987: if (yych == '\n') goto yy64;
988: if (yych == '\r') goto yy66;
989: goto yy60;
990: yy62:
991: YYDEBUG(62, *YYCURSOR);
992: yyaccept = 3;
993: YYMARKER = ++YYCURSOR;
994: YYFILL(2);
995: yych = *YYCURSOR;
996: YYDEBUG(63, *YYCURSOR);
997: if (yych <= '\f') {
998: if (yych <= 0x08) goto yy60;
999: if (yych <= '\t') goto yy62;
1000: if (yych >= '\v') goto yy60;
1001: } else {
1002: if (yych <= '\r') goto yy66;
1003: if (yych == ' ') goto yy62;
1004: goto yy60;
1005: }
1006: yy64:
1007: YYDEBUG(64, *YYCURSOR);
1008: ++YYCURSOR;
1009: yy65:
1010: YYDEBUG(65, *YYCURSOR);
1011: yyleng = YYCURSOR - SCNG(yy_text);
1012: #line 560 "Zend/zend_ini_scanner.l"
1013: { /* #Comment */
1014: zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
1015: BEGIN(INITIAL);
1016: SCNG(lineno)++;
1017: return END_OF_LINE;
1018: }
1019: #line 1020 "Zend/zend_ini_scanner.c"
1020: yy66:
1021: YYDEBUG(66, *YYCURSOR);
1022: yych = *++YYCURSOR;
1023: if (yych == '\n') goto yy64;
1024: goto yy65;
1025: yy67:
1026: YYDEBUG(67, *YYCURSOR);
1027: yyaccept = 0;
1028: YYMARKER = ++YYCURSOR;
1029: YYFILL(2);
1030: yych = *YYCURSOR;
1031: yy68:
1032: YYDEBUG(68, *YYCURSOR);
1033: if (yych <= ' ') {
1034: if (yych <= '\n') {
1035: if (yych <= 0x08) goto yy5;
1036: if (yych <= '\t') goto yy67;
1037: goto yy71;
1038: } else {
1039: if (yych == '\r') goto yy72;
1040: if (yych <= 0x1F) goto yy5;
1041: goto yy67;
1042: }
1043: } else {
1044: if (yych <= ':') {
1045: if (yych == '#') goto yy60;
1046: goto yy5;
1047: } else {
1048: if (yych <= ';') goto yy53;
1049: if (yych == '=') goto yy51;
1050: goto yy5;
1051: }
1052: }
1053: yy69:
1054: YYDEBUG(69, *YYCURSOR);
1055: yyaccept = 1;
1056: YYMARKER = ++YYCURSOR;
1057: YYFILL(2);
1058: yych = *YYCURSOR;
1059: YYDEBUG(70, *YYCURSOR);
1060: if (yych <= '%') {
1061: if (yych <= '\r') {
1062: if (yych <= '\t') {
1063: if (yych <= 0x08) goto yy25;
1064: goto yy67;
1065: } else {
1066: if (yych <= '\n') goto yy71;
1067: if (yych <= '\f') goto yy25;
1068: goto yy72;
1069: }
1070: } else {
1071: if (yych <= '"') {
1072: if (yych <= 0x1F) goto yy25;
1073: if (yych <= ' ') goto yy69;
1074: goto yy3;
1075: } else {
1076: if (yych <= '#') goto yy58;
1077: if (yych <= '$') goto yy3;
1078: goto yy25;
1079: }
1080: }
1081: } else {
1082: if (yych <= '<') {
1083: if (yych <= ')') {
1084: if (yych == '\'') goto yy25;
1085: goto yy3;
1086: } else {
1087: if (yych == ';') goto yy53;
1088: goto yy25;
1089: }
1090: } else {
1091: if (yych <= '[') {
1092: if (yych <= '=') goto yy51;
1093: if (yych <= 'Z') goto yy25;
1094: goto yy28;
1095: } else {
1096: if (yych <= 'z') goto yy25;
1097: if (yych <= '~') goto yy3;
1098: goto yy25;
1099: }
1100: }
1101: }
1102: yy71:
1103: YYDEBUG(71, *YYCURSOR);
1104: yych = *++YYCURSOR;
1105: goto yy7;
1106: yy72:
1107: YYDEBUG(72, *YYCURSOR);
1108: ++YYCURSOR;
1109: if ((yych = *YYCURSOR) == '\n') goto yy71;
1110: goto yy7;
1111: }
1112: /* *********************************** */
1113: yyc_ST_DOUBLE_QUOTES:
1114: {
1115: static const unsigned char yybm[] = {
1116: 0, 0, 0, 0, 0, 0, 0, 0,
1117: 0, 128, 0, 0, 0, 0, 0, 0,
1118: 0, 0, 0, 0, 0, 0, 0, 0,
1119: 0, 0, 0, 0, 0, 0, 0, 0,
1120: 128, 0, 0, 0, 0, 0, 0, 0,
1121: 0, 0, 0, 0, 0, 0, 0, 0,
1122: 0, 0, 0, 0, 0, 0, 0, 0,
1123: 0, 0, 0, 0, 0, 0, 0, 0,
1124: 0, 0, 0, 0, 0, 0, 0, 0,
1125: 0, 0, 0, 0, 0, 0, 0, 0,
1126: 0, 0, 0, 0, 0, 0, 0, 0,
1127: 0, 0, 0, 0, 0, 0, 0, 0,
1128: 0, 0, 0, 0, 0, 0, 0, 0,
1129: 0, 0, 0, 0, 0, 0, 0, 0,
1130: 0, 0, 0, 0, 0, 0, 0, 0,
1131: 0, 0, 0, 0, 0, 0, 0, 0,
1132: 0, 0, 0, 0, 0, 0, 0, 0,
1133: 0, 0, 0, 0, 0, 0, 0, 0,
1134: 0, 0, 0, 0, 0, 0, 0, 0,
1135: 0, 0, 0, 0, 0, 0, 0, 0,
1136: 0, 0, 0, 0, 0, 0, 0, 0,
1137: 0, 0, 0, 0, 0, 0, 0, 0,
1138: 0, 0, 0, 0, 0, 0, 0, 0,
1139: 0, 0, 0, 0, 0, 0, 0, 0,
1140: 0, 0, 0, 0, 0, 0, 0, 0,
1141: 0, 0, 0, 0, 0, 0, 0, 0,
1142: 0, 0, 0, 0, 0, 0, 0, 0,
1143: 0, 0, 0, 0, 0, 0, 0, 0,
1144: 0, 0, 0, 0, 0, 0, 0, 0,
1145: 0, 0, 0, 0, 0, 0, 0, 0,
1146: 0, 0, 0, 0, 0, 0, 0, 0,
1147: 0, 0, 0, 0, 0, 0, 0, 0,
1148: };
1149: YYDEBUG(73, *YYCURSOR);
1150: YYFILL(2);
1151: yych = *YYCURSOR;
1152: if (yych == '"') goto yy77;
1153: if (yych == '$') goto yy79;
1154: YYDEBUG(75, *YYCURSOR);
1155: ++YYCURSOR;
1156: yy76:
1157: YYDEBUG(76, *YYCURSOR);
1158: yyleng = YYCURSOR - SCNG(yy_text);
1159: #line 504 "Zend/zend_ini_scanner.l"
1160: { /* Escape double quoted string contents */
1161: if (YYCURSOR > YYLIMIT) {
1162: return 0;
1163: }
1164:
1165: while (YYCURSOR < YYLIMIT) {
1166: switch (*YYCURSOR++) {
1167: case '"':
1168: if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {
1169: continue;
1170: }
1171: break;
1172: case '$':
1173: if (*YYCURSOR == '{') {
1174: break;
1175: }
1176: continue;
1177: case '\\':
1178: if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {
1179: YYCURSOR++;
1180: }
1181: /* fall through */
1182: default:
1183: continue;
1184: }
1185:
1186: YYCURSOR--;
1187: break;
1188: }
1189:
1190: yyleng = YYCURSOR - SCNG(yy_text);
1191:
1192: zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
1193: return TC_QUOTED_STRING;
1194: }
1195: #line 1196 "Zend/zend_ini_scanner.c"
1196: yy77:
1197: YYDEBUG(77, *YYCURSOR);
1198: ++YYCURSOR;
1199: yych = *YYCURSOR;
1200: goto yy83;
1201: yy78:
1202: YYDEBUG(78, *YYCURSOR);
1203: yyleng = YYCURSOR - SCNG(yy_text);
1204: #line 499 "Zend/zend_ini_scanner.l"
1205: { /* Double quoted '"' string ends */
1206: yy_pop_state(TSRMLS_C);
1207: return '"';
1208: }
1209: #line 1210 "Zend/zend_ini_scanner.c"
1210: yy79:
1211: YYDEBUG(79, *YYCURSOR);
1212: yych = *++YYCURSOR;
1213: if (yych != '{') goto yy76;
1214: YYDEBUG(80, *YYCURSOR);
1215: ++YYCURSOR;
1216: YYDEBUG(81, *YYCURSOR);
1217: yyleng = YYCURSOR - SCNG(yy_text);
1218: #line 398 "Zend/zend_ini_scanner.l"
1219: { /* Variable start */
1220: yy_push_state(ST_VARNAME TSRMLS_CC);
1221: return TC_DOLLAR_CURLY;
1222: }
1223: #line 1224 "Zend/zend_ini_scanner.c"
1224: yy82:
1225: YYDEBUG(82, *YYCURSOR);
1226: ++YYCURSOR;
1227: YYFILL(1);
1228: yych = *YYCURSOR;
1229: yy83:
1230: YYDEBUG(83, *YYCURSOR);
1231: if (yybm[0+yych] & 128) {
1232: goto yy82;
1233: }
1234: goto yy78;
1235: }
1236: /* *********************************** */
1237: yyc_ST_OFFSET:
1238: {
1239: static const unsigned char yybm[] = {
1240: 66, 66, 66, 66, 66, 66, 66, 66,
1241: 66, 194, 64, 66, 66, 64, 66, 66,
1242: 66, 66, 66, 66, 66, 66, 66, 66,
1243: 66, 66, 66, 66, 66, 66, 66, 66,
1244: 194, 66, 64, 66, 68, 66, 66, 0,
1245: 66, 66, 66, 66, 66, 66, 66, 66,
1246: 114, 114, 114, 114, 114, 114, 114, 114,
1247: 114, 114, 66, 64, 66, 66, 66, 66,
1248: 66, 82, 82, 82, 82, 82, 82, 82,
1249: 82, 82, 82, 82, 82, 82, 82, 82,
1250: 82, 82, 82, 82, 82, 82, 82, 82,
1251: 82, 82, 82, 66, 72, 64, 66, 82,
1252: 66, 82, 82, 82, 82, 82, 82, 82,
1253: 82, 82, 82, 82, 82, 82, 82, 82,
1254: 82, 82, 82, 82, 82, 82, 82, 82,
1255: 82, 82, 82, 66, 66, 66, 66, 66,
1256: 66, 66, 66, 66, 66, 66, 66, 66,
1257: 66, 66, 66, 66, 66, 66, 66, 66,
1258: 66, 66, 66, 66, 66, 66, 66, 66,
1259: 66, 66, 66, 66, 66, 66, 66, 66,
1260: 66, 66, 66, 66, 66, 66, 66, 66,
1261: 66, 66, 66, 66, 66, 66, 66, 66,
1262: 66, 66, 66, 66, 66, 66, 66, 66,
1263: 66, 66, 66, 66, 66, 66, 66, 66,
1264: 66, 66, 66, 66, 66, 66, 66, 66,
1265: 66, 66, 66, 66, 66, 66, 66, 66,
1266: 66, 66, 66, 66, 66, 66, 66, 66,
1267: 66, 66, 66, 66, 66, 66, 66, 66,
1268: 66, 66, 66, 66, 66, 66, 66, 66,
1269: 66, 66, 66, 66, 66, 66, 66, 66,
1270: 66, 66, 66, 66, 66, 66, 66, 66,
1271: 66, 66, 66, 66, 66, 66, 66, 66,
1272: };
1273: YYDEBUG(84, *YYCURSOR);
1274: YYFILL(2);
1275: yych = *YYCURSOR;
1276: if (yych <= '-') {
1277: if (yych <= ' ') {
1278: if (yych <= '\n') {
1279: if (yych <= 0x08) goto yy86;
1280: if (yych <= '\t') goto yy88;
1281: goto yy89;
1282: } else {
1283: if (yych == '\r') goto yy89;
1284: if (yych >= ' ') goto yy88;
1285: }
1286: } else {
1287: if (yych <= '$') {
1288: if (yych == '"') goto yy91;
1289: if (yych >= '$') goto yy93;
1290: } else {
1291: if (yych == '\'') goto yy94;
1292: if (yych >= '-') goto yy95;
1293: }
1294: }
1295: } else {
1296: if (yych <= 'Z') {
1297: if (yych <= '9') {
1298: if (yych <= '.') goto yy96;
1299: if (yych >= '0') goto yy97;
1300: } else {
1301: if (yych == ';') goto yy89;
1302: if (yych >= 'A') goto yy99;
1303: }
1304: } else {
1305: if (yych <= '^') {
1306: if (yych <= '[') goto yy86;
1307: if (yych <= '\\') goto yy101;
1308: if (yych <= ']') goto yy102;
1309: } else {
1310: if (yych == '`') goto yy86;
1311: if (yych <= 'z') goto yy99;
1312: }
1313: }
1314: }
1315: yy86:
1316: YYDEBUG(86, *YYCURSOR);
1317: yyaccept = 0;
1318: yych = *(YYMARKER = ++YYCURSOR);
1319: goto yy105;
1320: yy87:
1321: YYDEBUG(87, *YYCURSOR);
1322: yyleng = YYCURSOR - SCNG(yy_text);
1323: #line 490 "Zend/zend_ini_scanner.l"
1324: { /* Get rest as section/offset value */
1325: RETURN_TOKEN(TC_STRING, yytext, yyleng);
1326: }
1327: #line 1328 "Zend/zend_ini_scanner.c"
1328: yy88:
1329: YYDEBUG(88, *YYCURSOR);
1330: yyaccept = 0;
1331: yych = *(YYMARKER = ++YYCURSOR);
1332: if (yybm[0+yych] & 128) {
1333: goto yy131;
1334: }
1335: if (yych == '"') goto yy133;
1336: if (yych == ']') goto yy134;
1337: goto yy105;
1338: yy89:
1339: YYDEBUG(89, *YYCURSOR);
1340: ++YYCURSOR;
1341: yy90:
1342: YYDEBUG(90, *YYCURSOR);
1343: yyleng = YYCURSOR - SCNG(yy_text);
1344: #line 572 "Zend/zend_ini_scanner.l"
1345: {
1346: return 0;
1347: }
1348: #line 1349 "Zend/zend_ini_scanner.c"
1349: yy91:
1350: YYDEBUG(91, *YYCURSOR);
1351: ++YYCURSOR;
1352: yy92:
1353: YYDEBUG(92, *YYCURSOR);
1354: yyleng = YYCURSOR - SCNG(yy_text);
1355: #line 494 "Zend/zend_ini_scanner.l"
1356: { /* Double quoted '"' string start */
1357: yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
1358: return '"';
1359: }
1360: #line 1361 "Zend/zend_ini_scanner.c"
1361: yy93:
1362: YYDEBUG(93, *YYCURSOR);
1363: yych = *++YYCURSOR;
1364: if (yych <= '\\') {
1365: if (yych <= 0x00) goto yy90;
1366: if (yych <= '[') goto yy104;
1367: goto yy109;
1368: } else {
1369: if (yych == '{') goto yy129;
1370: goto yy104;
1371: }
1372: yy94:
1373: YYDEBUG(94, *YYCURSOR);
1374: yyaccept = 1;
1375: yych = *(YYMARKER = ++YYCURSOR);
1376: if (yybm[0+yych] & 64) {
1377: goto yy125;
1378: }
1379: goto yy90;
1380: yy95:
1381: YYDEBUG(95, *YYCURSOR);
1382: yyaccept = 0;
1383: yych = *(YYMARKER = ++YYCURSOR);
1384: if (yych <= '/') goto yy105;
1385: if (yych <= '9') goto yy123;
1386: goto yy105;
1387: yy96:
1388: YYDEBUG(96, *YYCURSOR);
1389: yyaccept = 0;
1390: yych = *(YYMARKER = ++YYCURSOR);
1391: if (yych <= '/') goto yy105;
1392: if (yych <= '9') goto yy121;
1393: goto yy105;
1394: yy97:
1395: YYDEBUG(97, *YYCURSOR);
1396: yyaccept = 2;
1397: yych = *(YYMARKER = ++YYCURSOR);
1398: if (yych <= '\'') {
1399: if (yych <= '\r') {
1400: if (yych == '\n') goto yy98;
1401: if (yych <= '\f') goto yy105;
1402: } else {
1403: if (yych == '"') goto yy98;
1404: if (yych <= '&') goto yy105;
1405: }
1406: } else {
1407: if (yych <= '9') {
1408: if (yych == '.') goto yy117;
1409: if (yych <= '/') goto yy105;
1410: goto yy119;
1411: } else {
1412: if (yych <= ';') {
1413: if (yych <= ':') goto yy105;
1414: } else {
1415: if (yych != ']') goto yy105;
1416: }
1417: }
1418: }
1419: yy98:
1420: YYDEBUG(98, *YYCURSOR);
1421: yyleng = YYCURSOR - SCNG(yy_text);
1422: #line 468 "Zend/zend_ini_scanner.l"
1423: { /* Get number option value as string */
1424: RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
1425: }
1426: #line 1427 "Zend/zend_ini_scanner.c"
1427: yy99:
1428: YYDEBUG(99, *YYCURSOR);
1429: yyaccept = 3;
1430: yych = *(YYMARKER = ++YYCURSOR);
1431: if (yybm[0+yych] & 16) {
1432: goto yy115;
1433: }
1434: if (yych <= '"') {
1435: if (yych <= '\f') {
1436: if (yych != '\n') goto yy105;
1437: } else {
1438: if (yych <= '\r') goto yy100;
1439: if (yych <= '!') goto yy105;
1440: }
1441: } else {
1442: if (yych <= ':') {
1443: if (yych != '\'') goto yy105;
1444: } else {
1445: if (yych <= ';') goto yy100;
1446: if (yych != ']') goto yy105;
1447: }
1448: }
1449: yy100:
1450: YYDEBUG(100, *YYCURSOR);
1451: yyleng = YYCURSOR - SCNG(yy_text);
1452: #line 464 "Zend/zend_ini_scanner.l"
1453: { /* Get constant option value */
1454: RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
1455: }
1456: #line 1457 "Zend/zend_ini_scanner.c"
1457: yy101:
1458: YYDEBUG(101, *YYCURSOR);
1459: yych = *++YYCURSOR;
1460: goto yy104;
1461: yy102:
1462: YYDEBUG(102, *YYCURSOR);
1463: ++YYCURSOR;
1464: yy103:
1465: YYDEBUG(103, *YYCURSOR);
1466: yyleng = YYCURSOR - SCNG(yy_text);
1467: #line 393 "Zend/zend_ini_scanner.l"
1468: { /* End of section or an option offset */
1469: BEGIN(INITIAL);
1470: return ']';
1471: }
1472: #line 1473 "Zend/zend_ini_scanner.c"
1473: yy104:
1474: YYDEBUG(104, *YYCURSOR);
1475: yyaccept = 0;
1476: YYMARKER = ++YYCURSOR;
1477: YYFILL(1);
1478: yych = *YYCURSOR;
1479: yy105:
1480: YYDEBUG(105, *YYCURSOR);
1481: if (yybm[0+yych] & 2) {
1482: goto yy104;
1483: }
1484: if (yych == '$') goto yy107;
1485: if (yych != '\\') goto yy87;
1486: yy106:
1487: YYDEBUG(106, *YYCURSOR);
1488: ++YYCURSOR;
1489: YYFILL(1);
1490: yych = *YYCURSOR;
1491: goto yy104;
1492: yy107:
1493: YYDEBUG(107, *YYCURSOR);
1494: ++YYCURSOR;
1495: YYFILL(1);
1496: yych = *YYCURSOR;
1497: if (yych <= '\\') {
1498: if (yych <= 0x00) goto yy108;
1499: if (yych <= '[') goto yy104;
1500: goto yy109;
1501: } else {
1502: if (yych != '{') goto yy104;
1503: }
1504: yy108:
1505: YYDEBUG(108, *YYCURSOR);
1506: YYCURSOR = YYMARKER;
1507: if (yyaccept <= 1) {
1508: if (yyaccept <= 0) {
1509: goto yy87;
1510: } else {
1511: goto yy90;
1512: }
1513: } else {
1514: if (yyaccept <= 2) {
1515: goto yy98;
1516: } else {
1517: goto yy100;
1518: }
1519: }
1520: yy109:
1521: YYDEBUG(109, *YYCURSOR);
1522: ++YYCURSOR;
1523: YYFILL(1);
1524: yych = *YYCURSOR;
1525: if (yybm[0+yych] & 4) {
1526: goto yy110;
1527: }
1528: if (yych == '\\') goto yy112;
1529: goto yy104;
1530: yy110:
1531: YYDEBUG(110, *YYCURSOR);
1532: ++YYCURSOR;
1533: YYFILL(1);
1534: yych = *YYCURSOR;
1535: YYDEBUG(111, *YYCURSOR);
1536: if (yybm[0+yych] & 4) {
1537: goto yy110;
1538: }
1539: if (yych == '\\') goto yy114;
1540: goto yy104;
1541: yy112:
1542: YYDEBUG(112, *YYCURSOR);
1543: ++YYCURSOR;
1544: YYFILL(1);
1545: yych = *YYCURSOR;
1546: YYDEBUG(113, *YYCURSOR);
1547: if (yybm[0+yych] & 4) {
1548: goto yy110;
1549: }
1550: if (yych == '\\') goto yy112;
1551: goto yy104;
1552: yy114:
1553: YYDEBUG(114, *YYCURSOR);
1554: ++YYCURSOR;
1555: YYFILL(1);
1556: yych = *YYCURSOR;
1557: if (yybm[0+yych] & 4) {
1558: goto yy110;
1559: }
1560: if (yych == '\\') goto yy112;
1561: goto yy104;
1562: yy115:
1563: YYDEBUG(115, *YYCURSOR);
1564: yyaccept = 3;
1565: YYMARKER = ++YYCURSOR;
1566: YYFILL(1);
1567: yych = *YYCURSOR;
1568: YYDEBUG(116, *YYCURSOR);
1569: if (yybm[0+yych] & 16) {
1570: goto yy115;
1571: }
1572: if (yych <= '$') {
1573: if (yych <= '\r') {
1574: if (yych == '\n') goto yy100;
1575: if (yych <= '\f') goto yy104;
1576: goto yy100;
1577: } else {
1578: if (yych == '"') goto yy100;
1579: if (yych <= '#') goto yy104;
1580: goto yy107;
1581: }
1582: } else {
1583: if (yych <= ';') {
1584: if (yych == '\'') goto yy100;
1585: if (yych <= ':') goto yy104;
1586: goto yy100;
1587: } else {
1588: if (yych <= '[') goto yy104;
1589: if (yych <= '\\') goto yy106;
1590: if (yych <= ']') goto yy100;
1591: goto yy104;
1592: }
1593: }
1594: yy117:
1595: YYDEBUG(117, *YYCURSOR);
1596: yyaccept = 2;
1597: YYMARKER = ++YYCURSOR;
1598: YYFILL(1);
1599: yych = *YYCURSOR;
1600: YYDEBUG(118, *YYCURSOR);
1601: if (yybm[0+yych] & 32) {
1602: goto yy117;
1603: }
1604: if (yych <= '$') {
1605: if (yych <= '\r') {
1606: if (yych == '\n') goto yy98;
1607: if (yych <= '\f') goto yy104;
1608: goto yy98;
1609: } else {
1610: if (yych == '"') goto yy98;
1611: if (yych <= '#') goto yy104;
1612: goto yy107;
1613: }
1614: } else {
1615: if (yych <= ';') {
1616: if (yych == '\'') goto yy98;
1617: if (yych <= ':') goto yy104;
1618: goto yy98;
1619: } else {
1620: if (yych <= '[') goto yy104;
1621: if (yych <= '\\') goto yy106;
1622: if (yych <= ']') goto yy98;
1623: goto yy104;
1624: }
1625: }
1626: yy119:
1627: YYDEBUG(119, *YYCURSOR);
1628: yyaccept = 2;
1629: YYMARKER = ++YYCURSOR;
1630: YYFILL(1);
1631: yych = *YYCURSOR;
1632: YYDEBUG(120, *YYCURSOR);
1633: if (yych <= '\'') {
1634: if (yych <= '!') {
1635: if (yych <= '\n') {
1636: if (yych <= '\t') goto yy104;
1637: goto yy98;
1638: } else {
1639: if (yych == '\r') goto yy98;
1640: goto yy104;
1641: }
1642: } else {
1643: if (yych <= '#') {
1644: if (yych <= '"') goto yy98;
1645: goto yy104;
1646: } else {
1647: if (yych <= '$') goto yy107;
1648: if (yych <= '&') goto yy104;
1649: goto yy98;
1650: }
1651: }
1652: } else {
1653: if (yych <= ':') {
1654: if (yych <= '.') {
1655: if (yych <= '-') goto yy104;
1656: goto yy117;
1657: } else {
1658: if (yych <= '/') goto yy104;
1659: if (yych <= '9') goto yy119;
1660: goto yy104;
1661: }
1662: } else {
1663: if (yych <= '[') {
1664: if (yych <= ';') goto yy98;
1665: goto yy104;
1666: } else {
1667: if (yych <= '\\') goto yy106;
1668: if (yych <= ']') goto yy98;
1669: goto yy104;
1670: }
1671: }
1672: }
1673: yy121:
1674: YYDEBUG(121, *YYCURSOR);
1675: yyaccept = 2;
1676: YYMARKER = ++YYCURSOR;
1677: YYFILL(1);
1678: yych = *YYCURSOR;
1679: YYDEBUG(122, *YYCURSOR);
1680: if (yych <= '&') {
1681: if (yych <= '\r') {
1682: if (yych == '\n') goto yy98;
1683: if (yych <= '\f') goto yy104;
1684: goto yy98;
1685: } else {
1686: if (yych <= '"') {
1687: if (yych <= '!') goto yy104;
1688: goto yy98;
1689: } else {
1690: if (yych == '$') goto yy107;
1691: goto yy104;
1692: }
1693: }
1694: } else {
1695: if (yych <= ':') {
1696: if (yych <= '\'') goto yy98;
1697: if (yych <= '/') goto yy104;
1698: if (yych <= '9') goto yy121;
1699: goto yy104;
1700: } else {
1701: if (yych <= '[') {
1702: if (yych <= ';') goto yy98;
1703: goto yy104;
1704: } else {
1705: if (yych <= '\\') goto yy106;
1706: if (yych <= ']') goto yy98;
1707: goto yy104;
1708: }
1709: }
1710: }
1711: yy123:
1712: YYDEBUG(123, *YYCURSOR);
1713: yyaccept = 2;
1714: YYMARKER = ++YYCURSOR;
1715: YYFILL(1);
1716: yych = *YYCURSOR;
1717: YYDEBUG(124, *YYCURSOR);
1718: if (yych <= '&') {
1719: if (yych <= '\r') {
1720: if (yych == '\n') goto yy98;
1721: if (yych <= '\f') goto yy104;
1722: goto yy98;
1723: } else {
1724: if (yych <= '"') {
1725: if (yych <= '!') goto yy104;
1726: goto yy98;
1727: } else {
1728: if (yych == '$') goto yy107;
1729: goto yy104;
1730: }
1731: }
1732: } else {
1733: if (yych <= ':') {
1734: if (yych <= '\'') goto yy98;
1735: if (yych <= '/') goto yy104;
1736: if (yych <= '9') goto yy123;
1737: goto yy104;
1738: } else {
1739: if (yych <= '[') {
1740: if (yych <= ';') goto yy98;
1741: goto yy104;
1742: } else {
1743: if (yych <= '\\') goto yy106;
1744: if (yych <= ']') goto yy98;
1745: goto yy104;
1746: }
1747: }
1748: }
1749: yy125:
1750: YYDEBUG(125, *YYCURSOR);
1751: ++YYCURSOR;
1752: YYFILL(1);
1753: yych = *YYCURSOR;
1754: YYDEBUG(126, *YYCURSOR);
1755: if (yybm[0+yych] & 64) {
1756: goto yy125;
1757: }
1758: YYDEBUG(127, *YYCURSOR);
1759: ++YYCURSOR;
1760: YYDEBUG(128, *YYCURSOR);
1761: yyleng = YYCURSOR - SCNG(yy_text);
1762: #line 365 "Zend/zend_ini_scanner.l"
1763: { /* Raw string */
1764: /* Eat leading and trailing single quotes */
1765: if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
1766: SCNG(yy_text)++;
1767: yyleng = yyleng - 2;
1768: }
1769: RETURN_TOKEN(TC_RAW, yytext, yyleng);
1770: }
1771: #line 1772 "Zend/zend_ini_scanner.c"
1772: yy129:
1773: YYDEBUG(129, *YYCURSOR);
1774: ++YYCURSOR;
1775: YYDEBUG(130, *YYCURSOR);
1776: yyleng = YYCURSOR - SCNG(yy_text);
1777: #line 398 "Zend/zend_ini_scanner.l"
1778: { /* Variable start */
1779: yy_push_state(ST_VARNAME TSRMLS_CC);
1780: return TC_DOLLAR_CURLY;
1781: }
1782: #line 1783 "Zend/zend_ini_scanner.c"
1783: yy131:
1784: YYDEBUG(131, *YYCURSOR);
1785: yyaccept = 0;
1786: YYMARKER = ++YYCURSOR;
1787: YYFILL(1);
1788: yych = *YYCURSOR;
1789: YYDEBUG(132, *YYCURSOR);
1790: if (yybm[0+yych] & 128) {
1791: goto yy131;
1792: }
1793: if (yych <= '$') {
1794: if (yych <= '\r') {
1795: if (yych == '\n') goto yy87;
1796: if (yych <= '\f') goto yy104;
1797: goto yy87;
1798: } else {
1799: if (yych == '"') goto yy133;
1800: if (yych <= '#') goto yy104;
1801: goto yy107;
1802: }
1803: } else {
1804: if (yych <= ';') {
1805: if (yych == '\'') goto yy87;
1806: if (yych <= ':') goto yy104;
1807: goto yy87;
1808: } else {
1809: if (yych <= '[') goto yy104;
1810: if (yych <= '\\') goto yy106;
1811: if (yych <= ']') goto yy134;
1812: goto yy104;
1813: }
1814: }
1815: yy133:
1816: YYDEBUG(133, *YYCURSOR);
1817: yych = *++YYCURSOR;
1818: goto yy92;
1819: yy134:
1820: YYDEBUG(134, *YYCURSOR);
1821: ++YYCURSOR;
1822: yych = *YYCURSOR;
1823: goto yy103;
1824: }
1825: /* *********************************** */
1826: yyc_ST_RAW:
1827: {
1828: static const unsigned char yybm[] = {
1829: 32, 160, 160, 160, 160, 160, 160, 160,
1830: 160, 224, 0, 160, 160, 0, 160, 160,
1831: 160, 160, 160, 160, 160, 160, 160, 160,
1832: 160, 160, 160, 160, 160, 160, 160, 160,
1833: 224, 160, 160, 160, 160, 160, 160, 160,
1834: 160, 160, 160, 160, 160, 160, 160, 160,
1835: 160, 160, 160, 160, 160, 160, 160, 160,
1836: 160, 160, 160, 32, 160, 160, 160, 160,
1837: 160, 160, 160, 160, 160, 160, 160, 160,
1838: 160, 160, 160, 160, 160, 160, 160, 160,
1839: 160, 160, 160, 160, 160, 160, 160, 160,
1840: 160, 160, 160, 160, 160, 160, 160, 160,
1841: 160, 160, 160, 160, 160, 160, 160, 160,
1842: 160, 160, 160, 160, 160, 160, 160, 160,
1843: 160, 160, 160, 160, 160, 160, 160, 160,
1844: 160, 160, 160, 160, 160, 160, 160, 160,
1845: 160, 160, 160, 160, 160, 160, 160, 160,
1846: 160, 160, 160, 160, 160, 160, 160, 160,
1847: 160, 160, 160, 160, 160, 160, 160, 160,
1848: 160, 160, 160, 160, 160, 160, 160, 160,
1849: 160, 160, 160, 160, 160, 160, 160, 160,
1850: 160, 160, 160, 160, 160, 160, 160, 160,
1851: 160, 160, 160, 160, 160, 160, 160, 160,
1852: 160, 160, 160, 160, 160, 160, 160, 160,
1853: 160, 160, 160, 160, 160, 160, 160, 160,
1854: 160, 160, 160, 160, 160, 160, 160, 160,
1855: 160, 160, 160, 160, 160, 160, 160, 160,
1856: 160, 160, 160, 160, 160, 160, 160, 160,
1857: 160, 160, 160, 160, 160, 160, 160, 160,
1858: 160, 160, 160, 160, 160, 160, 160, 160,
1859: 160, 160, 160, 160, 160, 160, 160, 160,
1860: 160, 160, 160, 160, 160, 160, 160, 160,
1861: };
1862: YYDEBUG(135, *YYCURSOR);
1863: YYFILL(3);
1864: yych = *YYCURSOR;
1865: if (yych <= '\f') {
1866: if (yych <= 0x08) {
1867: if (yych >= 0x01) goto yy139;
1868: } else {
1869: if (yych <= '\t') goto yy141;
1870: if (yych <= '\n') goto yy142;
1871: goto yy139;
1872: }
1873: } else {
1874: if (yych <= ' ') {
1875: if (yych <= '\r') goto yy144;
1876: if (yych <= 0x1F) goto yy139;
1877: goto yy141;
1878: } else {
1879: if (yych == ';') goto yy145;
1880: goto yy139;
1881: }
1882: }
1883: YYDEBUG(137, *YYCURSOR);
1884: ++YYCURSOR;
1885: YYDEBUG(138, *YYCURSOR);
1886: yyleng = YYCURSOR - SCNG(yy_text);
1887: #line 567 "Zend/zend_ini_scanner.l"
1888: { /* End of option value (if EOF is reached before EOL */
1889: BEGIN(INITIAL);
1890: return END_OF_LINE;
1891: }
1892: #line 1893 "Zend/zend_ini_scanner.c"
1893: yy139:
1894: YYDEBUG(139, *YYCURSOR);
1895: ++YYCURSOR;
1896: yych = *YYCURSOR;
1897: goto yy156;
1898: yy140:
1899: YYDEBUG(140, *YYCURSOR);
1900: yyleng = YYCURSOR - SCNG(yy_text);
1901: #line 445 "Zend/zend_ini_scanner.l"
1902: { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
1903: /* Eat leading and trailing double quotes */
1904: if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
1905: SCNG(yy_text)++;
1906: yyleng = yyleng - 2;
1907: }
1908: RETURN_TOKEN(TC_RAW, yytext, yyleng);
1909: }
1910: #line 1911 "Zend/zend_ini_scanner.c"
1911: yy141:
1912: YYDEBUG(141, *YYCURSOR);
1913: yyaccept = 0;
1914: yych = *(YYMARKER = ++YYCURSOR);
1915: if (yybm[0+yych] & 64) {
1916: goto yy152;
1917: }
1918: if (yych <= '\f') {
1919: if (yych == '\n') goto yy151;
1920: goto yy156;
1921: } else {
1922: if (yych <= '\r') goto yy154;
1923: if (yych == ';') goto yy146;
1924: goto yy156;
1925: }
1926: yy142:
1927: YYDEBUG(142, *YYCURSOR);
1928: ++YYCURSOR;
1929: yy143:
1930: YYDEBUG(143, *YYCURSOR);
1931: yyleng = YYCURSOR - SCNG(yy_text);
1932: #line 458 "Zend/zend_ini_scanner.l"
1933: { /* End of option value */
1934: BEGIN(INITIAL);
1935: SCNG(lineno)++;
1936: return END_OF_LINE;
1937: }
1938: #line 1939 "Zend/zend_ini_scanner.c"
1939: yy144:
1940: YYDEBUG(144, *YYCURSOR);
1941: yych = *++YYCURSOR;
1942: if (yych == '\n') goto yy151;
1943: goto yy143;
1944: yy145:
1945: YYDEBUG(145, *YYCURSOR);
1946: yyaccept = 1;
1947: yych = *(YYMARKER = ++YYCURSOR);
1948: goto yy147;
1949: yy146:
1950: YYDEBUG(146, *YYCURSOR);
1951: ++YYCURSOR;
1952: YYFILL(2);
1953: yych = *YYCURSOR;
1954: yy147:
1955: YYDEBUG(147, *YYCURSOR);
1956: if (yybm[0+yych] & 32) {
1957: goto yy146;
1958: }
1959: if (yych >= '\r') goto yy150;
1960: yy148:
1961: YYDEBUG(148, *YYCURSOR);
1962: ++YYCURSOR;
1963: yy149:
1964: YYDEBUG(149, *YYCURSOR);
1965: yyleng = YYCURSOR - SCNG(yy_text);
1966: #line 554 "Zend/zend_ini_scanner.l"
1967: { /* Comment */
1968: BEGIN(INITIAL);
1969: SCNG(lineno)++;
1970: return END_OF_LINE;
1971: }
1972: #line 1973 "Zend/zend_ini_scanner.c"
1973: yy150:
1974: YYDEBUG(150, *YYCURSOR);
1975: yych = *++YYCURSOR;
1976: if (yych == '\n') goto yy148;
1977: goto yy149;
1978: yy151:
1979: YYDEBUG(151, *YYCURSOR);
1980: yych = *++YYCURSOR;
1981: goto yy143;
1982: yy152:
1983: YYDEBUG(152, *YYCURSOR);
1984: yyaccept = 0;
1985: YYMARKER = ++YYCURSOR;
1986: YYFILL(2);
1987: yych = *YYCURSOR;
1988: YYDEBUG(153, *YYCURSOR);
1989: if (yybm[0+yych] & 64) {
1990: goto yy152;
1991: }
1992: if (yych <= '\f') {
1993: if (yych <= 0x00) goto yy140;
1994: if (yych == '\n') goto yy151;
1995: goto yy155;
1996: } else {
1997: if (yych <= '\r') goto yy154;
1998: if (yych == ';') goto yy146;
1999: goto yy155;
2000: }
2001: yy154:
2002: YYDEBUG(154, *YYCURSOR);
2003: yych = *++YYCURSOR;
2004: if (yych == '\n') goto yy151;
2005: goto yy143;
2006: yy155:
2007: YYDEBUG(155, *YYCURSOR);
2008: ++YYCURSOR;
2009: YYFILL(1);
2010: yych = *YYCURSOR;
2011: yy156:
2012: YYDEBUG(156, *YYCURSOR);
2013: if (yybm[0+yych] & 128) {
2014: goto yy155;
2015: }
2016: goto yy140;
2017: }
2018: /* *********************************** */
2019: yyc_ST_SECTION_RAW:
2020: {
2021: static const unsigned char yybm[] = {
2022: 128, 128, 128, 128, 128, 128, 128, 128,
2023: 128, 192, 0, 128, 128, 0, 128, 128,
2024: 128, 128, 128, 128, 128, 128, 128, 128,
2025: 128, 128, 128, 128, 128, 128, 128, 128,
2026: 192, 128, 128, 128, 128, 128, 128, 128,
2027: 128, 128, 128, 128, 128, 128, 128, 128,
2028: 128, 128, 128, 128, 128, 128, 128, 128,
2029: 128, 128, 128, 128, 128, 128, 128, 128,
2030: 128, 128, 128, 128, 128, 128, 128, 128,
2031: 128, 128, 128, 128, 128, 128, 128, 128,
2032: 128, 128, 128, 128, 128, 128, 128, 128,
2033: 128, 128, 128, 128, 128, 0, 128, 128,
2034: 128, 128, 128, 128, 128, 128, 128, 128,
2035: 128, 128, 128, 128, 128, 128, 128, 128,
2036: 128, 128, 128, 128, 128, 128, 128, 128,
2037: 128, 128, 128, 128, 128, 128, 128, 128,
2038: 128, 128, 128, 128, 128, 128, 128, 128,
2039: 128, 128, 128, 128, 128, 128, 128, 128,
2040: 128, 128, 128, 128, 128, 128, 128, 128,
2041: 128, 128, 128, 128, 128, 128, 128, 128,
2042: 128, 128, 128, 128, 128, 128, 128, 128,
2043: 128, 128, 128, 128, 128, 128, 128, 128,
2044: 128, 128, 128, 128, 128, 128, 128, 128,
2045: 128, 128, 128, 128, 128, 128, 128, 128,
2046: 128, 128, 128, 128, 128, 128, 128, 128,
2047: 128, 128, 128, 128, 128, 128, 128, 128,
2048: 128, 128, 128, 128, 128, 128, 128, 128,
2049: 128, 128, 128, 128, 128, 128, 128, 128,
2050: 128, 128, 128, 128, 128, 128, 128, 128,
2051: 128, 128, 128, 128, 128, 128, 128, 128,
2052: 128, 128, 128, 128, 128, 128, 128, 128,
2053: 128, 128, 128, 128, 128, 128, 128, 128,
2054: };
2055: YYDEBUG(157, *YYCURSOR);
2056: YYFILL(3);
2057: yych = *YYCURSOR;
2058: if (yych <= '\f') {
2059: if (yych == '\n') goto yy161;
2060: } else {
2061: if (yych <= '\r') goto yy161;
2062: if (yych == ']') goto yy163;
2063: }
2064: YYDEBUG(159, *YYCURSOR);
2065: ++YYCURSOR;
2066: yych = *YYCURSOR;
2067: goto yy170;
2068: yy160:
2069: YYDEBUG(160, *YYCURSOR);
2070: yyleng = YYCURSOR - SCNG(yy_text);
2071: #line 454 "Zend/zend_ini_scanner.l"
2072: { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
2073: RETURN_TOKEN(TC_RAW, yytext, yyleng);
2074: }
2075: #line 2076 "Zend/zend_ini_scanner.c"
2076: yy161:
2077: YYDEBUG(161, *YYCURSOR);
2078: ++YYCURSOR;
2079: YYDEBUG(162, *YYCURSOR);
2080: yyleng = YYCURSOR - SCNG(yy_text);
2081: #line 572 "Zend/zend_ini_scanner.l"
2082: {
2083: return 0;
2084: }
2085: #line 2086 "Zend/zend_ini_scanner.c"
2086: yy163:
2087: YYDEBUG(163, *YYCURSOR);
2088: ++YYCURSOR;
2089: yych = *YYCURSOR;
2090: goto yy166;
2091: yy164:
2092: YYDEBUG(164, *YYCURSOR);
2093: yyleng = YYCURSOR - SCNG(yy_text);
2094: #line 374 "Zend/zend_ini_scanner.l"
2095: { /* End of section */
2096: BEGIN(INITIAL);
2097: SCNG(lineno)++;
2098: return ']';
2099: }
2100: #line 2101 "Zend/zend_ini_scanner.c"
2101: yy165:
2102: YYDEBUG(165, *YYCURSOR);
2103: ++YYCURSOR;
2104: YYFILL(2);
2105: yych = *YYCURSOR;
2106: yy166:
2107: YYDEBUG(166, *YYCURSOR);
2108: if (yybm[0+yych] & 64) {
2109: goto yy165;
2110: }
2111: if (yych == '\n') goto yy167;
2112: if (yych == '\r') goto yy168;
2113: goto yy164;
2114: yy167:
2115: YYDEBUG(167, *YYCURSOR);
2116: yych = *++YYCURSOR;
2117: goto yy164;
2118: yy168:
2119: YYDEBUG(168, *YYCURSOR);
2120: yych = *++YYCURSOR;
2121: if (yych == '\n') goto yy167;
2122: goto yy164;
2123: yy169:
2124: YYDEBUG(169, *YYCURSOR);
2125: ++YYCURSOR;
2126: YYFILL(1);
2127: yych = *YYCURSOR;
2128: yy170:
2129: YYDEBUG(170, *YYCURSOR);
2130: if (yybm[0+yych] & 128) {
2131: goto yy169;
2132: }
2133: goto yy160;
2134: }
2135: /* *********************************** */
2136: yyc_ST_SECTION_VALUE:
2137: {
2138: static const unsigned char yybm[] = {
2139: 132, 132, 132, 132, 132, 132, 132, 132,
2140: 132, 134, 128, 132, 132, 128, 132, 132,
2141: 132, 132, 132, 132, 132, 132, 132, 132,
2142: 132, 132, 132, 132, 132, 132, 132, 132,
2143: 134, 132, 128, 132, 136, 132, 132, 0,
2144: 132, 132, 132, 132, 132, 132, 132, 132,
2145: 228, 228, 228, 228, 228, 228, 228, 228,
2146: 228, 228, 132, 128, 132, 132, 132, 132,
2147: 132, 164, 164, 164, 164, 164, 164, 164,
2148: 164, 164, 164, 164, 164, 164, 164, 164,
2149: 164, 164, 164, 164, 164, 164, 164, 164,
2150: 164, 164, 164, 132, 144, 128, 132, 164,
2151: 132, 164, 164, 164, 164, 164, 164, 164,
2152: 164, 164, 164, 164, 164, 164, 164, 164,
2153: 164, 164, 164, 164, 164, 164, 164, 164,
2154: 164, 164, 164, 132, 132, 132, 132, 132,
2155: 132, 132, 132, 132, 132, 132, 132, 132,
2156: 132, 132, 132, 132, 132, 132, 132, 132,
2157: 132, 132, 132, 132, 132, 132, 132, 132,
2158: 132, 132, 132, 132, 132, 132, 132, 132,
2159: 132, 132, 132, 132, 132, 132, 132, 132,
2160: 132, 132, 132, 132, 132, 132, 132, 132,
2161: 132, 132, 132, 132, 132, 132, 132, 132,
2162: 132, 132, 132, 132, 132, 132, 132, 132,
2163: 132, 132, 132, 132, 132, 132, 132, 132,
2164: 132, 132, 132, 132, 132, 132, 132, 132,
2165: 132, 132, 132, 132, 132, 132, 132, 132,
2166: 132, 132, 132, 132, 132, 132, 132, 132,
2167: 132, 132, 132, 132, 132, 132, 132, 132,
2168: 132, 132, 132, 132, 132, 132, 132, 132,
2169: 132, 132, 132, 132, 132, 132, 132, 132,
2170: 132, 132, 132, 132, 132, 132, 132, 132,
2171: };
2172: YYDEBUG(171, *YYCURSOR);
2173: YYFILL(3);
2174: yych = *YYCURSOR;
2175: if (yych <= '-') {
2176: if (yych <= ' ') {
2177: if (yych <= '\n') {
2178: if (yych <= 0x08) goto yy173;
2179: if (yych <= '\t') goto yy175;
2180: goto yy176;
2181: } else {
2182: if (yych == '\r') goto yy176;
2183: if (yych >= ' ') goto yy175;
2184: }
2185: } else {
2186: if (yych <= '$') {
2187: if (yych == '"') goto yy178;
2188: if (yych >= '$') goto yy180;
2189: } else {
2190: if (yych == '\'') goto yy181;
2191: if (yych >= '-') goto yy182;
2192: }
2193: }
2194: } else {
2195: if (yych <= 'Z') {
2196: if (yych <= '9') {
2197: if (yych <= '.') goto yy183;
2198: if (yych >= '0') goto yy184;
2199: } else {
2200: if (yych == ';') goto yy176;
2201: if (yych >= 'A') goto yy186;
2202: }
2203: } else {
2204: if (yych <= '^') {
2205: if (yych <= '[') goto yy173;
2206: if (yych <= '\\') goto yy188;
2207: if (yych <= ']') goto yy189;
2208: } else {
2209: if (yych == '`') goto yy173;
2210: if (yych <= 'z') goto yy186;
2211: }
2212: }
2213: }
2214: yy173:
2215: YYDEBUG(173, *YYCURSOR);
2216: yyaccept = 0;
2217: yych = *(YYMARKER = ++YYCURSOR);
2218: goto yy196;
2219: yy174:
2220: YYDEBUG(174, *YYCURSOR);
2221: yyleng = YYCURSOR - SCNG(yy_text);
2222: #line 490 "Zend/zend_ini_scanner.l"
2223: { /* Get rest as section/offset value */
2224: RETURN_TOKEN(TC_STRING, yytext, yyleng);
2225: }
2226: #line 2227 "Zend/zend_ini_scanner.c"
2227: yy175:
2228: YYDEBUG(175, *YYCURSOR);
2229: yyaccept = 0;
2230: yych = *(YYMARKER = ++YYCURSOR);
2231: if (yych <= 0x1F) {
2232: if (yych == '\t') goto yy222;
2233: goto yy196;
2234: } else {
2235: if (yych <= ' ') goto yy222;
2236: if (yych == '"') goto yy224;
2237: goto yy196;
2238: }
2239: yy176:
2240: YYDEBUG(176, *YYCURSOR);
2241: ++YYCURSOR;
2242: yy177:
2243: YYDEBUG(177, *YYCURSOR);
2244: yyleng = YYCURSOR - SCNG(yy_text);
2245: #line 572 "Zend/zend_ini_scanner.l"
2246: {
2247: return 0;
2248: }
2249: #line 2250 "Zend/zend_ini_scanner.c"
2250: yy178:
2251: YYDEBUG(178, *YYCURSOR);
2252: ++YYCURSOR;
2253: yy179:
2254: YYDEBUG(179, *YYCURSOR);
2255: yyleng = YYCURSOR - SCNG(yy_text);
2256: #line 494 "Zend/zend_ini_scanner.l"
2257: { /* Double quoted '"' string start */
2258: yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
2259: return '"';
2260: }
2261: #line 2262 "Zend/zend_ini_scanner.c"
2262: yy180:
2263: YYDEBUG(180, *YYCURSOR);
2264: yych = *++YYCURSOR;
2265: if (yych <= '\\') {
2266: if (yych <= 0x00) goto yy177;
2267: if (yych <= '[') goto yy195;
2268: goto yy200;
2269: } else {
2270: if (yych == '{') goto yy220;
2271: goto yy195;
2272: }
2273: yy181:
2274: YYDEBUG(181, *YYCURSOR);
2275: yyaccept = 1;
2276: yych = *(YYMARKER = ++YYCURSOR);
2277: if (yybm[0+yych] & 128) {
2278: goto yy216;
2279: }
2280: goto yy177;
2281: yy182:
2282: YYDEBUG(182, *YYCURSOR);
2283: yyaccept = 0;
2284: yych = *(YYMARKER = ++YYCURSOR);
2285: if (yych <= '/') goto yy196;
2286: if (yych <= '9') goto yy214;
2287: goto yy196;
2288: yy183:
2289: YYDEBUG(183, *YYCURSOR);
2290: yyaccept = 0;
2291: yych = *(YYMARKER = ++YYCURSOR);
2292: if (yych <= '/') goto yy196;
2293: if (yych <= '9') goto yy212;
2294: goto yy196;
2295: yy184:
2296: YYDEBUG(184, *YYCURSOR);
2297: yyaccept = 2;
2298: yych = *(YYMARKER = ++YYCURSOR);
2299: if (yych <= '\'') {
2300: if (yych <= '\r') {
2301: if (yych == '\n') goto yy185;
2302: if (yych <= '\f') goto yy196;
2303: } else {
2304: if (yych == '"') goto yy185;
2305: if (yych <= '&') goto yy196;
2306: }
2307: } else {
2308: if (yych <= '9') {
2309: if (yych == '.') goto yy208;
2310: if (yych <= '/') goto yy196;
2311: goto yy210;
2312: } else {
2313: if (yych <= ';') {
2314: if (yych <= ':') goto yy196;
2315: } else {
2316: if (yych != ']') goto yy196;
2317: }
2318: }
2319: }
2320: yy185:
2321: YYDEBUG(185, *YYCURSOR);
2322: yyleng = YYCURSOR - SCNG(yy_text);
2323: #line 468 "Zend/zend_ini_scanner.l"
2324: { /* Get number option value as string */
2325: RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
2326: }
2327: #line 2328 "Zend/zend_ini_scanner.c"
2328: yy186:
2329: YYDEBUG(186, *YYCURSOR);
2330: yyaccept = 3;
2331: yych = *(YYMARKER = ++YYCURSOR);
2332: if (yybm[0+yych] & 32) {
2333: goto yy206;
2334: }
2335: if (yych <= '"') {
2336: if (yych <= '\f') {
2337: if (yych != '\n') goto yy196;
2338: } else {
2339: if (yych <= '\r') goto yy187;
2340: if (yych <= '!') goto yy196;
2341: }
2342: } else {
2343: if (yych <= ':') {
2344: if (yych != '\'') goto yy196;
2345: } else {
2346: if (yych <= ';') goto yy187;
2347: if (yych != ']') goto yy196;
2348: }
2349: }
2350: yy187:
2351: YYDEBUG(187, *YYCURSOR);
2352: yyleng = YYCURSOR - SCNG(yy_text);
2353: #line 464 "Zend/zend_ini_scanner.l"
2354: { /* Get constant option value */
2355: RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
2356: }
2357: #line 2358 "Zend/zend_ini_scanner.c"
2358: yy188:
2359: YYDEBUG(188, *YYCURSOR);
2360: yych = *++YYCURSOR;
2361: goto yy195;
2362: yy189:
2363: YYDEBUG(189, *YYCURSOR);
2364: ++YYCURSOR;
2365: yych = *YYCURSOR;
2366: goto yy192;
2367: yy190:
2368: YYDEBUG(190, *YYCURSOR);
2369: yyleng = YYCURSOR - SCNG(yy_text);
2370: #line 374 "Zend/zend_ini_scanner.l"
2371: { /* End of section */
2372: BEGIN(INITIAL);
2373: SCNG(lineno)++;
2374: return ']';
2375: }
2376: #line 2377 "Zend/zend_ini_scanner.c"
2377: yy191:
2378: YYDEBUG(191, *YYCURSOR);
2379: ++YYCURSOR;
2380: YYFILL(2);
2381: yych = *YYCURSOR;
2382: yy192:
2383: YYDEBUG(192, *YYCURSOR);
2384: if (yybm[0+yych] & 2) {
2385: goto yy191;
2386: }
2387: if (yych == '\n') goto yy193;
2388: if (yych == '\r') goto yy194;
2389: goto yy190;
2390: yy193:
2391: YYDEBUG(193, *YYCURSOR);
2392: yych = *++YYCURSOR;
2393: goto yy190;
2394: yy194:
2395: YYDEBUG(194, *YYCURSOR);
2396: yych = *++YYCURSOR;
2397: if (yych == '\n') goto yy193;
2398: goto yy190;
2399: yy195:
2400: YYDEBUG(195, *YYCURSOR);
2401: yyaccept = 0;
2402: YYMARKER = ++YYCURSOR;
2403: YYFILL(1);
2404: yych = *YYCURSOR;
2405: yy196:
2406: YYDEBUG(196, *YYCURSOR);
2407: if (yybm[0+yych] & 4) {
2408: goto yy195;
2409: }
2410: if (yych == '$') goto yy198;
2411: if (yych != '\\') goto yy174;
2412: yy197:
2413: YYDEBUG(197, *YYCURSOR);
2414: ++YYCURSOR;
2415: YYFILL(1);
2416: yych = *YYCURSOR;
2417: goto yy195;
2418: yy198:
2419: YYDEBUG(198, *YYCURSOR);
2420: ++YYCURSOR;
2421: YYFILL(1);
2422: yych = *YYCURSOR;
2423: if (yych <= '\\') {
2424: if (yych <= 0x00) goto yy199;
2425: if (yych <= '[') goto yy195;
2426: goto yy200;
2427: } else {
2428: if (yych != '{') goto yy195;
2429: }
2430: yy199:
2431: YYDEBUG(199, *YYCURSOR);
2432: YYCURSOR = YYMARKER;
2433: if (yyaccept <= 1) {
2434: if (yyaccept <= 0) {
2435: goto yy174;
2436: } else {
2437: goto yy177;
2438: }
2439: } else {
2440: if (yyaccept <= 2) {
2441: goto yy185;
2442: } else {
2443: goto yy187;
2444: }
2445: }
2446: yy200:
2447: YYDEBUG(200, *YYCURSOR);
2448: ++YYCURSOR;
2449: YYFILL(1);
2450: yych = *YYCURSOR;
2451: if (yybm[0+yych] & 8) {
2452: goto yy201;
2453: }
2454: if (yych == '\\') goto yy203;
2455: goto yy195;
2456: yy201:
2457: YYDEBUG(201, *YYCURSOR);
2458: ++YYCURSOR;
2459: YYFILL(1);
2460: yych = *YYCURSOR;
2461: YYDEBUG(202, *YYCURSOR);
2462: if (yybm[0+yych] & 8) {
2463: goto yy201;
2464: }
2465: if (yych == '\\') goto yy205;
2466: goto yy195;
2467: yy203:
2468: YYDEBUG(203, *YYCURSOR);
2469: ++YYCURSOR;
2470: YYFILL(1);
2471: yych = *YYCURSOR;
2472: YYDEBUG(204, *YYCURSOR);
2473: if (yybm[0+yych] & 8) {
2474: goto yy201;
2475: }
2476: if (yych == '\\') goto yy203;
2477: goto yy195;
2478: yy205:
2479: YYDEBUG(205, *YYCURSOR);
2480: ++YYCURSOR;
2481: YYFILL(1);
2482: yych = *YYCURSOR;
2483: if (yybm[0+yych] & 8) {
2484: goto yy201;
2485: }
2486: if (yych == '\\') goto yy203;
2487: goto yy195;
2488: yy206:
2489: YYDEBUG(206, *YYCURSOR);
2490: yyaccept = 3;
2491: YYMARKER = ++YYCURSOR;
2492: YYFILL(1);
2493: yych = *YYCURSOR;
2494: YYDEBUG(207, *YYCURSOR);
2495: if (yybm[0+yych] & 32) {
2496: goto yy206;
2497: }
2498: if (yych <= '$') {
2499: if (yych <= '\r') {
2500: if (yych == '\n') goto yy187;
2501: if (yych <= '\f') goto yy195;
2502: goto yy187;
2503: } else {
2504: if (yych == '"') goto yy187;
2505: if (yych <= '#') goto yy195;
2506: goto yy198;
2507: }
2508: } else {
2509: if (yych <= ';') {
2510: if (yych == '\'') goto yy187;
2511: if (yych <= ':') goto yy195;
2512: goto yy187;
2513: } else {
2514: if (yych <= '[') goto yy195;
2515: if (yych <= '\\') goto yy197;
2516: if (yych <= ']') goto yy187;
2517: goto yy195;
2518: }
2519: }
2520: yy208:
2521: YYDEBUG(208, *YYCURSOR);
2522: yyaccept = 2;
2523: YYMARKER = ++YYCURSOR;
2524: YYFILL(1);
2525: yych = *YYCURSOR;
2526: YYDEBUG(209, *YYCURSOR);
2527: if (yybm[0+yych] & 64) {
2528: goto yy208;
2529: }
2530: if (yych <= '$') {
2531: if (yych <= '\r') {
2532: if (yych == '\n') goto yy185;
2533: if (yych <= '\f') goto yy195;
2534: goto yy185;
2535: } else {
2536: if (yych == '"') goto yy185;
2537: if (yych <= '#') goto yy195;
2538: goto yy198;
2539: }
2540: } else {
2541: if (yych <= ';') {
2542: if (yych == '\'') goto yy185;
2543: if (yych <= ':') goto yy195;
2544: goto yy185;
2545: } else {
2546: if (yych <= '[') goto yy195;
2547: if (yych <= '\\') goto yy197;
2548: if (yych <= ']') goto yy185;
2549: goto yy195;
2550: }
2551: }
2552: yy210:
2553: YYDEBUG(210, *YYCURSOR);
2554: yyaccept = 2;
2555: YYMARKER = ++YYCURSOR;
2556: YYFILL(1);
2557: yych = *YYCURSOR;
2558: YYDEBUG(211, *YYCURSOR);
2559: if (yych <= '\'') {
2560: if (yych <= '!') {
2561: if (yych <= '\n') {
2562: if (yych <= '\t') goto yy195;
2563: goto yy185;
2564: } else {
2565: if (yych == '\r') goto yy185;
2566: goto yy195;
2567: }
2568: } else {
2569: if (yych <= '#') {
2570: if (yych <= '"') goto yy185;
2571: goto yy195;
2572: } else {
2573: if (yych <= '$') goto yy198;
2574: if (yych <= '&') goto yy195;
2575: goto yy185;
2576: }
2577: }
2578: } else {
2579: if (yych <= ':') {
2580: if (yych <= '.') {
2581: if (yych <= '-') goto yy195;
2582: goto yy208;
2583: } else {
2584: if (yych <= '/') goto yy195;
2585: if (yych <= '9') goto yy210;
2586: goto yy195;
2587: }
2588: } else {
2589: if (yych <= '[') {
2590: if (yych <= ';') goto yy185;
2591: goto yy195;
2592: } else {
2593: if (yych <= '\\') goto yy197;
2594: if (yych <= ']') goto yy185;
2595: goto yy195;
2596: }
2597: }
2598: }
2599: yy212:
2600: YYDEBUG(212, *YYCURSOR);
2601: yyaccept = 2;
2602: YYMARKER = ++YYCURSOR;
2603: YYFILL(1);
2604: yych = *YYCURSOR;
2605: YYDEBUG(213, *YYCURSOR);
2606: if (yych <= '&') {
2607: if (yych <= '\r') {
2608: if (yych == '\n') goto yy185;
2609: if (yych <= '\f') goto yy195;
2610: goto yy185;
2611: } else {
2612: if (yych <= '"') {
2613: if (yych <= '!') goto yy195;
2614: goto yy185;
2615: } else {
2616: if (yych == '$') goto yy198;
2617: goto yy195;
2618: }
2619: }
2620: } else {
2621: if (yych <= ':') {
2622: if (yych <= '\'') goto yy185;
2623: if (yych <= '/') goto yy195;
2624: if (yych <= '9') goto yy212;
2625: goto yy195;
2626: } else {
2627: if (yych <= '[') {
2628: if (yych <= ';') goto yy185;
2629: goto yy195;
2630: } else {
2631: if (yych <= '\\') goto yy197;
2632: if (yych <= ']') goto yy185;
2633: goto yy195;
2634: }
2635: }
2636: }
2637: yy214:
2638: YYDEBUG(214, *YYCURSOR);
2639: yyaccept = 2;
2640: YYMARKER = ++YYCURSOR;
2641: YYFILL(1);
2642: yych = *YYCURSOR;
2643: YYDEBUG(215, *YYCURSOR);
2644: if (yych <= '&') {
2645: if (yych <= '\r') {
2646: if (yych == '\n') goto yy185;
2647: if (yych <= '\f') goto yy195;
2648: goto yy185;
2649: } else {
2650: if (yych <= '"') {
2651: if (yych <= '!') goto yy195;
2652: goto yy185;
2653: } else {
2654: if (yych == '$') goto yy198;
2655: goto yy195;
2656: }
2657: }
2658: } else {
2659: if (yych <= ':') {
2660: if (yych <= '\'') goto yy185;
2661: if (yych <= '/') goto yy195;
2662: if (yych <= '9') goto yy214;
2663: goto yy195;
2664: } else {
2665: if (yych <= '[') {
2666: if (yych <= ';') goto yy185;
2667: goto yy195;
2668: } else {
2669: if (yych <= '\\') goto yy197;
2670: if (yych <= ']') goto yy185;
2671: goto yy195;
2672: }
2673: }
2674: }
2675: yy216:
2676: YYDEBUG(216, *YYCURSOR);
2677: ++YYCURSOR;
2678: YYFILL(1);
2679: yych = *YYCURSOR;
2680: YYDEBUG(217, *YYCURSOR);
2681: if (yybm[0+yych] & 128) {
2682: goto yy216;
2683: }
2684: YYDEBUG(218, *YYCURSOR);
2685: ++YYCURSOR;
2686: YYDEBUG(219, *YYCURSOR);
2687: yyleng = YYCURSOR - SCNG(yy_text);
2688: #line 365 "Zend/zend_ini_scanner.l"
2689: { /* Raw string */
2690: /* Eat leading and trailing single quotes */
2691: if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
2692: SCNG(yy_text)++;
2693: yyleng = yyleng - 2;
2694: }
2695: RETURN_TOKEN(TC_RAW, yytext, yyleng);
2696: }
2697: #line 2698 "Zend/zend_ini_scanner.c"
2698: yy220:
2699: YYDEBUG(220, *YYCURSOR);
2700: ++YYCURSOR;
2701: YYDEBUG(221, *YYCURSOR);
2702: yyleng = YYCURSOR - SCNG(yy_text);
2703: #line 398 "Zend/zend_ini_scanner.l"
2704: { /* Variable start */
2705: yy_push_state(ST_VARNAME TSRMLS_CC);
2706: return TC_DOLLAR_CURLY;
2707: }
2708: #line 2709 "Zend/zend_ini_scanner.c"
2709: yy222:
2710: YYDEBUG(222, *YYCURSOR);
2711: yyaccept = 0;
2712: YYMARKER = ++YYCURSOR;
2713: YYFILL(1);
2714: yych = *YYCURSOR;
2715: YYDEBUG(223, *YYCURSOR);
2716: if (yych <= '"') {
2717: if (yych <= '\f') {
2718: if (yych <= 0x08) goto yy195;
2719: if (yych <= '\t') goto yy222;
2720: if (yych <= '\n') goto yy174;
2721: goto yy195;
2722: } else {
2723: if (yych <= 0x1F) {
2724: if (yych <= '\r') goto yy174;
2725: goto yy195;
2726: } else {
2727: if (yych <= ' ') goto yy222;
2728: if (yych <= '!') goto yy195;
2729: }
2730: }
2731: } else {
2732: if (yych <= ':') {
2733: if (yych <= '$') {
2734: if (yych <= '#') goto yy195;
2735: goto yy198;
2736: } else {
2737: if (yych == '\'') goto yy174;
2738: goto yy195;
2739: }
2740: } else {
2741: if (yych <= '[') {
2742: if (yych <= ';') goto yy174;
2743: goto yy195;
2744: } else {
2745: if (yych <= '\\') goto yy197;
2746: if (yych <= ']') goto yy174;
2747: goto yy195;
2748: }
2749: }
2750: }
2751: yy224:
2752: YYDEBUG(224, *YYCURSOR);
2753: ++YYCURSOR;
2754: yych = *YYCURSOR;
2755: goto yy179;
2756: }
2757: /* *********************************** */
2758: yyc_ST_VALUE:
2759: {
2760: static const unsigned char yybm[] = {
2761: 160, 162, 162, 162, 162, 162, 162, 162,
2762: 162, 176, 128, 162, 162, 128, 162, 162,
2763: 162, 162, 162, 162, 162, 162, 162, 162,
2764: 162, 162, 162, 162, 162, 162, 162, 162,
2765: 176, 160, 160, 162, 168, 162, 160, 32,
2766: 160, 160, 162, 162, 162, 162, 162, 162,
2767: 230, 230, 230, 230, 230, 230, 230, 230,
2768: 230, 230, 162, 160, 162, 160, 162, 162,
2769: 162, 166, 166, 166, 166, 166, 166, 166,
2770: 166, 166, 166, 166, 166, 166, 166, 166,
2771: 166, 166, 166, 166, 166, 166, 166, 166,
2772: 166, 166, 166, 162, 162, 162, 162, 166,
2773: 162, 166, 166, 166, 166, 166, 166, 166,
2774: 166, 166, 166, 166, 166, 166, 166, 166,
2775: 166, 166, 166, 166, 166, 166, 166, 166,
2776: 166, 166, 166, 162, 160, 162, 160, 162,
2777: 162, 162, 162, 162, 162, 162, 162, 162,
2778: 162, 162, 162, 162, 162, 162, 162, 162,
2779: 162, 162, 162, 162, 162, 162, 162, 162,
2780: 162, 162, 162, 162, 162, 162, 162, 162,
2781: 162, 162, 162, 162, 162, 162, 162, 162,
2782: 162, 162, 162, 162, 162, 162, 162, 162,
2783: 162, 162, 162, 162, 162, 162, 162, 162,
2784: 162, 162, 162, 162, 162, 162, 162, 162,
2785: 162, 162, 162, 162, 162, 162, 162, 162,
2786: 162, 162, 162, 162, 162, 162, 162, 162,
2787: 162, 162, 162, 162, 162, 162, 162, 162,
2788: 162, 162, 162, 162, 162, 162, 162, 162,
2789: 162, 162, 162, 162, 162, 162, 162, 162,
2790: 162, 162, 162, 162, 162, 162, 162, 162,
2791: 162, 162, 162, 162, 162, 162, 162, 162,
2792: 162, 162, 162, 162, 162, 162, 162, 162,
2793: };
2794: YYDEBUG(225, *YYCURSOR);
2795: YYFILL(6);
2796: yych = *YYCURSOR;
2797: YYDEBUG(-1, yych);
2798: switch (yych) {
2799: case 0x00: goto yy227;
2800: case '\t':
2801: case ' ': goto yy231;
2802: case '\n': goto yy233;
2803: case '\r': goto yy235;
2804: case '!':
2805: case '&':
2806: case '(':
2807: case ')':
2808: case '|':
2809: case '~': goto yy236;
2810: case '"': goto yy238;
2811: case '$': goto yy240;
2812: case '\'': goto yy241;
2813: case '-': goto yy242;
2814: case '.': goto yy243;
2815: case '0':
2816: case '1':
2817: case '2':
2818: case '3':
2819: case '4':
2820: case '5':
2821: case '6':
2822: case '7':
2823: case '8':
2824: case '9': goto yy244;
2825: case ';': goto yy246;
2826: case '=': goto yy247;
2827: case 'A':
2828: case 'B':
2829: case 'C':
2830: case 'D':
2831: case 'E':
2832: case 'G':
2833: case 'H':
2834: case 'I':
2835: case 'J':
2836: case 'K':
2837: case 'L':
2838: case 'M':
2839: case 'P':
2840: case 'Q':
2841: case 'R':
2842: case 'S':
2843: case 'U':
2844: case 'V':
2845: case 'W':
2846: case 'X':
2847: case 'Z':
2848: case '_':
2849: case 'a':
2850: case 'b':
2851: case 'c':
2852: case 'd':
2853: case 'e':
2854: case 'g':
2855: case 'h':
2856: case 'i':
2857: case 'j':
2858: case 'k':
2859: case 'l':
2860: case 'm':
2861: case 'p':
2862: case 'q':
2863: case 'r':
2864: case 's':
2865: case 'u':
2866: case 'v':
2867: case 'w':
2868: case 'x':
2869: case 'z': goto yy249;
2870: case 'F':
2871: case 'f': goto yy251;
2872: case 'N':
2873: case 'n': goto yy252;
2874: case 'O':
2875: case 'o': goto yy253;
2876: case 'T':
2877: case 't': goto yy254;
2878: case 'Y':
2879: case 'y': goto yy255;
2880: default: goto yy229;
2881: }
2882: yy227:
2883: YYDEBUG(227, *YYCURSOR);
2884: ++YYCURSOR;
2885: yy228:
2886: YYDEBUG(228, *YYCURSOR);
2887: yyleng = YYCURSOR - SCNG(yy_text);
2888: #line 567 "Zend/zend_ini_scanner.l"
2889: { /* End of option value (if EOF is reached before EOL */
2890: BEGIN(INITIAL);
2891: return END_OF_LINE;
2892: }
2893: #line 2894 "Zend/zend_ini_scanner.c"
2894: yy229:
2895: YYDEBUG(229, *YYCURSOR);
2896: yyaccept = 0;
2897: yych = *(YYMARKER = ++YYCURSOR);
2898: goto yy257;
2899: yy230:
2900: YYDEBUG(230, *YYCURSOR);
2901: yyleng = YYCURSOR - SCNG(yy_text);
2902: #line 486 "Zend/zend_ini_scanner.l"
2903: { /* Get everything else as option/offset value */
2904: RETURN_TOKEN(TC_STRING, yytext, yyleng);
2905: }
2906: #line 2907 "Zend/zend_ini_scanner.c"
2907: yy231:
2908: YYDEBUG(231, *YYCURSOR);
2909: yyaccept = 1;
2910: yych = *(YYMARKER = ++YYCURSOR);
2911: goto yy307;
2912: yy232:
2913: YYDEBUG(232, *YYCURSOR);
2914: yyleng = YYCURSOR - SCNG(yy_text);
2915: #line 540 "Zend/zend_ini_scanner.l"
2916: {
2917: RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
2918: }
2919: #line 2920 "Zend/zend_ini_scanner.c"
2920: yy233:
2921: YYDEBUG(233, *YYCURSOR);
2922: ++YYCURSOR;
2923: yy234:
2924: YYDEBUG(234, *YYCURSOR);
2925: yyleng = YYCURSOR - SCNG(yy_text);
2926: #line 458 "Zend/zend_ini_scanner.l"
2927: { /* End of option value */
2928: BEGIN(INITIAL);
2929: SCNG(lineno)++;
2930: return END_OF_LINE;
2931: }
2932: #line 2933 "Zend/zend_ini_scanner.c"
2933: yy235:
2934: YYDEBUG(235, *YYCURSOR);
2935: yych = *++YYCURSOR;
2936: if (yych == '\n') goto yy305;
2937: goto yy234;
2938: yy236:
2939: YYDEBUG(236, *YYCURSOR);
2940: ++YYCURSOR;
2941: yych = *YYCURSOR;
2942: goto yy304;
2943: yy237:
2944: YYDEBUG(237, *YYCURSOR);
2945: yyleng = YYCURSOR - SCNG(yy_text);
2946: #line 476 "Zend/zend_ini_scanner.l"
2947: { /* Boolean operators */
2948: return yytext[0];
2949: }
2950: #line 2951 "Zend/zend_ini_scanner.c"
2951: yy238:
2952: YYDEBUG(238, *YYCURSOR);
2953: ++YYCURSOR;
2954: yy239:
2955: YYDEBUG(239, *YYCURSOR);
2956: yyleng = YYCURSOR - SCNG(yy_text);
2957: #line 494 "Zend/zend_ini_scanner.l"
2958: { /* Double quoted '"' string start */
2959: yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
2960: return '"';
2961: }
2962: #line 2963 "Zend/zend_ini_scanner.c"
2963: yy240:
2964: YYDEBUG(240, *YYCURSOR);
2965: yych = *++YYCURSOR;
2966: if (yych <= '\\') {
2967: if (yych <= 0x00) goto yy228;
2968: if (yych <= '[') goto yy256;
2969: goto yy263;
2970: } else {
2971: if (yych == '{') goto yy301;
2972: goto yy256;
2973: }
2974: yy241:
2975: YYDEBUG(241, *YYCURSOR);
2976: yyaccept = 2;
2977: yych = *(YYMARKER = ++YYCURSOR);
2978: if (yybm[0+yych] & 128) {
2979: goto yy297;
2980: }
2981: goto yy228;
2982: yy242:
2983: YYDEBUG(242, *YYCURSOR);
2984: yyaccept = 0;
2985: yych = *(YYMARKER = ++YYCURSOR);
2986: if (yych <= '/') goto yy257;
2987: if (yych <= '9') goto yy295;
2988: goto yy257;
2989: yy243:
2990: YYDEBUG(243, *YYCURSOR);
2991: yyaccept = 0;
2992: yych = *(YYMARKER = ++YYCURSOR);
2993: if (yych <= '/') goto yy257;
2994: if (yych <= '9') goto yy293;
2995: goto yy257;
2996: yy244:
2997: YYDEBUG(244, *YYCURSOR);
2998: yyaccept = 3;
2999: yych = *(YYMARKER = ++YYCURSOR);
3000: if (yych <= '.') {
3001: if (yych <= '\r') {
3002: if (yych <= 0x08) {
3003: if (yych >= 0x01) goto yy257;
3004: } else {
3005: if (yych <= '\n') goto yy245;
3006: if (yych <= '\f') goto yy257;
3007: }
3008: } else {
3009: if (yych <= '%') {
3010: if (yych <= 0x1F) goto yy257;
3011: if (yych >= '#') goto yy257;
3012: } else {
3013: if (yych <= ')') goto yy245;
3014: if (yych <= '-') goto yy257;
3015: goto yy289;
3016: }
3017: }
3018: } else {
3019: if (yych <= '<') {
3020: if (yych <= '9') {
3021: if (yych <= '/') goto yy257;
3022: goto yy291;
3023: } else {
3024: if (yych != ';') goto yy257;
3025: }
3026: } else {
3027: if (yych <= '|') {
3028: if (yych <= '=') goto yy245;
3029: if (yych <= '{') goto yy257;
3030: } else {
3031: if (yych != '~') goto yy257;
3032: }
3033: }
3034: }
3035: yy245:
3036: YYDEBUG(245, *YYCURSOR);
3037: yyleng = YYCURSOR - SCNG(yy_text);
3038: #line 468 "Zend/zend_ini_scanner.l"
3039: { /* Get number option value as string */
3040: RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
3041: }
3042: #line 3043 "Zend/zend_ini_scanner.c"
3043: yy246:
3044: YYDEBUG(246, *YYCURSOR);
3045: yyaccept = 2;
3046: yych = *(YYMARKER = ++YYCURSOR);
3047: goto yy285;
3048: yy247:
3049: YYDEBUG(247, *YYCURSOR);
3050: ++YYCURSOR;
3051: YYDEBUG(248, *YYCURSOR);
3052: yyleng = YYCURSOR - SCNG(yy_text);
3053: #line 480 "Zend/zend_ini_scanner.l"
3054: { /* Make = used in option value to trigger error */
3055: yyless(0);
3056: BEGIN(INITIAL);
3057: return END_OF_LINE;
3058: }
3059: #line 3060 "Zend/zend_ini_scanner.c"
3060: yy249:
3061: YYDEBUG(249, *YYCURSOR);
3062: yyaccept = 4;
3063: yych = *(YYMARKER = ++YYCURSOR);
3064: if (yybm[0+yych] & 4) {
3065: goto yy258;
3066: }
3067: if (yych <= ')') {
3068: if (yych <= '\f') {
3069: if (yych <= 0x00) goto yy250;
3070: if (yych <= 0x08) goto yy257;
3071: if (yych >= '\v') goto yy257;
3072: } else {
3073: if (yych <= 0x1F) {
3074: if (yych >= 0x0E) goto yy257;
3075: } else {
3076: if (yych <= '"') goto yy250;
3077: if (yych <= '%') goto yy257;
3078: }
3079: }
3080: } else {
3081: if (yych <= '=') {
3082: if (yych == ';') goto yy250;
3083: if (yych <= '<') goto yy257;
3084: } else {
3085: if (yych <= '|') {
3086: if (yych <= '{') goto yy257;
3087: } else {
3088: if (yych != '~') goto yy257;
3089: }
3090: }
3091: }
3092: yy250:
3093: YYDEBUG(250, *YYCURSOR);
3094: yyleng = YYCURSOR - SCNG(yy_text);
3095: #line 464 "Zend/zend_ini_scanner.l"
3096: { /* Get constant option value */
3097: RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
3098: }
3099: #line 3100 "Zend/zend_ini_scanner.c"
3100: yy251:
3101: YYDEBUG(251, *YYCURSOR);
3102: yyaccept = 4;
3103: yych = *(YYMARKER = ++YYCURSOR);
3104: if (yych <= '<') {
3105: if (yych <= '"') {
3106: if (yych <= '\n') {
3107: if (yych <= 0x00) goto yy250;
3108: if (yych <= 0x08) goto yy257;
3109: goto yy250;
3110: } else {
3111: if (yych == '\r') goto yy250;
3112: if (yych <= 0x1F) goto yy257;
3113: goto yy250;
3114: }
3115: } else {
3116: if (yych <= '/') {
3117: if (yych <= '%') goto yy257;
3118: if (yych <= ')') goto yy250;
3119: goto yy257;
3120: } else {
3121: if (yych <= '9') goto yy258;
3122: if (yych == ';') goto yy250;
3123: goto yy257;
3124: }
3125: }
3126: } else {
3127: if (yych <= '`') {
3128: if (yych <= 'A') {
3129: if (yych <= '=') goto yy250;
3130: if (yych <= '@') goto yy257;
3131: goto yy281;
3132: } else {
3133: if (yych <= 'Z') goto yy258;
3134: if (yych == '_') goto yy258;
3135: goto yy257;
3136: }
3137: } else {
3138: if (yych <= '{') {
3139: if (yych <= 'a') goto yy281;
3140: if (yych <= 'z') goto yy258;
3141: goto yy257;
3142: } else {
3143: if (yych == '}') goto yy257;
3144: if (yych <= '~') goto yy250;
3145: goto yy257;
3146: }
3147: }
3148: }
3149: yy252:
3150: YYDEBUG(252, *YYCURSOR);
3151: yyaccept = 4;
3152: yych = *(YYMARKER = ++YYCURSOR);
3153: if (yych <= 'N') {
3154: if (yych <= '%') {
3155: if (yych <= '\f') {
3156: if (yych <= 0x00) goto yy250;
3157: if (yych <= 0x08) goto yy257;
3158: if (yych <= '\n') goto yy250;
3159: goto yy257;
3160: } else {
3161: if (yych <= '\r') goto yy250;
3162: if (yych <= 0x1F) goto yy257;
3163: if (yych <= '"') goto yy250;
3164: goto yy257;
3165: }
3166: } else {
3167: if (yych <= ':') {
3168: if (yych <= ')') goto yy250;
3169: if (yych <= '/') goto yy257;
3170: if (yych <= '9') goto yy258;
3171: goto yy257;
3172: } else {
3173: if (yych <= '<') {
3174: if (yych <= ';') goto yy250;
3175: goto yy257;
3176: } else {
3177: if (yych <= '=') goto yy250;
3178: if (yych <= '@') goto yy257;
3179: goto yy258;
3180: }
3181: }
3182: }
3183: } else {
3184: if (yych <= 'n') {
3185: if (yych <= 'Z') {
3186: if (yych <= 'O') goto yy277;
3187: if (yych == 'U') goto yy278;
3188: goto yy258;
3189: } else {
3190: if (yych == '_') goto yy258;
3191: if (yych <= '`') goto yy257;
3192: goto yy258;
3193: }
3194: } else {
3195: if (yych <= 'z') {
3196: if (yych <= 'o') goto yy277;
3197: if (yych == 'u') goto yy278;
3198: goto yy258;
3199: } else {
3200: if (yych <= '|') {
3201: if (yych <= '{') goto yy257;
3202: goto yy250;
3203: } else {
3204: if (yych == '~') goto yy250;
3205: goto yy257;
3206: }
3207: }
3208: }
3209: }
3210: yy253:
3211: YYDEBUG(253, *YYCURSOR);
3212: yyaccept = 4;
3213: yych = *(YYMARKER = ++YYCURSOR);
3214: if (yych <= 'E') {
3215: if (yych <= '%') {
3216: if (yych <= '\f') {
3217: if (yych <= 0x00) goto yy250;
3218: if (yych <= 0x08) goto yy257;
3219: if (yych <= '\n') goto yy250;
3220: goto yy257;
3221: } else {
3222: if (yych <= '\r') goto yy250;
3223: if (yych <= 0x1F) goto yy257;
3224: if (yych <= '"') goto yy250;
3225: goto yy257;
3226: }
3227: } else {
3228: if (yych <= ':') {
3229: if (yych <= ')') goto yy250;
3230: if (yych <= '/') goto yy257;
3231: if (yych <= '9') goto yy258;
3232: goto yy257;
3233: } else {
3234: if (yych <= '<') {
3235: if (yych <= ';') goto yy250;
3236: goto yy257;
3237: } else {
3238: if (yych <= '=') goto yy250;
3239: if (yych <= '@') goto yy257;
3240: goto yy258;
3241: }
3242: }
3243: }
3244: } else {
3245: if (yych <= 'e') {
3246: if (yych <= 'Z') {
3247: if (yych <= 'F') goto yy272;
3248: if (yych == 'N') goto yy266;
3249: goto yy258;
3250: } else {
3251: if (yych == '_') goto yy258;
3252: if (yych <= '`') goto yy257;
3253: goto yy258;
3254: }
3255: } else {
3256: if (yych <= 'z') {
3257: if (yych <= 'f') goto yy272;
3258: if (yych == 'n') goto yy266;
3259: goto yy258;
3260: } else {
3261: if (yych <= '|') {
3262: if (yych <= '{') goto yy257;
3263: goto yy250;
3264: } else {
3265: if (yych == '~') goto yy250;
3266: goto yy257;
3267: }
3268: }
3269: }
3270: }
3271: yy254:
3272: YYDEBUG(254, *YYCURSOR);
3273: yyaccept = 4;
3274: yych = *(YYMARKER = ++YYCURSOR);
3275: if (yych <= '=') {
3276: if (yych <= '"') {
3277: if (yych <= '\n') {
3278: if (yych <= 0x00) goto yy250;
3279: if (yych <= 0x08) goto yy257;
3280: goto yy250;
3281: } else {
3282: if (yych == '\r') goto yy250;
3283: if (yych <= 0x1F) goto yy257;
3284: goto yy250;
3285: }
3286: } else {
3287: if (yych <= '9') {
3288: if (yych <= '%') goto yy257;
3289: if (yych <= ')') goto yy250;
3290: if (yych <= '/') goto yy257;
3291: goto yy258;
3292: } else {
3293: if (yych == ';') goto yy250;
3294: if (yych <= '<') goto yy257;
3295: goto yy250;
3296: }
3297: }
3298: } else {
3299: if (yych <= '`') {
3300: if (yych <= 'R') {
3301: if (yych <= '@') goto yy257;
3302: if (yych <= 'Q') goto yy258;
3303: goto yy270;
3304: } else {
3305: if (yych <= 'Z') goto yy258;
3306: if (yych == '_') goto yy258;
3307: goto yy257;
3308: }
3309: } else {
3310: if (yych <= '{') {
3311: if (yych == 'r') goto yy270;
3312: if (yych <= 'z') goto yy258;
3313: goto yy257;
3314: } else {
3315: if (yych == '}') goto yy257;
3316: if (yych <= '~') goto yy250;
3317: goto yy257;
3318: }
3319: }
3320: }
3321: yy255:
3322: YYDEBUG(255, *YYCURSOR);
3323: yyaccept = 4;
3324: yych = *(YYMARKER = ++YYCURSOR);
3325: if (yych <= '=') {
3326: if (yych <= '"') {
3327: if (yych <= '\n') {
3328: if (yych <= 0x00) goto yy250;
3329: if (yych <= 0x08) goto yy257;
3330: goto yy250;
3331: } else {
3332: if (yych == '\r') goto yy250;
3333: if (yych <= 0x1F) goto yy257;
3334: goto yy250;
3335: }
3336: } else {
3337: if (yych <= '9') {
3338: if (yych <= '%') goto yy257;
3339: if (yych <= ')') goto yy250;
3340: if (yych <= '/') goto yy257;
3341: goto yy258;
3342: } else {
3343: if (yych == ';') goto yy250;
3344: if (yych <= '<') goto yy257;
3345: goto yy250;
3346: }
3347: }
3348: } else {
3349: if (yych <= '`') {
3350: if (yych <= 'E') {
3351: if (yych <= '@') goto yy257;
3352: if (yych <= 'D') goto yy258;
3353: goto yy260;
3354: } else {
3355: if (yych <= 'Z') goto yy258;
3356: if (yych == '_') goto yy258;
3357: goto yy257;
3358: }
3359: } else {
3360: if (yych <= '{') {
3361: if (yych == 'e') goto yy260;
3362: if (yych <= 'z') goto yy258;
3363: goto yy257;
3364: } else {
3365: if (yych == '}') goto yy257;
3366: if (yych <= '~') goto yy250;
3367: goto yy257;
3368: }
3369: }
3370: }
3371: yy256:
3372: YYDEBUG(256, *YYCURSOR);
3373: yyaccept = 0;
3374: YYMARKER = ++YYCURSOR;
3375: YYFILL(1);
3376: yych = *YYCURSOR;
3377: yy257:
3378: YYDEBUG(257, *YYCURSOR);
3379: if (yybm[0+yych] & 2) {
3380: goto yy256;
3381: }
3382: if (yych == '$') goto yy261;
3383: goto yy230;
3384: yy258:
3385: YYDEBUG(258, *YYCURSOR);
3386: yyaccept = 4;
3387: YYMARKER = ++YYCURSOR;
3388: YYFILL(1);
3389: yych = *YYCURSOR;
3390: YYDEBUG(259, *YYCURSOR);
3391: if (yybm[0+yych] & 4) {
3392: goto yy258;
3393: }
3394: if (yych <= '%') {
3395: if (yych <= '\r') {
3396: if (yych <= 0x08) {
3397: if (yych <= 0x00) goto yy250;
3398: goto yy256;
3399: } else {
3400: if (yych <= '\n') goto yy250;
3401: if (yych <= '\f') goto yy256;
3402: goto yy250;
3403: }
3404: } else {
3405: if (yych <= '"') {
3406: if (yych <= 0x1F) goto yy256;
3407: goto yy250;
3408: } else {
3409: if (yych == '$') goto yy261;
3410: goto yy256;
3411: }
3412: }
3413: } else {
3414: if (yych <= '=') {
3415: if (yych <= ':') {
3416: if (yych <= ')') goto yy250;
3417: goto yy256;
3418: } else {
3419: if (yych == '<') goto yy256;
3420: goto yy250;
3421: }
3422: } else {
3423: if (yych <= '|') {
3424: if (yych <= '{') goto yy256;
3425: goto yy250;
3426: } else {
3427: if (yych == '~') goto yy250;
3428: goto yy256;
3429: }
3430: }
3431: }
3432: yy260:
3433: YYDEBUG(260, *YYCURSOR);
3434: yyaccept = 4;
3435: yych = *(YYMARKER = ++YYCURSOR);
3436: if (yych <= '=') {
3437: if (yych <= '"') {
3438: if (yych <= '\n') {
3439: if (yych <= 0x00) goto yy250;
3440: if (yych <= 0x08) goto yy257;
3441: goto yy250;
3442: } else {
3443: if (yych == '\r') goto yy250;
3444: if (yych <= 0x1F) goto yy257;
3445: goto yy250;
3446: }
3447: } else {
3448: if (yych <= '9') {
3449: if (yych <= '%') goto yy257;
3450: if (yych <= ')') goto yy250;
3451: if (yych <= '/') goto yy257;
3452: goto yy258;
3453: } else {
3454: if (yych == ';') goto yy250;
3455: if (yych <= '<') goto yy257;
3456: goto yy250;
3457: }
3458: }
3459: } else {
3460: if (yych <= '`') {
3461: if (yych <= 'S') {
3462: if (yych <= '@') goto yy257;
3463: if (yych <= 'R') goto yy258;
3464: goto yy266;
3465: } else {
3466: if (yych <= 'Z') goto yy258;
3467: if (yych == '_') goto yy258;
3468: goto yy257;
3469: }
3470: } else {
3471: if (yych <= '{') {
3472: if (yych == 's') goto yy266;
3473: if (yych <= 'z') goto yy258;
3474: goto yy257;
3475: } else {
3476: if (yych == '}') goto yy257;
3477: if (yych <= '~') goto yy250;
3478: goto yy257;
3479: }
3480: }
3481: }
3482: yy261:
3483: YYDEBUG(261, *YYCURSOR);
3484: ++YYCURSOR;
3485: YYFILL(1);
3486: yych = *YYCURSOR;
3487: if (yych <= '\\') {
3488: if (yych <= 0x00) goto yy262;
3489: if (yych <= '[') goto yy256;
3490: goto yy263;
3491: } else {
3492: if (yych != '{') goto yy256;
3493: }
3494: yy262:
3495: YYDEBUG(262, *YYCURSOR);
3496: YYCURSOR = YYMARKER;
3497: if (yyaccept <= 3) {
3498: if (yyaccept <= 1) {
3499: if (yyaccept <= 0) {
3500: goto yy230;
3501: } else {
3502: goto yy232;
3503: }
3504: } else {
3505: if (yyaccept <= 2) {
3506: goto yy228;
3507: } else {
3508: goto yy245;
3509: }
3510: }
3511: } else {
3512: if (yyaccept <= 5) {
3513: if (yyaccept <= 4) {
3514: goto yy250;
3515: } else {
3516: goto yy267;
3517: }
3518: } else {
3519: goto yy274;
3520: }
3521: }
3522: yy263:
3523: YYDEBUG(263, *YYCURSOR);
3524: ++YYCURSOR;
3525: YYFILL(1);
3526: yych = *YYCURSOR;
3527: if (yybm[0+yych] & 8) {
3528: goto yy264;
3529: }
3530: goto yy256;
3531: yy264:
3532: YYDEBUG(264, *YYCURSOR);
3533: ++YYCURSOR;
3534: YYFILL(1);
3535: yych = *YYCURSOR;
3536: YYDEBUG(265, *YYCURSOR);
3537: if (yybm[0+yych] & 8) {
3538: goto yy264;
3539: }
3540: if (yych <= 0x00) goto yy230;
3541: if (yych == '\\') goto yy263;
3542: goto yy256;
3543: yy266:
3544: YYDEBUG(266, *YYCURSOR);
3545: yyaccept = 5;
3546: yych = *(YYMARKER = ++YYCURSOR);
3547: if (yybm[0+yych] & 16) {
3548: goto yy268;
3549: }
3550: if (yych <= ';') {
3551: if (yych <= ' ') {
3552: if (yych <= '\n') {
3553: if (yych <= 0x00) goto yy267;
3554: if (yych <= '\t') goto yy257;
3555: } else {
3556: if (yych != '\r') goto yy257;
3557: }
3558: } else {
3559: if (yych <= ')') {
3560: if (yych <= '"') goto yy267;
3561: if (yych <= '%') goto yy257;
3562: } else {
3563: if (yych <= '/') goto yy257;
3564: if (yych <= '9') goto yy258;
3565: if (yych <= ':') goto yy257;
3566: }
3567: }
3568: } else {
3569: if (yych <= '_') {
3570: if (yych <= '@') {
3571: if (yych != '=') goto yy257;
3572: } else {
3573: if (yych <= 'Z') goto yy258;
3574: if (yych <= '^') goto yy257;
3575: goto yy258;
3576: }
3577: } else {
3578: if (yych <= '{') {
3579: if (yych <= '`') goto yy257;
3580: if (yych <= 'z') goto yy258;
3581: goto yy257;
3582: } else {
3583: if (yych == '}') goto yy257;
3584: if (yych >= 0x7F) goto yy257;
3585: }
3586: }
3587: }
3588: yy267:
3589: YYDEBUG(267, *YYCURSOR);
3590: yyleng = YYCURSOR - SCNG(yy_text);
3591: #line 418 "Zend/zend_ini_scanner.l"
3592: { /* TRUE value (when used outside option value/offset this causes parse error!) */
3593: RETURN_TOKEN(BOOL_TRUE, "1", 1);
3594: }
3595: #line 3596 "Zend/zend_ini_scanner.c"
3596: yy268:
3597: YYDEBUG(268, *YYCURSOR);
3598: ++YYCURSOR;
3599: YYFILL(1);
3600: yych = *YYCURSOR;
3601: YYDEBUG(269, *YYCURSOR);
3602: if (yybm[0+yych] & 16) {
3603: goto yy268;
3604: }
3605: goto yy267;
3606: yy270:
3607: YYDEBUG(270, *YYCURSOR);
3608: yyaccept = 4;
3609: yych = *(YYMARKER = ++YYCURSOR);
3610: if (yych <= '=') {
3611: if (yych <= '"') {
3612: if (yych <= '\n') {
3613: if (yych <= 0x00) goto yy250;
3614: if (yych <= 0x08) goto yy257;
3615: goto yy250;
3616: } else {
3617: if (yych == '\r') goto yy250;
3618: if (yych <= 0x1F) goto yy257;
3619: goto yy250;
3620: }
3621: } else {
3622: if (yych <= '9') {
3623: if (yych <= '%') goto yy257;
3624: if (yych <= ')') goto yy250;
3625: if (yych <= '/') goto yy257;
3626: goto yy258;
3627: } else {
3628: if (yych == ';') goto yy250;
3629: if (yych <= '<') goto yy257;
3630: goto yy250;
3631: }
3632: }
3633: } else {
3634: if (yych <= '`') {
3635: if (yych <= 'U') {
3636: if (yych <= '@') goto yy257;
3637: if (yych <= 'T') goto yy258;
3638: } else {
3639: if (yych <= 'Z') goto yy258;
3640: if (yych == '_') goto yy258;
3641: goto yy257;
3642: }
3643: } else {
3644: if (yych <= '{') {
3645: if (yych == 'u') goto yy271;
3646: if (yych <= 'z') goto yy258;
3647: goto yy257;
3648: } else {
3649: if (yych == '}') goto yy257;
3650: if (yych <= '~') goto yy250;
3651: goto yy257;
3652: }
3653: }
3654: }
3655: yy271:
3656: YYDEBUG(271, *YYCURSOR);
3657: yyaccept = 4;
3658: yych = *(YYMARKER = ++YYCURSOR);
3659: if (yych <= '=') {
3660: if (yych <= '"') {
3661: if (yych <= '\n') {
3662: if (yych <= 0x00) goto yy250;
3663: if (yych <= 0x08) goto yy257;
3664: goto yy250;
3665: } else {
3666: if (yych == '\r') goto yy250;
3667: if (yych <= 0x1F) goto yy257;
3668: goto yy250;
3669: }
3670: } else {
3671: if (yych <= '9') {
3672: if (yych <= '%') goto yy257;
3673: if (yych <= ')') goto yy250;
3674: if (yych <= '/') goto yy257;
3675: goto yy258;
3676: } else {
3677: if (yych == ';') goto yy250;
3678: if (yych <= '<') goto yy257;
3679: goto yy250;
3680: }
3681: }
3682: } else {
3683: if (yych <= '`') {
3684: if (yych <= 'E') {
3685: if (yych <= '@') goto yy257;
3686: if (yych <= 'D') goto yy258;
3687: goto yy266;
3688: } else {
3689: if (yych <= 'Z') goto yy258;
3690: if (yych == '_') goto yy258;
3691: goto yy257;
3692: }
3693: } else {
3694: if (yych <= '{') {
3695: if (yych == 'e') goto yy266;
3696: if (yych <= 'z') goto yy258;
3697: goto yy257;
3698: } else {
3699: if (yych == '}') goto yy257;
3700: if (yych <= '~') goto yy250;
3701: goto yy257;
3702: }
3703: }
3704: }
3705: yy272:
3706: YYDEBUG(272, *YYCURSOR);
3707: yyaccept = 4;
3708: yych = *(YYMARKER = ++YYCURSOR);
3709: if (yych <= '=') {
3710: if (yych <= '"') {
3711: if (yych <= '\n') {
3712: if (yych <= 0x00) goto yy250;
3713: if (yych <= 0x08) goto yy257;
3714: goto yy250;
3715: } else {
3716: if (yych == '\r') goto yy250;
3717: if (yych <= 0x1F) goto yy257;
3718: goto yy250;
3719: }
3720: } else {
3721: if (yych <= '9') {
3722: if (yych <= '%') goto yy257;
3723: if (yych <= ')') goto yy250;
3724: if (yych <= '/') goto yy257;
3725: goto yy258;
3726: } else {
3727: if (yych == ';') goto yy250;
3728: if (yych <= '<') goto yy257;
3729: goto yy250;
3730: }
3731: }
3732: } else {
3733: if (yych <= '`') {
3734: if (yych <= 'F') {
3735: if (yych <= '@') goto yy257;
3736: if (yych <= 'E') goto yy258;
3737: } else {
3738: if (yych <= 'Z') goto yy258;
3739: if (yych == '_') goto yy258;
3740: goto yy257;
3741: }
3742: } else {
3743: if (yych <= '{') {
3744: if (yych == 'f') goto yy273;
3745: if (yych <= 'z') goto yy258;
3746: goto yy257;
3747: } else {
3748: if (yych == '}') goto yy257;
3749: if (yych <= '~') goto yy250;
3750: goto yy257;
3751: }
3752: }
3753: }
3754: yy273:
3755: YYDEBUG(273, *YYCURSOR);
3756: yyaccept = 6;
3757: yych = *(YYMARKER = ++YYCURSOR);
3758: if (yybm[0+yych] & 4) {
3759: goto yy258;
3760: }
3761: if (yych <= '%') {
3762: if (yych <= '\f') {
3763: if (yych <= 0x08) {
3764: if (yych >= 0x01) goto yy257;
3765: } else {
3766: if (yych <= '\t') goto yy275;
3767: if (yych >= '\v') goto yy257;
3768: }
3769: } else {
3770: if (yych <= 0x1F) {
3771: if (yych >= 0x0E) goto yy257;
3772: } else {
3773: if (yych <= ' ') goto yy275;
3774: if (yych >= '#') goto yy257;
3775: }
3776: }
3777: } else {
3778: if (yych <= '=') {
3779: if (yych <= ':') {
3780: if (yych >= '*') goto yy257;
3781: } else {
3782: if (yych == '<') goto yy257;
3783: }
3784: } else {
3785: if (yych <= '|') {
3786: if (yych <= '{') goto yy257;
3787: } else {
3788: if (yych != '~') goto yy257;
3789: }
3790: }
3791: }
3792: yy274:
3793: YYDEBUG(274, *YYCURSOR);
3794: yyleng = YYCURSOR - SCNG(yy_text);
3795: #line 422 "Zend/zend_ini_scanner.l"
3796: { /* FALSE value (when used outside option value/offset this causes parse error!)*/
3797: RETURN_TOKEN(BOOL_FALSE, "", 0);
3798: }
3799: #line 3800 "Zend/zend_ini_scanner.c"
3800: yy275:
3801: YYDEBUG(275, *YYCURSOR);
3802: ++YYCURSOR;
3803: YYFILL(1);
3804: yych = *YYCURSOR;
3805: YYDEBUG(276, *YYCURSOR);
3806: if (yych == '\t') goto yy275;
3807: if (yych == ' ') goto yy275;
3808: goto yy274;
3809: yy277:
3810: YYDEBUG(277, *YYCURSOR);
3811: yyaccept = 6;
3812: yych = *(YYMARKER = ++YYCURSOR);
3813: if (yych <= '<') {
3814: if (yych <= ' ') {
3815: if (yych <= '\n') {
3816: if (yych <= 0x00) goto yy274;
3817: if (yych <= 0x08) goto yy257;
3818: if (yych <= '\t') goto yy275;
3819: goto yy274;
3820: } else {
3821: if (yych == '\r') goto yy274;
3822: if (yych <= 0x1F) goto yy257;
3823: goto yy275;
3824: }
3825: } else {
3826: if (yych <= '/') {
3827: if (yych <= '"') goto yy274;
3828: if (yych <= '%') goto yy257;
3829: if (yych <= ')') goto yy274;
3830: goto yy257;
3831: } else {
3832: if (yych <= '9') goto yy258;
3833: if (yych == ';') goto yy274;
3834: goto yy257;
3835: }
3836: }
3837: } else {
3838: if (yych <= '`') {
3839: if (yych <= 'N') {
3840: if (yych <= '=') goto yy274;
3841: if (yych <= '@') goto yy257;
3842: if (yych <= 'M') goto yy258;
3843: goto yy280;
3844: } else {
3845: if (yych <= 'Z') goto yy258;
3846: if (yych == '_') goto yy258;
3847: goto yy257;
3848: }
3849: } else {
3850: if (yych <= '{') {
3851: if (yych == 'n') goto yy280;
3852: if (yych <= 'z') goto yy258;
3853: goto yy257;
3854: } else {
3855: if (yych == '}') goto yy257;
3856: if (yych <= '~') goto yy274;
3857: goto yy257;
3858: }
3859: }
3860: }
3861: yy278:
3862: YYDEBUG(278, *YYCURSOR);
3863: yyaccept = 4;
3864: yych = *(YYMARKER = ++YYCURSOR);
3865: if (yych <= '=') {
3866: if (yych <= '"') {
3867: if (yych <= '\n') {
3868: if (yych <= 0x00) goto yy250;
3869: if (yych <= 0x08) goto yy257;
3870: goto yy250;
3871: } else {
3872: if (yych == '\r') goto yy250;
3873: if (yych <= 0x1F) goto yy257;
3874: goto yy250;
3875: }
3876: } else {
3877: if (yych <= '9') {
3878: if (yych <= '%') goto yy257;
3879: if (yych <= ')') goto yy250;
3880: if (yych <= '/') goto yy257;
3881: goto yy258;
3882: } else {
3883: if (yych == ';') goto yy250;
3884: if (yych <= '<') goto yy257;
3885: goto yy250;
3886: }
3887: }
3888: } else {
3889: if (yych <= '`') {
3890: if (yych <= 'L') {
3891: if (yych <= '@') goto yy257;
3892: if (yych <= 'K') goto yy258;
3893: } else {
3894: if (yych <= 'Z') goto yy258;
3895: if (yych == '_') goto yy258;
3896: goto yy257;
3897: }
3898: } else {
3899: if (yych <= '{') {
3900: if (yych == 'l') goto yy279;
3901: if (yych <= 'z') goto yy258;
3902: goto yy257;
3903: } else {
3904: if (yych == '}') goto yy257;
3905: if (yych <= '~') goto yy250;
3906: goto yy257;
3907: }
3908: }
3909: }
3910: yy279:
3911: YYDEBUG(279, *YYCURSOR);
3912: yyaccept = 4;
3913: yych = *(YYMARKER = ++YYCURSOR);
3914: if (yych <= '=') {
3915: if (yych <= '"') {
3916: if (yych <= '\n') {
3917: if (yych <= 0x00) goto yy250;
3918: if (yych <= 0x08) goto yy257;
3919: goto yy250;
3920: } else {
3921: if (yych == '\r') goto yy250;
3922: if (yych <= 0x1F) goto yy257;
3923: goto yy250;
3924: }
3925: } else {
3926: if (yych <= '9') {
3927: if (yych <= '%') goto yy257;
3928: if (yych <= ')') goto yy250;
3929: if (yych <= '/') goto yy257;
3930: goto yy258;
3931: } else {
3932: if (yych == ';') goto yy250;
3933: if (yych <= '<') goto yy257;
3934: goto yy250;
3935: }
3936: }
3937: } else {
3938: if (yych <= '`') {
3939: if (yych <= 'L') {
3940: if (yych <= '@') goto yy257;
3941: if (yych <= 'K') goto yy258;
3942: goto yy273;
3943: } else {
3944: if (yych <= 'Z') goto yy258;
3945: if (yych == '_') goto yy258;
3946: goto yy257;
3947: }
3948: } else {
3949: if (yych <= '{') {
3950: if (yych == 'l') goto yy273;
3951: if (yych <= 'z') goto yy258;
3952: goto yy257;
3953: } else {
3954: if (yych == '}') goto yy257;
3955: if (yych <= '~') goto yy250;
3956: goto yy257;
3957: }
3958: }
3959: }
3960: yy280:
3961: YYDEBUG(280, *YYCURSOR);
3962: yyaccept = 4;
3963: yych = *(YYMARKER = ++YYCURSOR);
3964: if (yych <= '=') {
3965: if (yych <= '"') {
3966: if (yych <= '\n') {
3967: if (yych <= 0x00) goto yy250;
3968: if (yych <= 0x08) goto yy257;
3969: goto yy250;
3970: } else {
3971: if (yych == '\r') goto yy250;
3972: if (yych <= 0x1F) goto yy257;
3973: goto yy250;
3974: }
3975: } else {
3976: if (yych <= '9') {
3977: if (yych <= '%') goto yy257;
3978: if (yych <= ')') goto yy250;
3979: if (yych <= '/') goto yy257;
3980: goto yy258;
3981: } else {
3982: if (yych == ';') goto yy250;
3983: if (yych <= '<') goto yy257;
3984: goto yy250;
3985: }
3986: }
3987: } else {
3988: if (yych <= '`') {
3989: if (yych <= 'E') {
3990: if (yych <= '@') goto yy257;
3991: if (yych <= 'D') goto yy258;
3992: goto yy273;
3993: } else {
3994: if (yych <= 'Z') goto yy258;
3995: if (yych == '_') goto yy258;
3996: goto yy257;
3997: }
3998: } else {
3999: if (yych <= '{') {
4000: if (yych == 'e') goto yy273;
4001: if (yych <= 'z') goto yy258;
4002: goto yy257;
4003: } else {
4004: if (yych == '}') goto yy257;
4005: if (yych <= '~') goto yy250;
4006: goto yy257;
4007: }
4008: }
4009: }
4010: yy281:
4011: YYDEBUG(281, *YYCURSOR);
4012: yyaccept = 4;
4013: yych = *(YYMARKER = ++YYCURSOR);
4014: if (yych <= '=') {
4015: if (yych <= '"') {
4016: if (yych <= '\n') {
4017: if (yych <= 0x00) goto yy250;
4018: if (yych <= 0x08) goto yy257;
4019: goto yy250;
4020: } else {
4021: if (yych == '\r') goto yy250;
4022: if (yych <= 0x1F) goto yy257;
4023: goto yy250;
4024: }
4025: } else {
4026: if (yych <= '9') {
4027: if (yych <= '%') goto yy257;
4028: if (yych <= ')') goto yy250;
4029: if (yych <= '/') goto yy257;
4030: goto yy258;
4031: } else {
4032: if (yych == ';') goto yy250;
4033: if (yych <= '<') goto yy257;
4034: goto yy250;
4035: }
4036: }
4037: } else {
4038: if (yych <= '`') {
4039: if (yych <= 'L') {
4040: if (yych <= '@') goto yy257;
4041: if (yych <= 'K') goto yy258;
4042: } else {
4043: if (yych <= 'Z') goto yy258;
4044: if (yych == '_') goto yy258;
4045: goto yy257;
4046: }
4047: } else {
4048: if (yych <= '{') {
4049: if (yych == 'l') goto yy282;
4050: if (yych <= 'z') goto yy258;
4051: goto yy257;
4052: } else {
4053: if (yych == '}') goto yy257;
4054: if (yych <= '~') goto yy250;
4055: goto yy257;
4056: }
4057: }
4058: }
4059: yy282:
4060: YYDEBUG(282, *YYCURSOR);
4061: yyaccept = 4;
4062: yych = *(YYMARKER = ++YYCURSOR);
4063: if (yych <= '=') {
4064: if (yych <= '"') {
4065: if (yych <= '\n') {
4066: if (yych <= 0x00) goto yy250;
4067: if (yych <= 0x08) goto yy257;
4068: goto yy250;
4069: } else {
4070: if (yych == '\r') goto yy250;
4071: if (yych <= 0x1F) goto yy257;
4072: goto yy250;
4073: }
4074: } else {
4075: if (yych <= '9') {
4076: if (yych <= '%') goto yy257;
4077: if (yych <= ')') goto yy250;
4078: if (yych <= '/') goto yy257;
4079: goto yy258;
4080: } else {
4081: if (yych == ';') goto yy250;
4082: if (yych <= '<') goto yy257;
4083: goto yy250;
4084: }
4085: }
4086: } else {
4087: if (yych <= '`') {
4088: if (yych <= 'S') {
4089: if (yych <= '@') goto yy257;
4090: if (yych <= 'R') goto yy258;
4091: } else {
4092: if (yych <= 'Z') goto yy258;
4093: if (yych == '_') goto yy258;
4094: goto yy257;
4095: }
4096: } else {
4097: if (yych <= '{') {
4098: if (yych == 's') goto yy283;
4099: if (yych <= 'z') goto yy258;
4100: goto yy257;
4101: } else {
4102: if (yych == '}') goto yy257;
4103: if (yych <= '~') goto yy250;
4104: goto yy257;
4105: }
4106: }
4107: }
4108: yy283:
4109: YYDEBUG(283, *YYCURSOR);
4110: yyaccept = 4;
4111: yych = *(YYMARKER = ++YYCURSOR);
4112: if (yych <= '=') {
4113: if (yych <= '"') {
4114: if (yych <= '\n') {
4115: if (yych <= 0x00) goto yy250;
4116: if (yych <= 0x08) goto yy257;
4117: goto yy250;
4118: } else {
4119: if (yych == '\r') goto yy250;
4120: if (yych <= 0x1F) goto yy257;
4121: goto yy250;
4122: }
4123: } else {
4124: if (yych <= '9') {
4125: if (yych <= '%') goto yy257;
4126: if (yych <= ')') goto yy250;
4127: if (yych <= '/') goto yy257;
4128: goto yy258;
4129: } else {
4130: if (yych == ';') goto yy250;
4131: if (yych <= '<') goto yy257;
4132: goto yy250;
4133: }
4134: }
4135: } else {
4136: if (yych <= '`') {
4137: if (yych <= 'E') {
4138: if (yych <= '@') goto yy257;
4139: if (yych <= 'D') goto yy258;
4140: goto yy273;
4141: } else {
4142: if (yych <= 'Z') goto yy258;
4143: if (yych == '_') goto yy258;
4144: goto yy257;
4145: }
4146: } else {
4147: if (yych <= '{') {
4148: if (yych == 'e') goto yy273;
4149: if (yych <= 'z') goto yy258;
4150: goto yy257;
4151: } else {
4152: if (yych == '}') goto yy257;
4153: if (yych <= '~') goto yy250;
4154: goto yy257;
4155: }
4156: }
4157: }
4158: yy284:
4159: YYDEBUG(284, *YYCURSOR);
4160: ++YYCURSOR;
4161: YYFILL(2);
4162: yych = *YYCURSOR;
4163: yy285:
4164: YYDEBUG(285, *YYCURSOR);
4165: if (yybm[0+yych] & 32) {
4166: goto yy284;
4167: }
4168: if (yych >= '\r') goto yy288;
4169: yy286:
4170: YYDEBUG(286, *YYCURSOR);
4171: ++YYCURSOR;
4172: yy287:
4173: YYDEBUG(287, *YYCURSOR);
4174: yyleng = YYCURSOR - SCNG(yy_text);
4175: #line 554 "Zend/zend_ini_scanner.l"
4176: { /* Comment */
4177: BEGIN(INITIAL);
4178: SCNG(lineno)++;
4179: return END_OF_LINE;
4180: }
4181: #line 4182 "Zend/zend_ini_scanner.c"
4182: yy288:
4183: YYDEBUG(288, *YYCURSOR);
4184: yych = *++YYCURSOR;
4185: if (yych == '\n') goto yy286;
4186: goto yy287;
4187: yy289:
4188: YYDEBUG(289, *YYCURSOR);
4189: yyaccept = 3;
4190: YYMARKER = ++YYCURSOR;
4191: YYFILL(1);
4192: yych = *YYCURSOR;
4193: YYDEBUG(290, *YYCURSOR);
4194: if (yybm[0+yych] & 64) {
4195: goto yy289;
4196: }
4197: if (yych <= '%') {
4198: if (yych <= '\r') {
4199: if (yych <= 0x08) {
4200: if (yych <= 0x00) goto yy245;
4201: goto yy256;
4202: } else {
4203: if (yych <= '\n') goto yy245;
4204: if (yych <= '\f') goto yy256;
4205: goto yy245;
4206: }
4207: } else {
4208: if (yych <= '"') {
4209: if (yych <= 0x1F) goto yy256;
4210: goto yy245;
4211: } else {
4212: if (yych == '$') goto yy261;
4213: goto yy256;
4214: }
4215: }
4216: } else {
4217: if (yych <= '=') {
4218: if (yych <= ':') {
4219: if (yych <= ')') goto yy245;
4220: goto yy256;
4221: } else {
4222: if (yych == '<') goto yy256;
4223: goto yy245;
4224: }
4225: } else {
4226: if (yych <= '|') {
4227: if (yych <= '{') goto yy256;
4228: goto yy245;
4229: } else {
4230: if (yych == '~') goto yy245;
4231: goto yy256;
4232: }
4233: }
4234: }
4235: yy291:
4236: YYDEBUG(291, *YYCURSOR);
4237: yyaccept = 3;
4238: YYMARKER = ++YYCURSOR;
4239: YYFILL(1);
4240: yych = *YYCURSOR;
4241: YYDEBUG(292, *YYCURSOR);
4242: if (yych <= '-') {
4243: if (yych <= 0x1F) {
4244: if (yych <= '\n') {
4245: if (yych <= 0x00) goto yy245;
4246: if (yych <= 0x08) goto yy256;
4247: goto yy245;
4248: } else {
4249: if (yych == '\r') goto yy245;
4250: goto yy256;
4251: }
4252: } else {
4253: if (yych <= '$') {
4254: if (yych <= '"') goto yy245;
4255: if (yych <= '#') goto yy256;
4256: goto yy261;
4257: } else {
4258: if (yych <= '%') goto yy256;
4259: if (yych <= ')') goto yy245;
4260: goto yy256;
4261: }
4262: }
4263: } else {
4264: if (yych <= '<') {
4265: if (yych <= '9') {
4266: if (yych <= '.') goto yy289;
4267: if (yych <= '/') goto yy256;
4268: goto yy291;
4269: } else {
4270: if (yych == ';') goto yy245;
4271: goto yy256;
4272: }
4273: } else {
4274: if (yych <= '|') {
4275: if (yych <= '=') goto yy245;
4276: if (yych <= '{') goto yy256;
4277: goto yy245;
4278: } else {
4279: if (yych == '~') goto yy245;
4280: goto yy256;
4281: }
4282: }
4283: }
4284: yy293:
4285: YYDEBUG(293, *YYCURSOR);
4286: yyaccept = 3;
4287: YYMARKER = ++YYCURSOR;
4288: YYFILL(1);
4289: yych = *YYCURSOR;
4290: YYDEBUG(294, *YYCURSOR);
4291: if (yych <= ')') {
4292: if (yych <= '\r') {
4293: if (yych <= 0x08) {
4294: if (yych <= 0x00) goto yy245;
4295: goto yy256;
4296: } else {
4297: if (yych <= '\n') goto yy245;
4298: if (yych <= '\f') goto yy256;
4299: goto yy245;
4300: }
4301: } else {
4302: if (yych <= '#') {
4303: if (yych <= 0x1F) goto yy256;
4304: if (yych <= '"') goto yy245;
4305: goto yy256;
4306: } else {
4307: if (yych <= '$') goto yy261;
4308: if (yych <= '%') goto yy256;
4309: goto yy245;
4310: }
4311: }
4312: } else {
4313: if (yych <= '<') {
4314: if (yych <= '9') {
4315: if (yych <= '/') goto yy256;
4316: goto yy293;
4317: } else {
4318: if (yych == ';') goto yy245;
4319: goto yy256;
4320: }
4321: } else {
4322: if (yych <= '|') {
4323: if (yych <= '=') goto yy245;
4324: if (yych <= '{') goto yy256;
4325: goto yy245;
4326: } else {
4327: if (yych == '~') goto yy245;
4328: goto yy256;
4329: }
4330: }
4331: }
4332: yy295:
4333: YYDEBUG(295, *YYCURSOR);
4334: yyaccept = 3;
4335: YYMARKER = ++YYCURSOR;
4336: YYFILL(1);
4337: yych = *YYCURSOR;
4338: YYDEBUG(296, *YYCURSOR);
4339: if (yych <= ')') {
4340: if (yych <= '\r') {
4341: if (yych <= 0x08) {
4342: if (yych <= 0x00) goto yy245;
4343: goto yy256;
4344: } else {
4345: if (yych <= '\n') goto yy245;
4346: if (yych <= '\f') goto yy256;
4347: goto yy245;
4348: }
4349: } else {
4350: if (yych <= '#') {
4351: if (yych <= 0x1F) goto yy256;
4352: if (yych <= '"') goto yy245;
4353: goto yy256;
4354: } else {
4355: if (yych <= '$') goto yy261;
4356: if (yych <= '%') goto yy256;
4357: goto yy245;
4358: }
4359: }
4360: } else {
4361: if (yych <= '<') {
4362: if (yych <= '9') {
4363: if (yych <= '/') goto yy256;
4364: goto yy295;
4365: } else {
4366: if (yych == ';') goto yy245;
4367: goto yy256;
4368: }
4369: } else {
4370: if (yych <= '|') {
4371: if (yych <= '=') goto yy245;
4372: if (yych <= '{') goto yy256;
4373: goto yy245;
4374: } else {
4375: if (yych == '~') goto yy245;
4376: goto yy256;
4377: }
4378: }
4379: }
4380: yy297:
4381: YYDEBUG(297, *YYCURSOR);
4382: ++YYCURSOR;
4383: YYFILL(1);
4384: yych = *YYCURSOR;
4385: YYDEBUG(298, *YYCURSOR);
4386: if (yybm[0+yych] & 128) {
4387: goto yy297;
4388: }
4389: YYDEBUG(299, *YYCURSOR);
4390: ++YYCURSOR;
4391: YYDEBUG(300, *YYCURSOR);
4392: yyleng = YYCURSOR - SCNG(yy_text);
4393: #line 365 "Zend/zend_ini_scanner.l"
4394: { /* Raw string */
4395: /* Eat leading and trailing single quotes */
4396: if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
4397: SCNG(yy_text)++;
4398: yyleng = yyleng - 2;
4399: }
4400: RETURN_TOKEN(TC_RAW, yytext, yyleng);
4401: }
4402: #line 4403 "Zend/zend_ini_scanner.c"
4403: yy301:
4404: YYDEBUG(301, *YYCURSOR);
4405: ++YYCURSOR;
4406: YYDEBUG(302, *YYCURSOR);
4407: yyleng = YYCURSOR - SCNG(yy_text);
4408: #line 398 "Zend/zend_ini_scanner.l"
4409: { /* Variable start */
4410: yy_push_state(ST_VARNAME TSRMLS_CC);
4411: return TC_DOLLAR_CURLY;
4412: }
4413: #line 4414 "Zend/zend_ini_scanner.c"
4414: yy303:
4415: YYDEBUG(303, *YYCURSOR);
4416: ++YYCURSOR;
4417: YYFILL(1);
4418: yych = *YYCURSOR;
4419: yy304:
4420: YYDEBUG(304, *YYCURSOR);
4421: if (yych == '\t') goto yy303;
4422: if (yych == ' ') goto yy303;
4423: goto yy237;
4424: yy305:
4425: YYDEBUG(305, *YYCURSOR);
4426: yych = *++YYCURSOR;
4427: goto yy234;
4428: yy306:
4429: YYDEBUG(306, *YYCURSOR);
4430: yyaccept = 1;
4431: YYMARKER = ++YYCURSOR;
4432: YYFILL(2);
4433: yych = *YYCURSOR;
4434: yy307:
4435: YYDEBUG(307, *YYCURSOR);
4436: if (yych <= 0x1F) {
4437: if (yych <= '\n') {
4438: if (yych <= 0x08) goto yy232;
4439: if (yych <= '\t') goto yy306;
4440: goto yy305;
4441: } else {
4442: if (yych == '\r') goto yy309;
4443: goto yy232;
4444: }
4445: } else {
4446: if (yych <= '"') {
4447: if (yych <= ' ') goto yy306;
4448: if (yych <= '!') goto yy232;
4449: } else {
4450: if (yych == ';') goto yy284;
4451: goto yy232;
4452: }
4453: }
4454: YYDEBUG(308, *YYCURSOR);
4455: yych = *++YYCURSOR;
4456: goto yy239;
4457: yy309:
4458: YYDEBUG(309, *YYCURSOR);
4459: ++YYCURSOR;
4460: if ((yych = *YYCURSOR) == '\n') goto yy305;
4461: goto yy234;
4462: }
4463: /* *********************************** */
4464: yyc_ST_VARNAME:
4465: {
4466: static const unsigned char yybm[] = {
4467: 128, 128, 128, 128, 128, 128, 128, 128,
4468: 128, 0, 0, 128, 128, 0, 128, 128,
4469: 128, 128, 128, 128, 128, 128, 128, 128,
4470: 128, 128, 128, 128, 128, 128, 128, 128,
4471: 128, 0, 0, 128, 0, 128, 0, 128,
4472: 0, 0, 128, 128, 128, 128, 128, 128,
4473: 128, 128, 128, 128, 128, 128, 128, 128,
4474: 128, 128, 128, 0, 128, 0, 128, 128,
4475: 128, 128, 128, 128, 128, 128, 128, 128,
4476: 128, 128, 128, 128, 128, 128, 128, 128,
4477: 128, 128, 128, 128, 128, 128, 128, 128,
4478: 128, 128, 128, 0, 128, 128, 128, 128,
4479: 128, 128, 128, 128, 128, 128, 128, 128,
4480: 128, 128, 128, 128, 128, 128, 128, 128,
4481: 128, 128, 128, 128, 128, 128, 128, 128,
4482: 128, 128, 128, 0, 0, 0, 0, 128,
4483: 128, 128, 128, 128, 128, 128, 128, 128,
4484: 128, 128, 128, 128, 128, 128, 128, 128,
4485: 128, 128, 128, 128, 128, 128, 128, 128,
4486: 128, 128, 128, 128, 128, 128, 128, 128,
4487: 128, 128, 128, 128, 128, 128, 128, 128,
4488: 128, 128, 128, 128, 128, 128, 128, 128,
4489: 128, 128, 128, 128, 128, 128, 128, 128,
4490: 128, 128, 128, 128, 128, 128, 128, 128,
4491: 128, 128, 128, 128, 128, 128, 128, 128,
4492: 128, 128, 128, 128, 128, 128, 128, 128,
4493: 128, 128, 128, 128, 128, 128, 128, 128,
4494: 128, 128, 128, 128, 128, 128, 128, 128,
4495: 128, 128, 128, 128, 128, 128, 128, 128,
4496: 128, 128, 128, 128, 128, 128, 128, 128,
4497: 128, 128, 128, 128, 128, 128, 128, 128,
4498: 128, 128, 128, 128, 128, 128, 128, 128,
4499: };
4500: YYDEBUG(310, *YYCURSOR);
4501: YYFILL(2);
4502: yych = *YYCURSOR;
4503: if (yych <= '\'') {
4504: if (yych <= ' ') {
4505: if (yych <= '\n') {
4506: if (yych >= '\t') goto yy314;
4507: } else {
4508: if (yych == '\r') goto yy314;
4509: }
4510: } else {
4511: if (yych <= '$') {
4512: if (yych != '#') goto yy314;
4513: } else {
4514: if (yych == '&') goto yy314;
4515: }
4516: }
4517: } else {
4518: if (yych <= 'Z') {
4519: if (yych <= ';') {
4520: if (yych <= ')') goto yy314;
4521: if (yych >= ';') goto yy314;
4522: } else {
4523: if (yych == '=') goto yy314;
4524: }
4525: } else {
4526: if (yych <= '|') {
4527: if (yych <= '[') goto yy314;
4528: if (yych >= '{') goto yy314;
4529: } else {
4530: if (yych <= '}') goto yy316;
4531: if (yych <= '~') goto yy314;
4532: }
4533: }
4534: }
4535: YYDEBUG(312, *YYCURSOR);
4536: ++YYCURSOR;
4537: yych = *YYCURSOR;
4538: goto yy319;
4539: yy313:
4540: YYDEBUG(313, *YYCURSOR);
4541: yyleng = YYCURSOR - SCNG(yy_text);
4542: #line 403 "Zend/zend_ini_scanner.l"
4543: { /* Variable name */
4544: /* Eat leading whitespace */
4545: EAT_LEADING_WHITESPACE();
4546:
4547: /* Eat trailing whitespace */
4548: EAT_TRAILING_WHITESPACE();
4549:
4550: RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
4551: }
4552: #line 4553 "Zend/zend_ini_scanner.c"
4553: yy314:
4554: YYDEBUG(314, *YYCURSOR);
4555: ++YYCURSOR;
4556: YYDEBUG(315, *YYCURSOR);
4557: yyleng = YYCURSOR - SCNG(yy_text);
4558: #line 572 "Zend/zend_ini_scanner.l"
4559: {
4560: return 0;
4561: }
4562: #line 4563 "Zend/zend_ini_scanner.c"
4563: yy316:
4564: YYDEBUG(316, *YYCURSOR);
4565: ++YYCURSOR;
4566: YYDEBUG(317, *YYCURSOR);
4567: yyleng = YYCURSOR - SCNG(yy_text);
4568: #line 413 "Zend/zend_ini_scanner.l"
4569: { /* Variable end */
4570: yy_pop_state(TSRMLS_C);
4571: return '}';
4572: }
4573: #line 4574 "Zend/zend_ini_scanner.c"
4574: yy318:
4575: YYDEBUG(318, *YYCURSOR);
4576: ++YYCURSOR;
4577: YYFILL(1);
4578: yych = *YYCURSOR;
4579: yy319:
4580: YYDEBUG(319, *YYCURSOR);
4581: if (yybm[0+yych] & 128) {
4582: goto yy318;
4583: }
4584: goto yy313;
4585: }
4586: }
4587: #line 576 "Zend/zend_ini_scanner.l"
4588:
4589: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>