/[hydra]/hydra/src/boa_grammar.y
ViewVC logotype

Diff of /hydra/src/boa_grammar.y

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by nmav, Tue Sep 24 17:12:47 2002 UTC revision 1.4 by nmav, Sun Oct 27 10:06:28 2002 UTC
# Line 32  Line 32 
32  int yyerror(char * msg);  int yyerror(char * msg);
33    
34  /* yydebug = 1; */  /* yydebug = 1; */
   
35  #ifdef DEBUG  #ifdef DEBUG
36  #define DBG(x) x  #define DBG(x) x
37  #else  #else
# Line 53  char mime_type[256];            /* globa Line 52  char mime_type[256];            /* globa
52  };  };
53    
54  /* boa.conf tokens */  /* boa.conf tokens */
55  %token <cval> STMT_NO_ARGS STMT_ONE_ARG STMT_TWO_ARGS STMT_FOUR_ARGS  %token <cval> STMT_NO_ARGS STMT_ONE_ARG STMT_TWO_ARGS STMT_THREE_ARGS STMT_FOUR_ARGS
56    
57  /* mime.type tokens */  /* mime.type tokens */
58  %token <sval> MIMETYPE  %token <sval> MIMETYPE
# Line 76  BoaConfigStmt: Line 75  BoaConfigStmt:
75                          StmtNoArgs                          StmtNoArgs
76          |               StmtOneArg          |               StmtOneArg
77          |               StmtTwoArgs          |               StmtTwoArgs
78            |               StmtThreeArgs
79          |               StmtFourArgs          |               StmtFourArgs
80          ;          ;
81    
# Line 101  StmtTwoArgs:           STMT_TWO_ARGS STRING Line 101  StmtTwoArgs:           STMT_TWO_ARGS STRING
101                  { if ($1->action) {                  { if ($1->action) {
102                          DBG(printf("StmtTwoArgs: '%s' '%s' '%s'\n",                          DBG(printf("StmtTwoArgs: '%s' '%s' '%s'\n",
103                                      $1->name,arg1hold,$4);)                                      $1->name,arg1hold,$4);)
104                          $1->action($4,arg1hold,NULL, NULL, $1->object);                          $1->action(arg1hold, $4,NULL, NULL, $1->object);
105                    }                    }
106                    free(arg1hold);                    free(arg1hold);
107                  }                  }
108            ;
109    
110    StmtThreeArgs:          STMT_THREE_ARGS STRING
111                    { arg1hold = strdup($2); }
112                             STRING
113                    { arg2hold = strdup($4); }
114                             STRING
115                    { if ($1->action) {
116                            DBG(printf("StmtThreeArgs: '%s' '%s' '%s' '%s'\n",
117                                        $1->name,arg1hold, arg2hold, $6);)
118                            $1->action(arg1hold, arg2hold, $6, NULL, $1->object);
119                      }
120                      free(arg1hold);
121                      free(arg2hold);
122                    }
123            ;
124    
125  StmtFourArgs:           STMT_FOUR_ARGS STRING  StmtFourArgs:           STMT_FOUR_ARGS STRING
126                  { arg1hold = strdup($2); }                  { arg1hold = strdup($2); }
127                           STRING                           STRING
# Line 113  StmtFourArgs:          STMT_FOUR_ARGS STRING Line 130  StmtFourArgs:          STMT_FOUR_ARGS STRING
130                  { arg3hold = strdup($6); }                  { arg3hold = strdup($6); }
131                           STRING                           STRING
132                  { if ($1->action) {                  { if ($1->action) {
133                          DBG(printf("StmtTwoArgs: '%s' '%s' '%s' '%s' '%s'\n",                          DBG(printf("StmtFourArgs: '%s' '%s' '%s' '%s' '%s'\n",
134                                      $1->name,arg1hold, arg2hold, arg3hold, $8);)                                      $1->name,arg1hold, arg2hold, arg3hold, $8);)
135                          $1->action(arg1hold, arg2hold, arg3hold, $8, $1->object);                          $1->action(arg1hold, arg2hold, arg3hold, $8, $1->object);
136                    }                    }

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4

webmaster@linux.gr
ViewVC Help
Powered by ViewVC 1.1.26