/[CvsGraph]/cvsgraph/rcsy.y
ViewVC logotype

Diff of /cvsgraph/rcsy.y

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

revision 1.4, Tue Apr 23 23:02:54 2002 UTC revision 1.6, Fri Jul 16 13:07:58 2004 UTC
# Line 78  Line 78 
78  %token <str> tSTRING tREV tID tSYM  %token <str> tSTRING tREV tID tSYM
79    
80    
81  %type <str>     ostr orev oid obranch ocomment oexpand desc  %type <str>     ostr orev oid obranch ocomment oexpand desc idorstr
82  %type <tag>     tag  %type <tag>     tag
83  %type <tags>    tags otags  %type <tags>    tags otags
84  %type <idrev>   idrev  %type <idrev>   idrev
# Line 163  Line 163 
163    
164  delta   : tREV  delta   : tREV
165            tDATE tREV ';'            tDATE tREV ';'
166            tAUTHOR { set_id(); } tID ';'            tAUTHOR { set_author(); } idorstr ';'
167            tSTATE  { set_id(); } oid ';'            tSTATE  { set_id(); } oid ';'
168            tBRANCHES orevs ';'            tBRANCHES orevs ';'
169            tNEXT orev ';'            tNEXT orev ';'
170            ophrases                      { $$ = new_delta($1, $3, $7, $11, $14, $17); }            ophrases                      { $$ = new_delta($1, $3, $7, $11, $14, $17); }
171          ;          ;
172    
173    idorstr : tID                           { $$ = $1; }
174            | tSTRING                       { $$ = $1; }
175            ;
176    
177  desc    : tDESC tSTRING                 { $$ = $2; }  desc    : tDESC tSTRING                 { $$ = $2; }
178          ;          ;
179    
# Line 250  Line 254 
254          | tags                          { $$ = $1; }          | tags                          { $$ = $1; }
255          ;          ;
256    
257  tags    : tag                           { $$ = new_tags($1); }  tags    : tag                           { if($1) $$ = new_tags($1); else $$ = NULL; }
258          | tags tag                      { $$ = add_tags($1, $2); }          | tags tag                      { if($1 && $2) $$ = add_tags($1, $2); else if($2) $$ = new_tags($2); else $$ = $1; }
259          ;          ;
260    
261  tag     : tSYM ':' tREV                 { set_sym(); $$ = new_tag($1, $3); }  tag     : tSYM ':' tREV                 { set_sym(); $$ = new_tag($1, $3); }
262     /* Zap the additional tag-info from CVSNT */
263     /* This is a bit of a hack, but it is necessary to do like this */
264     /* because the parser is not allowed to do any look-ahead on ':'. */
265     /* Otherwise, we would have a tNEWPHRASE hit because we cannot set */
266     /* set_sym() before the lexer gets the next token. */
267            | ':' tREV ':' tSTRING          { set_sym(); $$ = NULL; }
268          ;          ;
269    
270  %%  %%

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

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0