In javac, @XArgsConstructor on enums was not forcing the generated constructor to be private (as all enum constructors have to be).

Fixes issue #186
This commit is contained in:
Philipp Eichhorn authored and Reinier Zwitserloot committed 2011-01-24 08:37:51 +01:00
1 parent c305e2c86f
commit 1bfe6ee1a5
1 file changed
+3
@@ -208,6 +208,9 @@ public class HandleConstructor {
private JCMethodDecl createConstructor(AccessLevel level, JavacNode typeNode, List<JavacNode> fields, boolean suppressConstructorProperties) {
TreeMaker maker = typeNode.getTreeMaker();
boolean isEnum = (((JCClassDecl) typeNode.get()).mods.flags & Flags.ENUM) != 0;
if (isEnum) level = AccessLevel.PRIVATE;
ListBuffer<JCStatement> nullChecks = ListBuffer.lb();
ListBuffer<JCStatement> assigns = ListBuffer.lb();
ListBuffer<JCVariableDecl> params = ListBuffer.lb();