[antlr-interest] enums in v4 ANTLR Java code generation considered useless
Terence Parr
parrt at cs.usfca.edu
Tue May 18 13:42:32 PDT 2010
A lot of you have wondered why I'd don't use enum types for token types in the generated Java-based parsers:
enum TokenType { ID(3), INT(4) };
I gave it my best shot but once again I found that enums just don't seem to work for me. For example, without inheritance how can I define the match method?
void match(TokenType t) {....}
Unfortunately this is in the superclass not the generated class so TokenType is not yet defined. Without inheritance, I have to use match(int). That means that there's no point in using the enum.
But, you say, I should be using generics on the parser to pass in the token type enum type. Fair enough, And I'll try once I tried to generic'ize the v3 runtime for v4. We've had some discussion of this on the dev list.
Ter
More information about the antlr-interest
mailing list