Package-level declarations
Types
Annotation to be used in any constructor parameter that is not injectable and will be provided in runtime (Can only be used in a class with BY_NEW scope).
This annotation applies ONLY for interfaces and abstract classes. It annotates the desired interfaces that don't want to add as injectable. Needs to be BINARY to be detected between modules when compiling
Annotation to define the environments that an @Injectable class can be injected to or to define the constructors to be used when injecting an @Injectable class or to define the method to be used when injecting an @InjectableProvider class
Annotation to define that a class can be injected. By default, this annotation adds also as an injectable object all its interfaces (Propagation.ALL) unless otherwise specified Also, if not defined, takes the scope BY_APP by default If you want to exclude some of them, do it through parameter 'exclude'
Annotation to define a class that provides an injectable class This is normally used with external classes, where you don't have the source code to add @Injectable annotation By default, only the provided class is injectable (Propagation.NONE) Also, if not defined, takes the scope BY_APP by default
Annotation to use a specific environment as an implementation of a constructor/method parameter