[antlr-interest] Keyword match
Ersin Er
ersin_er at yahoo.com
Wed Aug 24 05:25:24 PDT 2005
Ok, now I have an identifier rule. Do I need a tokens block? As I said,
my program just hangs when i do the identifier block and testLiterals
stuff.
Thanks.
-- Ersin
--- Alexey Demakov <demakov at ispras.ru> wrote:
> If you have no identifier rule in lexer, you should define all
> keywords in lexer rules:
>
> BASE : "base" ;
>
> Otherwise keywords should be in tokens section:
>
> tokens
> {
> BASE = "base";
> }
>
> And use tokens instead of strings in parser:
>
> ss_base :
> BASE l_name=localName
> {
> // do something with l_name
> }
> ;
>
> I beleive that strings in parser rules are processed correctly only
> when
> they are belong to some lexer rule where literals are tested.
>
> Regards,
> Alexey
>
> -----
> Alexey Demakov
> TreeDL: Tree Description Language: http://treedl.sourceforge.net
> RedVerst Group: http://www.unitesk.com
>
> ----- Original Message -----
> From: "Ersin Er" <ersin_er at yahoo.com>
> To: <antlr-interest at antlr.org>
> Sent: Wednesday, August 24, 2005 3:48 PM
> Subject: Re: [antlr-interest] Keyword match
>
>
> > Hi,
> >
> > I have more information about the problem now:
> >
> > If I do not have an identifier rule and if I have keywords in the
> > grammar then the problem I explained in my previous mail (below)
> occurs
> > (and this is normal I think). If I have include the indentifier
> rule in
> > the lexer and if I do the testLiterals stuff and when I try to test
> the
> > parser it just HANGS without any messages.
> >
> > Now, is there any suggestions?
> >
> > -- Ersin
> >
> > --- Ersin Er <ersin_er at yahoo.com> wrote:
> >
> > > Hi all,
> > >
> > > I have problem with keyword in my language. Here is a simple
> > > production
> > > (some action code ommited for briefness):
> > >
> > > ss_base :
> > > "base" l_name=localName
> > > {
> > > // do something with l_name
> > > }
> > > ;
> > >
> > > What ANTLR says about this grammar is:
> > >
> > > "unexpected char 'b'"
> > >
> > > The 'b' here is the 'b' of the "base". I face the same problem
> with
> > > all
> > > my keywords. ANTLR allways complain about the first character of
> any
> > > keyword in the parser productions. I did the testLiterals trick
> but
> > > it
> > > did not help and in fact I do not have an identifier type)
> > >
> > > Can you help please?
> > >
> > > Greetings.
> > >
> > > -- Ersin
> > >
> > >
> > >
> > > __________________________________
> > > Do you Yahoo!?
> > > Yahoo! Mail - Helps protect you from nasty viruses.
> > > http://promotions.yahoo.com/new_mail
> > >
> >
> >
> > --
> > Ersin ER
> > Arastirma Gorevlisi
> > Hacettepe Universitesi
> > Bilgisayar Muhendisligi Bolumu
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam? Yahoo! Mail has the best spam protection around
> > http://mail.yahoo.com
>
>
____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs
More information about the antlr-interest
mailing list