IdentifierResolver

interface IdentifierResolver<T : Any>

A resolver is an object that helps resolve an identifier into an actual component.

The implementation dictates how such a component is retrieved, created, etc.

Inheritors

Properties

Link copied to clipboard
abstract val requirements: List<Identifier<*>>

The requirements for this resolver, i.e. the identifiers that this resolver needs from the components argument of resolve. This information is used for dependency analysis to properly "link" components that are resolved against during resolution, such as with aliases.

Functions

Link copied to clipboard
abstract fun resolve(requester: Any?, components: EnvironmentComponents): T

Resolve using the given components. The components may be used in case the resolver requires more complicated use cases.