[antlr-interest] about parse key words
David-Sarah Hopwood
david-sarah at jacaranda.org
Fri Nov 6 12:21:49 PST 2009
Renee Luo wrote:
> Hi there,
>
> I have a problem with parse key words. Like in PL/SQL "EXIT" is key word.
> But some variable names also include this key word.
This is quite a common requirement. The approach I use is to declare a
keyword rule that has all keyword tokens as alternatives, and then make
the identifier rule explicitly allow either a keyword or a
non-keyword-identifier:
DECLARE : 'DECLARE' ;
BEGIN : 'BEGIN' ;
...
keyword : DECLARE | BEGIN | ... ;
NonKeywordIdentifier : IdentifierStart IdentifierContinue* ;
identifier : NonKeywordIdentifier | keyword ;
Note that this may result in grammar ambiguities unless the language has
been very carefully designed to avoid them. Some of these ambiguities might
have to be resolved using predicates.
--
David-Sarah Hopwood ⚥ http://davidsarah.livejournal.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 292 bytes
Desc: OpenPGP digital signature
Url : http://www.antlr.org/pipermail/antlr-interest/attachments/20091106/baac4119/attachment.bin
More information about the antlr-interest
mailing list