[antlr-interest] Matching keywords in the lexer
Zheng, Xiaoran
xzheng at doubleclick.net
Wed Aug 9 14:31:18 PDT 2006
I defined this in my lexer to distinguish between the keyword "include"
with other identifiers.
protected
ID options{testLiterals=true;/*I have other keywords defined in the
parser*/}
: ('_'|'a'..'z'|'A'..'Z')('_'|'a'..'z'|'A'..'Z'|'0'..'9')*
;
protected
INCLUDE : ("include" STRING SEMI) {/*I will add the code to deal
w/ this later*/}
;
ID_OR_INCLUDE
: (ID)=>ID {$setType(ID);}
| INCLUDE
;
Is this correct? If so, it doesn't seem to work. What am I doing wrong?
Any help would be greatly appreciated. Thanks.
-----Original Message-----
From: antlr-interest-bounces at antlr.org
[mailto:antlr-interest-bounces at antlr.org] On Behalf Of Zheng, Xiaoran
Sent: Wednesday, August 09, 2006 4:46 PM
To: Antlr Interest
Subject: [antlr-interest] Matching keywords in the lexer
Hi, I am still working on the problem of nested include files.
I am trying to match "keyword filename;", keyword clashes with the
identifier rule. Is there anyway for me to resolve this in the lexer and
do a "keyword filename;" match?
Thanks.
-----Original Message-----
From: antlr-interest-bounces at antlr.org
[mailto:antlr-interest-bounces at antlr.org] On Behalf Of Zheng, Xiaoran
Sent: Wednesday, August 09, 2006 4:32 PM
To: Antlr Interest
Subject: RE: [antlr-interest] java.util.NoSuchElementException
The exception is thrown from "uponEOF" which I defined in the lexer.
-----Original Message-----
From: antlr-interest-bounces at antlr.org
[mailto:antlr-interest-bounces at antlr.org] On Behalf Of Terence Parr
Sent: Wednesday, August 09, 2006 4:29 PM
To: Antlr Interest
Subject: Re: [antlr-interest] java.util.NoSuchElementException
On Aug 9, 2006, at 1:22 PM, Zheng, Xiaoran wrote:
> When I have a grammar defined as follows:
>
> A : B*C*
> B : ...
> C : ...
>
> why do I get an NoSuchElementException?
what version? you missing a semicolon? A complete grammar please.
Ter
More information about the antlr-interest
mailing list