private void validateProvides(Element element) { if (element.getAnnotation(Provides.class) != null && Util.getAnnotation(Module.class, element.getEnclosingElement()) == null) { error("@Provides methods must be declared in modules: " + elementToString(element), element); } }
error("@Inject is not valid on a class: " + elementToString(injectable), injectable); return false; error("Method injection is not supported: " + elementToString(injectable), injectable); return false; error("Can't inject a final field: " + elementToString(injectable), injectable); return false; error("Can't inject a private field: " + elementToString(injectable), injectable); return false; error("Can't inject a private constructor: " + elementToString(injectable), injectable); return false; error("Can't inject a non-static inner class: " + elementToString(injectable), injectableType); return false;
if (!isProvidesMethod(element) && !suppressWarnings) { warning("Dagger will ignore scoping annotations on methods that are not " + "@Provides methods: " + elementToString(element), element); + elementToString(element), element); error("Only one scoping annotation is allowed per element: " + elementToString(element), element);
if (element.getAnnotation(Inject.class) == null && !suppressWarnings) { warning("Dagger will ignore qualifier annotations on fields that are not " + "annotated with @Inject: " + elementToString(element), element); if (!isProvidesMethod(element) && !suppressWarnings) { warning("Dagger will ignore qualifier annotations on methods that are not " + "@Provides methods: " + elementToString(element), element); warning("Dagger will ignore qualifier annotations on parameters that are not " + "@Inject constructor parameters or @Provides method parameters: " + elementToString(element), element); + elementToString(element), element); error("Only one qualifier annotation is allowed per element: " + elementToString(element), element);
default: error("Cannot inject " + elementToString(member), member); break;
default: error("Unexpected @Provides on " + elementToString(providerMethod), providerMethod); continue; error("Modules must be classes: " + elementToString(module), module); continue; error("Modules must not extend from other classes: " + elementToString(module), module);