< prev index next >

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

Print this page

483 
484             switch (kind) {
485             case ANNOTATION_TYPE:
486             case INTERFACE:
487                 modifiers.remove(Modifier.ABSTRACT);
488                 break;
489 
490             case ENUM:
491                 modifiers.remove(Modifier.FINAL);
492                 modifiers.remove(Modifier.ABSTRACT);
493                 modifiers.remove(Modifier.SEALED);
494                 break;
495 
496             case RECORD:
497                 modifiers.remove(Modifier.FINAL);
498                 break;
499 
500             case METHOD:
501             case FIELD:
502                 Element enclosingElement = e.getEnclosingElement();
503                 if (enclosingElement != null &&
504                     enclosingElement.getKind().isInterface()) {
505                     modifiers.remove(Modifier.PUBLIC);
506                     modifiers.remove(Modifier.ABSTRACT); // only for methods
507                     modifiers.remove(Modifier.STATIC);   // only for fields
508                     modifiers.remove(Modifier.FINAL);    // only for fields



509                 }
510                 break;
511 
512             }
513             if (!modifiers.isEmpty()) {
514                 writer.print(modifiers.stream()
515                              .map(Modifier::toString)
516                              .collect(Collectors.joining(" ", "", " ")));
517             }
518         }
519 
520         private void printFormalTypeParameters(Parameterizable e,
521                                                boolean pad) {
522             List<? extends TypeParameterElement> typeParams = e.getTypeParameters();
523             if (!typeParams.isEmpty()) {
524                 writer.print(typeParams.stream()
525                              .map(tpe -> annotationsToString(tpe) + tpe.toString() + printTypeVariableBoundsIfNeeded(tpe))
526                              .collect(Collectors.joining(", ", "<", ">")));
527                 if (pad)
528                     writer.print(" ");

483 
484             switch (kind) {
485             case ANNOTATION_TYPE:
486             case INTERFACE:
487                 modifiers.remove(Modifier.ABSTRACT);
488                 break;
489 
490             case ENUM:
491                 modifiers.remove(Modifier.FINAL);
492                 modifiers.remove(Modifier.ABSTRACT);
493                 modifiers.remove(Modifier.SEALED);
494                 break;
495 
496             case RECORD:
497                 modifiers.remove(Modifier.FINAL);
498                 break;
499 
500             case METHOD:
501             case FIELD:
502                 Element enclosingElement = e.getEnclosingElement();
503                 if (enclosingElement != null) {
504                     if (enclosingElement.getKind().isInterface()) {
505                         modifiers.remove(Modifier.PUBLIC);
506                         modifiers.remove(Modifier.ABSTRACT); // only for methods
507                         modifiers.remove(Modifier.STATIC);   // only for fields
508                         modifiers.remove(Modifier.FINAL);    // only for fields
509                     } else if (enclosingElement.getKind() == RECORD) {
510                         modifiers.remove(Modifier.STRICTFP);
511                     }
512                 }
513                 break;
514 
515             }
516             if (!modifiers.isEmpty()) {
517                 writer.print(modifiers.stream()
518                              .map(Modifier::toString)
519                              .collect(Collectors.joining(" ", "", " ")));
520             }
521         }
522 
523         private void printFormalTypeParameters(Parameterizable e,
524                                                boolean pad) {
525             List<? extends TypeParameterElement> typeParams = e.getTypeParameters();
526             if (!typeParams.isEmpty()) {
527                 writer.print(typeParams.stream()
528                              .map(tpe -> annotationsToString(tpe) + tpe.toString() + printTypeVariableBoundsIfNeeded(tpe))
529                              .collect(Collectors.joining(", ", "<", ">")));
530                 if (pad)
531                     writer.print(" ");
< prev index next >