summaryrefslogtreecommitdiff
path: root/ext/standard/url_scanner_ex.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/url_scanner_ex.c')
-rw-r--r--ext/standard/url_scanner_ex.c480
1 files changed, 233 insertions, 247 deletions
diff --git a/ext/standard/url_scanner_ex.c b/ext/standard/url_scanner_ex.c
index 9edf4c2f9..80a5725d0 100644
--- a/ext/standard/url_scanner_ex.c
+++ b/ext/standard/url_scanner_ex.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.12.1 on Wed Oct 10 12:28:46 2007 */
+/* Generated by re2c 0.13.5 on Wed Jul 2 12:48:53 2008 */
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: url_scanner_ex.c,v 1.95.2.4.2.6 2008/03/12 11:27:42 felipe Exp $ */
+/* $Id: url_scanner_ex.c,v 1.95.2.4.2.7 2008/07/16 14:10:50 jani Exp $ */
#include "php.h"
@@ -107,7 +107,9 @@ static inline void append_modified_url(smart_str *url, smart_str *dest, smart_st
q = (p = url->c) + url->len;
scan:
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
@@ -143,33 +145,29 @@ scan:
128, 128, 128, 128, 128, 128, 128, 128,
};
- {
- YYCTYPE yych;
-
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yybm[0+yych] & 128) {
- goto yy8;
- }
- if(yych <= '9') goto yy6;
- if(yych >= ';') goto yy4;
- ++YYCURSOR;
- { smart_str_append(dest, url); return; }
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy8;
+ }
+ if (yych <= '9') goto yy6;
+ if (yych >= ';') goto yy4;
+ ++YYCURSOR;
+ { smart_str_append(dest, url); return; }
yy4:
- ++YYCURSOR;
- { sep = separator; goto scan; }
+ ++YYCURSOR;
+ { sep = separator; goto scan; }
yy6:
- ++YYCURSOR;
- { bash = p - 1; goto done; }
+ ++YYCURSOR;
+ { bash = p - 1; goto done; }
yy8:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yybm[0+yych] & 128) {
- goto yy8;
- }
- { goto scan; }
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy8;
}
+ { goto scan; }
}
done:
@@ -349,7 +347,9 @@ state_plain_begin:
state_plain:
start = YYCURSOR;
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
@@ -384,31 +384,29 @@ state_plain:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
-
- {
- YYCTYPE yych;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yybm[0+yych] & 128) {
- goto yy15;
- }
- ++YYCURSOR;
- { passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy15;
+ }
+ ++YYCURSOR;
+ { passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
yy15:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yybm[0+yych] & 128) {
- goto yy15;
- }
- { passthru(STD_ARGS); goto state_plain; }
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy15;
}
+ { passthru(STD_ARGS); goto state_plain; }
}
state_tag:
start = YYCURSOR;
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
@@ -443,37 +441,33 @@ state_tag:
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
-
- {
- YYCTYPE yych;
- if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
- if(yych <= '@') {
- if(yych != ':') goto yy22;
- } else {
- if(yych <= 'Z') goto yy20;
- if(yych <= '`') goto yy22;
- if(yych >= '{') goto yy22;
- }
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych != ':') goto yy22;
+ } else {
+ if (yych <= 'Z') goto yy20;
+ if (yych <= '`') goto yy22;
+ if (yych >= '{') goto yy22;
+ }
yy20:
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy25;
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy25;
yy21:
- { handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); if (STATE == STATE_PLAIN) goto state_plain; else goto state_next_arg; }
+ { handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); if (STATE == STATE_PLAIN) goto state_plain; else goto state_next_arg; }
yy22:
- ++YYCURSOR;
- { passthru(STD_ARGS); goto state_plain_begin; }
+ ++YYCURSOR;
+ { passthru(STD_ARGS); goto state_plain_begin; }
yy24:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
yy25:
- if(yybm[0+yych] & 128) {
- goto yy24;
- }
- goto yy21;
+ if (yybm[0+yych] & 128) {
+ goto yy24;
}
+ goto yy21;
}
@@ -482,7 +476,9 @@ state_next_arg_begin:
state_next_arg:
start = YYCURSOR;
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 128, 128, 0, 128, 0, 0,
@@ -517,61 +513,59 @@ state_next_arg:
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
-
- {
- YYCTYPE yych;
- if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
- if(yych <= ' ') {
- if(yych <= 0x0C) {
- if(yych <= 0x08) goto yy34;
- if(yych <= 0x0B) goto yy30;
- goto yy34;
- } else {
- if(yych <= 0x0D) goto yy30;
- if(yych <= 0x1F) goto yy34;
- goto yy30;
- }
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= ' ') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy34;
+ if (yych <= '\v') goto yy30;
+ goto yy34;
} else {
- if(yych <= '@') {
- if(yych != '>') goto yy34;
- } else {
- if(yych <= 'Z') goto yy32;
- if(yych <= '`') goto yy34;
- if(yych <= 'z') goto yy32;
- goto yy34;
- }
+ if (yych <= '\r') goto yy30;
+ if (yych <= 0x1F) goto yy34;
+ goto yy30;
}
- ++YYCURSOR;
- { passthru(STD_ARGS); handle_form(STD_ARGS); goto state_plain_begin; }
+ } else {
+ if (yych <= '@') {
+ if (yych != '>') goto yy34;
+ } else {
+ if (yych <= 'Z') goto yy32;
+ if (yych <= '`') goto yy34;
+ if (yych <= 'z') goto yy32;
+ goto yy34;
+ }
+ }
+ ++YYCURSOR;
+ { passthru(STD_ARGS); handle_form(STD_ARGS); goto state_plain_begin; }
yy30:
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy37;
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy37;
yy31:
- { passthru(STD_ARGS); goto state_next_arg; }
+ { passthru(STD_ARGS); goto state_next_arg; }
yy32:
- ++YYCURSOR;
- { --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
+ ++YYCURSOR;
+ { --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
yy34:
- ++YYCURSOR;
- { passthru(STD_ARGS); goto state_plain_begin; }
+ ++YYCURSOR;
+ { passthru(STD_ARGS); goto state_plain_begin; }
yy36:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
yy37:
- if(yybm[0+yych] & 128) {
- goto yy36;
- }
- goto yy31;
+ if (yybm[0+yych] & 128) {
+ goto yy36;
}
+ goto yy31;
}
state_arg:
start = YYCURSOR;
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
@@ -606,40 +600,38 @@ state_arg:
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
-
- {
- YYCTYPE yych;
- if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
- if(yych <= '@') goto yy42;
- if(yych <= 'Z') goto yy40;
- if(yych <= '`') goto yy42;
- if(yych >= '{') goto yy42;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '@') goto yy42;
+ if (yych <= 'Z') goto yy40;
+ if (yych <= '`') goto yy42;
+ if (yych >= '{') goto yy42;
yy40:
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy45;
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy45;
yy41:
- { passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = STATE_BEFORE_VAL; goto state_before_val; }
+ { passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = STATE_BEFORE_VAL; goto state_before_val; }
yy42:
- ++YYCURSOR;
- { passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto state_next_arg; }
+ ++YYCURSOR;
+ { passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto state_next_arg; }
yy44:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
yy45:
- if(yybm[0+yych] & 128) {
- goto yy44;
- }
- goto yy41;
+ if (yybm[0+yych] & 128) {
+ goto yy44;
}
+ goto yy41;
}
state_before_val:
start = YYCURSOR;
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
@@ -674,54 +666,52 @@ state_before_val:
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
-
- {
- YYCTYPE yych;
- if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
- if(yych == ' ') goto yy48;
- if(yych == '=') goto yy50;
- goto yy52;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych == ' ') goto yy48;
+ if (yych == '=') goto yy50;
+ goto yy52;
yy48:
- yych = *(YYMARKER = ++YYCURSOR);
- if(yych == ' ') goto yy55;
- if(yych == '=') goto yy53;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == ' ') goto yy55;
+ if (yych == '=') goto yy53;
yy49:
- { --YYCURSOR; goto state_next_arg_begin; }
+ { --YYCURSOR; goto state_next_arg_begin; }
yy50:
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy54;
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy54;
yy51:
- { passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
+ { passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
yy52:
- yych = *++YYCURSOR;
- goto yy49;
+ yych = *++YYCURSOR;
+ goto yy49;
yy53:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
yy54:
- if(yybm[0+yych] & 128) {
- goto yy53;
- }
- goto yy51;
-yy55:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yych == ' ') goto yy55;
- if(yych == '=') goto yy53;
- YYCURSOR = YYMARKER;
- goto yy49;
+ if (yybm[0+yych] & 128) {
+ goto yy53;
}
+ goto yy51;
+yy55:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == ' ') goto yy55;
+ if (yych == '=') goto yy53;
+ YYCURSOR = YYMARKER;
+ goto yy49;
}
state_val:
start = YYCURSOR;
+
{
+ YYCTYPE yych;
static const unsigned char yybm[] = {
248, 248, 248, 248, 248, 248, 248, 248,
248, 160, 160, 248, 248, 160, 248, 248,
@@ -756,110 +746,106 @@ state_val:
248, 248, 248, 248, 248, 248, 248, 248,
248, 248, 248, 248, 248, 248, 248, 248,
};
-
- {
- YYCTYPE yych;
- if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
- yych = *YYCURSOR;
- if(yych <= ' ') {
- if(yych <= 0x0C) {
- if(yych <= 0x08) goto yy63;
- if(yych <= 0x0A) goto yy64;
- goto yy63;
- } else {
- if(yych <= 0x0D) goto yy64;
- if(yych <= 0x1F) goto yy63;
- goto yy64;
- }
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= ' ') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy63;
+ if (yych <= '\n') goto yy64;
+ goto yy63;
+ } else {
+ if (yych <= '\r') goto yy64;
+ if (yych <= 0x1F) goto yy63;
+ goto yy64;
+ }
+ } else {
+ if (yych <= '&') {
+ if (yych != '"') goto yy63;
} else {
- if(yych <= '&') {
- if(yych != '"') goto yy63;
- } else {
- if(yych <= '\'') goto yy62;
- if(yych == '>') goto yy64;
- goto yy63;
- }
+ if (yych <= '\'') goto yy62;
+ if (yych == '>') goto yy64;
+ goto yy63;
}
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy77;
+ }
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy77;
yy61:
- { handle_val(STD_ARGS, 0, ' '); goto state_next_arg_begin; }
+ { handle_val(STD_ARGS, 0, ' '); goto state_next_arg_begin; }
yy62:
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy69;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy69;
yy63:
- yych = *++YYCURSOR;
- goto yy67;
+ yych = *++YYCURSOR;
+ goto yy67;
yy64:
- ++YYCURSOR;
- { passthru(STD_ARGS); goto state_next_arg_begin; }
+ ++YYCURSOR;
+ { passthru(STD_ARGS); goto state_next_arg_begin; }
yy66:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
yy67:
- if(yybm[0+yych] & 8) {
- goto yy66;
- }
- goto yy61;
+ if (yybm[0+yych] & 8) {
+ goto yy66;
+ }
+ goto yy61;
yy68:
- YYMARKER = ++YYCURSOR;
- if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
+ YYMARKER = ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
yy69:
- if(yybm[0+yych] & 16) {
- goto yy68;
- }
- if(yych <= '&') goto yy72;
- if(yych >= '(') goto yy61;
- ++YYCURSOR;
- if(yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy66;
- }
+ if (yybm[0+yych] & 16) {
+ goto yy68;
+ }
+ if (yych <= '&') goto yy72;
+ if (yych >= '(') goto yy61;
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 8) {
+ goto yy66;
+ }
yy71:
- { handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
+ { handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
yy72:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yybm[0+yych] & 32) {
- goto yy72;
- }
- if(yych <= '=') goto yy75;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy72;
+ }
+ if (yych <= '=') goto yy75;
yy74:
- YYCURSOR = YYMARKER;
- goto yy61;
+ YYCURSOR = YYMARKER;
+ goto yy61;
yy75:
- yych = *++YYCURSOR;
- goto yy71;
+ yych = *++YYCURSOR;
+ goto yy71;
yy76:
- YYMARKER = ++YYCURSOR;
- if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
+ YYMARKER = ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
yy77:
- if(yybm[0+yych] & 64) {
- goto yy76;
- }
- if(yych <= '!') goto yy80;
- if(yych >= '#') goto yy61;
- ++YYCURSOR;
- if(yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy66;
- }
+ if (yybm[0+yych] & 64) {
+ goto yy76;
+ }
+ if (yych <= '!') goto yy80;
+ if (yych >= '#') goto yy61;
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 8) {
+ goto yy66;
+ }
yy79:
- { handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
+ { handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
yy80:
- ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if(yybm[0+yych] & 128) {
- goto yy80;
- }
- if(yych >= '>') goto yy74;
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy79;
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy80;
}
+ if (yych >= '>') goto yy74;
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy79;
}