src/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java

Print this page




 212 
 213                 // Print superclass information if informative
 214                 if (kind == CLASS) {
 215                     TypeMirror supertype = e.getSuperclass();
 216                     if (supertype.getKind() != TypeKind.NONE) {
 217                         TypeElement e2 = (TypeElement)
 218                             ((DeclaredType) supertype).asElement();
 219                         if (e2.getSuperclass().getKind() != TypeKind.NONE)
 220                             writer.print(" extends " + supertype);
 221                     }
 222                 }
 223 
 224                 printInterfaces(e);
 225             }
 226             writer.println(" {");
 227             indentation++;
 228 
 229             if (kind == ENUM) {
 230                 List<Element> enclosedElements =
 231                     new ArrayList<Element>(e.getEnclosedElements());

 232                 List<Element> enumConstants = new ArrayList<Element>();
 233                 for(Element element : enclosedElements) {
 234                     if (element.getKind() == ENUM_CONSTANT)
 235                         enumConstants.add(element);
 236                 }
 237 
 238                 int i;
 239                 for(i = 0; i < enumConstants.size()-1; i++) {
 240                     this.visit(enumConstants.get(i), true);
 241                     writer.print(",");
 242                 }
 243                 if (i >= 0 ) {
 244                     this.visit(enumConstants.get(i), true);
 245                     writer.print(";");
 246                 }
 247 
 248                 enclosedElements.removeAll(enumConstants);


 249                 for(Element element : enclosedElements)
 250                     this.visit(element);
 251             } else {
 252                 for(Element element : e.getEnclosedElements())
 253                     this.visit(element);
 254             }
 255 
 256             indentation--;
 257             indent();
 258             writer.println("}");
 259             return this;
 260         }
 261 
 262         @Override
 263         public PrintingElementVisitor visitVariable(VariableElement e, Boolean newLine) {
 264             ElementKind kind = e.getKind();
 265             defaultAction(e, newLine);
 266 
 267             if (kind == ENUM_CONSTANT)
 268                 writer.print(e.getSimpleName());




 212 
 213                 // Print superclass information if informative
 214                 if (kind == CLASS) {
 215                     TypeMirror supertype = e.getSuperclass();
 216                     if (supertype.getKind() != TypeKind.NONE) {
 217                         TypeElement e2 = (TypeElement)
 218                             ((DeclaredType) supertype).asElement();
 219                         if (e2.getSuperclass().getKind() != TypeKind.NONE)
 220                             writer.print(" extends " + supertype);
 221                     }
 222                 }
 223 
 224                 printInterfaces(e);
 225             }
 226             writer.println(" {");
 227             indentation++;
 228 
 229             if (kind == ENUM) {
 230                 List<Element> enclosedElements =
 231                     new ArrayList<Element>(e.getEnclosedElements());
 232                 // Handle any enum constants specially before other entities.
 233                 List<Element> enumConstants = new ArrayList<Element>();
 234                 for(Element element : enclosedElements) {
 235                     if (element.getKind() == ENUM_CONSTANT)
 236                         enumConstants.add(element);
 237                 }
 238                 if (!enumConstants.isEmpty()) {
 239                     int i;
 240                     for(i = 0; i < enumConstants.size()-1; i++) {
 241                         this.visit(enumConstants.get(i), true);
 242                         writer.print(",");
 243                     }

 244                     this.visit(enumConstants.get(i), true);
 245                     writer.println(";\n");

 246 
 247                     enclosedElements.removeAll(enumConstants);
 248                 }
 249 
 250                 for(Element element : enclosedElements)
 251                     this.visit(element);
 252             } else {
 253                 for(Element element : e.getEnclosedElements())
 254                     this.visit(element);
 255             }
 256 
 257             indentation--;
 258             indent();
 259             writer.println("}");
 260             return this;
 261         }
 262 
 263         @Override
 264         public PrintingElementVisitor visitVariable(VariableElement e, Boolean newLine) {
 265             ElementKind kind = e.getKind();
 266             defaultAction(e, newLine);
 267 
 268             if (kind == ENUM_CONSTANT)
 269                 writer.print(e.getSimpleName());