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

Print this page

        

@@ -145,21 +145,34 @@
             super(defaultSet);
             this.typeUtil = typeUtil;
         }
 
         @Override
+        public Set<Element> visitType(TypeElement e, DeclaredType p) {
+            // Type parameters are not considered to be enclosed by a type
+            scan(e.getTypeParameters(), p)
+            return scan(e.getEnclosedElements(), p);
+        }
+
+        @Override
+        public Set<Element> visitExecutable(ExecutableElement e, DeclaredType p) {
+            // Type parameters are not considered to be enclosed by an executable
+            scan(e.getTypeParameters(), p)
+            return scan(e.getEnclosedElements(), p);
+        }
+
+        @Override
         public Set<Element> scan(Element e, DeclaredType p) {
             java.util.List<? extends AnnotationMirror> annotationMirrors =
                 processingEnv.getElementUtils().getAllAnnotationMirrors(e);
             for (AnnotationMirror annotationMirror : annotationMirrors) {
                 if (typeUtil.isSameType(annotationMirror.getAnnotationType(), p))
                     annotatedElements.add(e);
             }
             e.accept(this, p);
             return annotatedElements;
         }
-
     }
 
     /**
      * {@inheritdoc}
      */