@Override public Set<Element> process( SetMultimap<Class<? extends Annotation>, Element> elementsByAnnotation) { ImmutableSet.Builder<Element> deferredElements = ImmutableSet.builder(); for (ExecutableElement method : methodsIn(elementsByAnnotation.values())) { try { validator.createIfValid(method).ifPresent(this::generate); } catch (TypeNotPresentException e) { deferredElements.add(method); } } return deferredElements.build(); }
@Override protected Iterable<? extends ProcessingStep> initSteps() { Filer filer = new FormattingFiler(processingEnv.getFiler()); Messager messager = processingEnv.getMessager(); Elements elements = processingEnv.getElementUtils(); Types types = processingEnv.getTypeUtils(); return ImmutableList.of( new AndroidMapKeyValidator(elements, types, messager), new ContributesAndroidInjectorGenerator( new AndroidInjectorDescriptor.Validator(types, elements, messager), useStringKeys(), filer, elements, processingEnv.getSourceVersion())); }
@Override protected Iterable<? extends ProcessingStep> initSteps() { Filer filer = new FormattingFiler(processingEnv.getFiler()); Messager messager = processingEnv.getMessager(); Elements elements = processingEnv.getElementUtils(); Types types = processingEnv.getTypeUtils(); AndroidInjectKeyFinder keyFinder = new AndroidInjectKeyFinder(elements, messager); return ImmutableList.of( keyFinder, new AndroidMapKeyValidator(elements, types, messager), new ContributesAndroidInjectorGenerator( filer, new AndroidInjectorDescriptor.Validator(types, messager, keyFinder))); }
@Override public Set<Element> process( SetMultimap<Class<? extends Annotation>, Element> elementsByAnnotation) { for (ExecutableElement method : methodsIn(elementsByAnnotation.values())) { validator.createIfValid(method).ifPresent(this::generate); } return ImmutableSet.of(); }