- Revision
- 1076
- Author
- rfscholte
- Date
- 2011-02-23 14:41:59 -0600 (Wed, 23 Feb 2011)
Log Message
Using EnumDeclaration and EnumBody according to JLS
Modified Paths
Diff
Modified: trunk/qdox/src/grammar/parser.y (1075 => 1076)
--- trunk/qdox/src/grammar/parser.y 2011-02-23 20:26:43 UTC (rev 1075) +++ trunk/qdox/src/grammar/parser.y 2011-02-23 20:41:59 UTC (rev 1076) @@ -122,9 +122,7 @@ //// for migration NormalClassDeclaration: class; -EnumDeclaration: enum; - // ----- JAVADOC javadoclist: @@ -440,22 +438,26 @@ // ----- ENUM -enum: enum_definition BRACEOPEN enum_body BRACECLOSE { - builder.endClass(); - fieldType = null; - modifiers.clear(); -}; +// 8.9 Enums +EnumDeclaration: ClassModifiers_opt ENUM IDENTIFIER Interfaces_opt + { cls.lineNumber = line; + cls.modifiers.addAll(modifiers); + cls.name = $3; + cls.type = ClassDef.ENUM; + builder.beginClass(cls); + cls = new ClassDef(); + fieldType = new TypeDef($3, 0); + } EnumBody; -enum_definition: modifiers ENUM IDENTIFIER opt_implements { - cls.lineNumber = line; - cls.modifiers.addAll(modifiers); - cls.name = $3; - cls.type = ClassDef.ENUM; - builder.beginClass(cls); - cls = new ClassDef(); - fieldType = new TypeDef($3, 0); -}; +EnumBody: BRACEOPEN enum_body BRACECLOSE + { builder.endClass(); + fieldType = null; + modifiers.clear(); + }; +ClassModifiers_opt: modifiers; +Interfaces_opt: opt_implements; + enum_body: enum_values | enum_values SEMI members; enum_values: | enum_value | enum_value COMMA enum_values; @@ -513,7 +515,7 @@ constructor | static_block | class | - enum | + EnumDeclaration | SEMI; memberend:
To unsubscribe from this list please visit:
