]> granicus.if.org Git - php/commitdiff
s/DEBUG/SCANNER_DEBUG/. "Convert" one macro to inline function to be more
authorSascha Schumann <sas@php.net>
Tue, 19 Sep 2000 18:00:58 +0000 (18:00 +0000)
committerSascha Schumann <sas@php.net>
Tue, 19 Sep 2000 18:00:58 +0000 (18:00 +0000)
consistent. Also use continue.

ext/standard/url_scanner_ex.c
ext/standard/url_scanner_ex.re

index ebf82926da072ec3e8e1594fc75db7e4d358049c..98b083ec66c8e8b785eeb60642c45990632f8b7e 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.5 on Tue Sep 19 19:28:00 2000 */
+/* Generated by re2c 0.5 on Tue Sep 19 20:00:09 2000 */
 #line 1 "/home/sas/src/php4/ext/standard/url_scanner_ex.re"
 /*
   +----------------------------------------------------------------------+
@@ -62,7 +62,7 @@ static inline void smart_str_free(smart_str *s)
                free(s->c);
                s->c = NULL;
        }
-       s->len = 0;
+       s->a = s->len = 0;
 }
 
 static inline void smart_str_copyl(smart_str *dest, const char *src, size_t len)
@@ -83,12 +83,17 @@ static inline void smart_str_appendl(smart_str *dest, const char *src, size_t le
        smart_str_append(dest, &s);
 }
 
-static inline void smart_str_appends(smart_str *dest, char *src)
+static inline void smart_str_appends(smart_str *dest, const char *src)
 {
        smart_str_appendl(dest, src, strlen(src));
 }
 
-static inline void attach_url(smart_str *url, smart_str *name, smart_str *val, char *separator)
+static inline void smart_str_copys(smart_str *dest, const char *src)
+{
+       smart_str_copyl(dest, src, strlen(src));
+}
+
+static inline void attach_url(smart_str *url, smart_str *name, smart_str *val, const char *separator)
 {
        if (strchr(url->c, ':')) return;
 
@@ -131,10 +136,10 @@ static inline void tag_arg(url_adapt_state_t *ctx PLS_DC)
        smart_str_appends(&ctx->result, "\"");
 }
 
-#line 131
+#line 139
 
 
-#define NEXT goto nextiter
+#define NEXT continue
 
 #define COPY_ALL \
        smart_str_appendl(&ctx->result, start, YYCURSOR - start); \
@@ -169,7 +174,7 @@ enum {
 static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
 {
        char *para_start, *arg_start, *tag_start;
-       char *start;
+       char *start = NULL;
        char *cursor, *marker;
        PLS_FETCH();
 
@@ -182,7 +187,9 @@ static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
        while (YYCURSOR < YYLIMIT) {
                start = YYCURSOR;
 
-//     printf("state %d:%s'\n", ctx->state, YYCURSOR); 
+#ifdef SCANNER_DEBUG
+       printf("state %d:%s'\n", ctx->state, YYCURSOR);
+#endif
                switch (ctx->state) {
                        
                case STATE_PLAIN:
@@ -231,17 +238,17 @@ yy0:
        if(yybm[0+yych] & 128)  goto yy4;
 yy2:   yych = *++YYCURSOR;
 yy3:
-#line 186
+#line 196
        { tag_start = YYCURSOR; GO(STATE_TAG); COPY_ALL;}
 yy4:   ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
 yy5:   if(yybm[0+yych] & 128)  goto yy4;
 yy6:
-#line 187
+#line 197
        { COPY_ALL; }
 }
-#line 188
+#line 198
 
                        break;
                
@@ -298,7 +305,7 @@ yy9:        yyaccept = 0;
        if(yych == ' ') goto yy12;
        if(yych == '>') goto yy12;
 yy10:
-#line 203
+#line 213
        { 
                                                YYCURSOR--; 
                                                GO(STATE_PLAIN);
@@ -309,12 +316,12 @@ yy11:     yych = *++YYCURSOR;
        goto yy10;
 yy12:  yych = *++YYCURSOR;
 yy13:
-#line 193
+#line 203
        { 
                                                YYCURSOR--; 
                                                arg_start = YYCURSOR;
                                                smart_str_copyl(&ctx->tag, start, YYCURSOR - start); 
-#ifdef DEBUG
+#ifdef SCANNER_DEBUG
                                                printf("TAG(%s)\n", ctx->tag.c);
 #endif
                                                GO(STATE_NEXT_ARG);
@@ -331,7 +338,7 @@ yy16:       YYCURSOR = YYMARKER;
        case 0: goto yy10;
        }
 }
-#line 209
+#line 219
 
                        break;
 
@@ -385,14 +392,14 @@ yy19:yy20:        ++YYCURSOR;
        yych = *YYCURSOR;
 yy21:  if(yybm[0+yych] & 128)  goto yy20;
 yy22:
-#line 214
+#line 224
        {
                                                GO(STATE_ARG);
                                                NEXT; 
                                }
 yy23:  yych = *++YYCURSOR;
 yy24:
-#line 218
+#line 228
        {
                                                HANDLE_FORM;
                                                GO(STATE_PLAIN);
@@ -400,7 +407,7 @@ yy24:
                                                COPY_ALL;
                                }
 }
-#line 224
+#line 234
 
                        break;
 
@@ -453,7 +460,7 @@ yy25:
        if(yych <= '<') goto yy30;
        if(yych >= '?') goto yy30;
 yy27:
-#line 239
+#line 252
        {
                                                arg_start = YYCURSOR;
                                                ctx->state--;
@@ -492,10 +499,13 @@ yy35:     ++YYCURSOR;
        yych = *YYCURSOR;
 yy36:  if(yych == ' ') goto yy35;
 yy37:
-#line 230
+#line 240
        {
-                                               smart_str_copyl(&ctx->arg, start, YYCURSOR - start - 1);
-#ifdef DEBUG
+                                               char *p;
+
+                                               for (p = start; isalpha(*p); p++);
+                                               smart_str_copyl(&ctx->arg, start, p - start);
+#ifdef SCANNER_DEBUG
                                                printf("ARG(%s)\n", ctx->arg.c);
 #endif
                                                para_start = YYCURSOR;
@@ -503,7 +513,7 @@ yy37:
                                                COPY_ALL;
                                }
 }
-#line 244
+#line 257
 
                        break;
 
@@ -566,7 +576,7 @@ yy40:       yyaccept = 0;
        yych = *(YYMARKER = ++YYCURSOR);
        if(yych != '^') goto yy51;
 yy41:
-#line 273
+#line 286
        {
                                                YYCURSOR--;
                                                ctx->state = 2;
@@ -580,12 +590,12 @@ yy43:     yych = *++YYCURSOR;
        goto yy41;
 yy44:  yych = *++YYCURSOR;
 yy45:
-#line 261
+#line 274
        {
                                                YYCURSOR--;
                                                para_start = NULL;
                                                smart_str_copyl(&ctx->para, start, YYCURSOR - start);
-#ifdef DEBUG
+#ifdef SCANNER_DEBUG
                                                printf("PARA(%s)\n", ctx->para.c);
 #endif
                                                tag_arg(ctx PLS_CC);
@@ -621,12 +631,12 @@ yy52:     yych = *++YYCURSOR;
        if(yych != '>') goto yy47;
 yy53:  yych = *++YYCURSOR;
 yy54:
-#line 249
+#line 262
        {
                                                YYCURSOR--;
                                                para_start = NULL;
                                                smart_str_copyl(&ctx->para, start + 1, YYCURSOR - start - 2);
-#ifdef DEBUG
+#ifdef SCANNER_DEBUG
                                                printf("PARA(%s)\n", ctx->para.c);
 #endif
                                                tag_arg(ctx PLS_CC);
@@ -647,7 +657,7 @@ yy57:       if(yybm[0+yych] & 128)  goto yy56;
 yy58:  yych = *++YYCURSOR;
        goto yy54;
 }
-#line 278
+#line 291
 
                        break;
                }
@@ -677,15 +687,13 @@ finish:
                smart_str_free(&ctx->work);
        }
 
-#ifdef DEBUG 
+#ifdef SCANNER_DEBUG 
        if (ctx->work.c) {
                printf("PRESERVING %s'\n", ctx->work.c);
        }
 #endif
 }
 
-#define smart_str_copys(a,b) smart_str_copyl(a,b,strlen(b))
-
 char *url_adapt_ext(const char *src, size_t srclen, const char *name, const char *value, size_t *newlen)
 {
        smart_str str = {0,0};
index c51f30c3ae4bc0aef164038deab22fedeca35b7e..4859dbe36cfc56510bbf33048ee7fc58dfee2127 100644 (file)
@@ -60,7 +60,7 @@ static inline void smart_str_free(smart_str *s)
                free(s->c);
                s->c = NULL;
        }
-       s->len = 0;
+       s->a = s->len = 0;
 }
 
 static inline void smart_str_copyl(smart_str *dest, const char *src, size_t len)
@@ -81,12 +81,17 @@ static inline void smart_str_appendl(smart_str *dest, const char *src, size_t le
        smart_str_append(dest, &s);
 }
 
-static inline void smart_str_appends(smart_str *dest, char *src)
+static inline void smart_str_appends(smart_str *dest, const char *src)
 {
        smart_str_appendl(dest, src, strlen(src));
 }
 
-static inline void attach_url(smart_str *url, smart_str *name, smart_str *val, char *separator)
+static inline void smart_str_copys(smart_str *dest, const char *src)
+{
+       smart_str_copyl(dest, src, strlen(src));
+}
+
+static inline void attach_url(smart_str *url, smart_str *name, smart_str *val, const char *separator)
 {
        if (strchr(url->c, ':')) return;
 
@@ -133,7 +138,7 @@ static inline void tag_arg(url_adapt_state_t *ctx PLS_DC)
 all = [\000-\377];
 */
 
-#define NEXT goto nextiter
+#define NEXT continue
 
 #define COPY_ALL \
        smart_str_appendl(&ctx->result, start, YYCURSOR - start); \
@@ -168,7 +173,7 @@ enum {
 static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
 {
        char *para_start, *arg_start, *tag_start;
-       char *start;
+       char *start = NULL;
        char *cursor, *marker;
        PLS_FETCH();
 
@@ -181,7 +186,9 @@ static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
        while (YYCURSOR < YYLIMIT) {
                start = YYCURSOR;
 
-//     printf("state %d:%s'\n", ctx->state, YYCURSOR); 
+#ifdef SCANNER_DEBUG
+       printf("state %d:%s'\n", ctx->state, YYCURSOR);
+#endif
                switch (ctx->state) {
                        
                case STATE_PLAIN:
@@ -197,7 +204,7 @@ static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
                                                YYCURSOR--; 
                                                arg_start = YYCURSOR;
                                                smart_str_copyl(&ctx->tag, start, YYCURSOR - start); 
-#ifdef DEBUG
+#ifdef SCANNER_DEBUG
                                                printf("TAG(%s)\n", ctx->tag.c);
 #endif
                                                GO(STATE_NEXT_ARG);
@@ -231,8 +238,11 @@ static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
                                smart_str_appendl(&ctx->result, " ", 1);
 /*!re2c
   [a-zA-Z]+ [ ]* "=" [ ]*              {
-                                               smart_str_copyl(&ctx->arg, start, YYCURSOR - start - 1);
-#ifdef DEBUG
+                                               char *p;
+
+                                               for (p = start; isalpha(*p); p++);
+                                               smart_str_copyl(&ctx->arg, start, p - start);
+#ifdef SCANNER_DEBUG
                                                printf("ARG(%s)\n", ctx->arg.c);
 #endif
                                                para_start = YYCURSOR;
@@ -253,7 +263,7 @@ static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
                                                YYCURSOR--;
                                                para_start = NULL;
                                                smart_str_copyl(&ctx->para, start + 1, YYCURSOR - start - 2);
-#ifdef DEBUG
+#ifdef SCANNER_DEBUG
                                                printf("PARA(%s)\n", ctx->para.c);
 #endif
                                                tag_arg(ctx PLS_CC);
@@ -265,7 +275,7 @@ static void mainloop(url_adapt_state_t *ctx, smart_str *newstuff)
                                                YYCURSOR--;
                                                para_start = NULL;
                                                smart_str_copyl(&ctx->para, start, YYCURSOR - start);
-#ifdef DEBUG
+#ifdef SCANNER_DEBUG
                                                printf("PARA(%s)\n", ctx->para.c);
 #endif
                                                tag_arg(ctx PLS_CC);
@@ -307,15 +317,13 @@ finish:
                smart_str_free(&ctx->work);
        }
 
-#ifdef DEBUG 
+#ifdef SCANNER_DEBUG 
        if (ctx->work.c) {
                printf("PRESERVING %s'\n", ctx->work.c);
        }
 #endif
 }
 
-#define smart_str_copys(a,b) smart_str_copyl(a,b,strlen(b))
-
 char *url_adapt_ext(const char *src, size_t srclen, const char *name, const char *value, size_t *newlen)
 {
        smart_str str = {0,0};