[antlr-interest] Clarifications on grammar rules.

Bharath S payasam79 at yahoo.com
Wed Apr 7 06:24:56 PDT 2004


Hi Ter,

I need to have a rule called time units, lets say,
that can be any unit (seconds or days or minutes..).
----------------------------
Test: "Time:"(Secs|Days|mins|hours);
----------------------------
is required for the same purpose. If I have "Test" as
my lexer rule, I want the user to enter any time unit
and I should be able to parse it and print out a
result that looks like:
___________________________
Time: 25s 
(or)
Time: 12d
---------------------------

and so on. Also each of the time units work perfectly
when I test them alone.

Thanks Ter.

--- Terence Parr <parrt at cs.usfca.edu> wrote:
> 
> On Apr 6, 2004, at 2:08 PM, Bharath S wrote:
> > I have a rule of the form:
> > ----------------------------------------
> > Time: ('0'..'9')+
> >       ('d'{$setType(Days);} | 's'{$setType(Secs);}
> >       | {$setType(INT);}) ;
> >
> > and
> > -------------------------
> > protected Days: INT('d');
> > protected Secs: INT('s');
> > protected INT: ('0'..'9')+;
> > ---------------------------
> > When I try "Test: Secs|Days", I get a
> non-determinism
> > warning and it makes sense because both rules have
> > common left prefixes. However, I have no clue to
> how I
> > can fix it. If I write a separate rule to remove
> > common prefixes in "Secs" and "Days", it conflicts
> > with the above rule, "Time". Am I missing
> something
> > obvious?
> 
> Hi.
> 
> I'm not sure what you are trying to match here. 
> What do you mean here:
> 
> > When I try "Test: Secs|Days", I get a
> non-determinism
> 
> Thanks,
> Ter
> --
> Professor Comp. Sci., University of San Francisco
> Creator, ANTLR Parser Generator,
> http://www.antlr.org
> Cofounder, http://www.jguru.com
> Cofounder, http://www.knowspam.net enjoy email
> again!
> Cofounder, http://www.peerscope.com pure link
> sharing
> 
> 
> 
> 
> 
>  
> Yahoo! Groups Links
> 
> 
>      antlr-interest-unsubscribe at yahoogroups.com
> 
>  
> 


=====
Bharath Sundararaman
Graduate Assistant, CAHS.
(312)-5606532 (M)
http://www.cs.uic.edu/~bsundara

__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/


 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
     http://groups.yahoo.com/group/antlr-interest/

<*> To unsubscribe from this group, send an email to:
     antlr-interest-unsubscribe at yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:
     http://docs.yahoo.com/info/terms/
 



More information about the antlr-interest mailing list