langtools/src/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java
changeset 5218 066372a81ca9
parent 3763 be9e8bdd7ead
child 5520 86e4b9a9da40
equal deleted inserted replaced
5217:e20e20050405 5218:066372a81ca9
   227             indentation++;
   227             indentation++;
   228 
   228 
   229             if (kind == ENUM) {
   229             if (kind == ENUM) {
   230                 List<Element> enclosedElements =
   230                 List<Element> enclosedElements =
   231                     new ArrayList<Element>(e.getEnclosedElements());
   231                     new ArrayList<Element>(e.getEnclosedElements());
       
   232                 // Handle any enum constants specially before other entities.
   232                 List<Element> enumConstants = new ArrayList<Element>();
   233                 List<Element> enumConstants = new ArrayList<Element>();
   233                 for(Element element : enclosedElements) {
   234                 for(Element element : enclosedElements) {
   234                     if (element.getKind() == ENUM_CONSTANT)
   235                     if (element.getKind() == ENUM_CONSTANT)
   235                         enumConstants.add(element);
   236                         enumConstants.add(element);
   236                 }
   237                 }
   237 
   238                 if (!enumConstants.isEmpty()) {
   238                 int i;
   239                     int i;
   239                 for(i = 0; i < enumConstants.size()-1; i++) {
   240                     for(i = 0; i < enumConstants.size()-1; i++) {
       
   241                         this.visit(enumConstants.get(i), true);
       
   242                         writer.print(",");
       
   243                     }
   240                     this.visit(enumConstants.get(i), true);
   244                     this.visit(enumConstants.get(i), true);
   241                     writer.print(",");
   245                     writer.println(";\n");
   242                 }
   246 
   243                 if (i >= 0 ) {
   247                     enclosedElements.removeAll(enumConstants);
   244                     this.visit(enumConstants.get(i), true);
   248                 }
   245                     writer.print(";");
   249 
   246                 }
       
   247 
       
   248                 enclosedElements.removeAll(enumConstants);
       
   249                 for(Element element : enclosedElements)
   250                 for(Element element : enclosedElements)
   250                     this.visit(element);
   251                     this.visit(element);
   251             } else {
   252             } else {
   252                 for(Element element : e.getEnclosedElements())
   253                 for(Element element : e.getEnclosedElements())
   253                     this.visit(element);
   254                     this.visit(element);