}
public Node createEnumDeclaration(Node modifiers, Node name, Node body, List<Node> addons) {
EnumDeclaration decl = new EnumDeclaration();
decl.astName(createIdentifierIfNeeded(name, currentPos())).rawBody(body);
if (modifiers != null) decl.astModifiers(createModifiersIfNeeded(modifiers, currentPos()));
if (addons != null) for (Node n : addons) {
//if (n instanceof ExtendsClause) //TODO add error node: implements not allowed here.
if (n instanceof TemporaryNode.ImplementsClause) {
//if (!decl.implementing().isEmpty()) //TODO add error node: multiple implements clauses.
List<Node> interfaces = ((TemporaryNode.ImplementsClause)n).superInterfaces;