Package-level declarations

Types

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class AutoBind(val inComponent: KClass<*> = Nothing::class, val asTypes: Array<KClass<*>> = [])

Instructs Auto Dagger to automatically bind the annotated type as its parent type.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class AutoBindIntoMap(val inComponent: KClass<*> = Nothing::class, val asTypes: Array<KClass<*>> = [], val bindGenericAs: BindGenericAs = BindGenericAs.ExactType)

A version of AutoBind that binds the object using IntoMap. The object must also be annotated with a MapKey annotated annotation such as StringKey, MapKey, or a custom annotation.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class AutoBindIntoSet(val inComponent: KClass<*> = Nothing::class, val asTypes: Array<KClass<*>> = [], val bindGenericAs: BindGenericAs = BindGenericAs.ExactType)

A version of AutoBind that binds the object using IntoSet.

Link copied to clipboard
class AutoDaggerInitializer @Inject constructor(initializables: Set<@JvmSuppressWildcards Initializable>) : Initializable

A class that can initialize multiple Initializable in order of their priority.

Link copied to clipboard
annotation class AutoInitialize(val priority: Int = defaultPriority)

Marks the given objects as being initializable.

Link copied to clipboard

How generic types are bound when using multibinding such as AutoBindIntoSet or AutoBindIntoMap.

Link copied to clipboard
interface Initializable

An interface used to indicate that initialization isn't done when the object is created but rather when calling initialize.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class OptionallyProvided(val inComponent: KClass<*> = Nothing::class)

Denotes that the annotated type might not be provided to the dependency graph.