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