test/tools/javac/processing/model/6194785/T6194785.java

Print this page




  26  * @bug     6194785
  27  * @summary ParameterDeclaration.getSimpleName does not return actual name from class files
  28  * @author  Peter von der Ah\u00e9
  29  * @compile -g T6194785.java T6194785a.java
  30  * @compile -processor T6194785 foo.T6194785a T6194785.java
  31  */
  32 
  33 import java.util.Set;
  34 import javax.annotation.processing.*;
  35 import javax.lang.model.element.*;
  36 import javax.lang.model.util.*;
  37 import static javax.tools.Diagnostic.Kind.*;
  38 
  39 @SupportedAnnotationTypes("*")
  40 public class T6194785 extends AbstractProcessor {
  41     public boolean process(Set<? extends TypeElement> annotations,
  42                            RoundEnvironment roundEnvironment)
  43     {
  44         final Messager log = processingEnv.getMessager();
  45         final Elements elements = processingEnv.getElementUtils();
  46         class Scan extends ElementScanner6<Void,Void> {
  47             @Override
  48             public Void visitExecutable(ExecutableElement e, Void ignored) {
  49                 for (VariableElement p : e.getParameters())
  50                     if ("arg0".equals(p.getSimpleName().toString()))
  51                         throw new AssertionError(e);
  52                 return null;
  53             }
  54         }
  55         Scan scan = new Scan();
  56         for (Element e : roundEnvironment.getRootElements()) {
  57             scan.scan(e);
  58         }
  59         return true;
  60     }
  61 }


  26  * @bug     6194785
  27  * @summary ParameterDeclaration.getSimpleName does not return actual name from class files
  28  * @author  Peter von der Ah\u00e9
  29  * @compile -g T6194785.java T6194785a.java
  30  * @compile -processor T6194785 foo.T6194785a T6194785.java
  31  */
  32 
  33 import java.util.Set;
  34 import javax.annotation.processing.*;
  35 import javax.lang.model.element.*;
  36 import javax.lang.model.util.*;
  37 import static javax.tools.Diagnostic.Kind.*;
  38 
  39 @SupportedAnnotationTypes("*")
  40 public class T6194785 extends AbstractProcessor {
  41     public boolean process(Set<? extends TypeElement> annotations,
  42                            RoundEnvironment roundEnvironment)
  43     {
  44         final Messager log = processingEnv.getMessager();
  45         final Elements elements = processingEnv.getElementUtils();
  46         class Scan extends ElementScanner7<Void,Void> {
  47             @Override
  48             public Void visitExecutable(ExecutableElement e, Void ignored) {
  49                 for (VariableElement p : e.getParameters())
  50                     if ("arg0".equals(p.getSimpleName().toString()))
  51                         throw new AssertionError(e);
  52                 return null;
  53             }
  54         }
  55         Scan scan = new Scan();
  56         for (Element e : roundEnvironment.getRootElements()) {
  57             scan.scan(e);
  58         }
  59         return true;
  60     }
  61 }