for every type in types that is a class and that is annotated with anno , either directly or by inheritance , add that type to result . recursively descend on each types 's child classes as well . concode_field_sep CompilationUnitDeclaration[] _units concode_elem_sep Set<Element> _rootElements concode_elem_sep BaseProcessingEnvImpl _processingEnv concode_elem_sep Factory _factory concode_elem_sep ReferenceBinding[] _binaryTypes concode_elem_sep ManyToMany<TypeElement,Element> _annoToUnit concode_elem_sep boolean _isLastRound concode_field_sep Set<? extends Element> getRootElements concode_elem_sep Set<? extends Element> getElementsAnnotatedWith concode_elem_sep Set<? extends Element> getElementsAnnotatedWith concode_elem_sep void collectAnnotations concode_elem_sep boolean errorRaised concode_elem_sep boolean inheritsAnno concode_elem_sep Set<TypeElement> getRootAnnotations concode_elem_sep boolean processingOver
void function ( ReferenceBinding arg0 , ReferenceBinding arg1 , Set < Element > arg2 ) { if ( arg1 . isClass ( ) ) { if ( inheritsAnno ( arg1 , arg0 ) ) { arg2 . add ( _factory . newElement ( arg1 ) ) ; } } for ( ReferenceBinding loc0 : arg1 . memberTypes ( ) ) { addAnnotatedElements ( arg0 , loc0 , arg2 ) ; } }