Package-level declarations

Types

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.PROPERTY])
annotation class InternalAnvilHintMarker

Indicates the annotated property is an anvil hint, used for in-round processing.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class InternalBindingMarker(val originClass: KClass<*>, val isMultibinding: Boolean, val rank: Int = Int.MIN_VALUE, val qualifierKey: String = "")

An internal Anvil API used to propagate binding metadata from contributed bindings. Should not be used directly.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class InternalContributedSubcomponentMarker(val originClass: KClass<*>, val contributor: KClass<*> = Nothing::class, val componentFactory: KClass<*> = Nothing::class)

When using ContributesSubcomponent, we generate some extra information based on the source class.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class InternalMergedTypeMarker(val originClass: KClass<*>, val scope: KClass<*>)

Metadata about the origin of a merged type. Useful for testing and can be discarded in production.