allProviders

inline fun <T : Any> DIAware.allProviders(tag: Any? = null): LazyDelegate<List<() -> T>>

Gets all providers that match the the given return type and tag.

T generics will be erased!

Return

A list of providers of T.

Parameters

T

The type of object to retrieve with the providers.

tag

The bound tag, if any.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <A : Any, T : Any> DIAware.allProviders(tag: Any? = null, arg: A): LazyDelegate<List<() -> T>>

Gets all providers that match the the given return type and tag, curried from factories that take an argument A.

A & T generics will be erased!

Return

A list of providers of T.

Parameters

A

The type of argument the curried factories take.

T

The type of object to retrieve with the providers.

tag

The bound tag, if any.

arg

The argument that will be given to the factory when curried.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <A, T : Any> DIAware.allProviders(tag: Any? = null, arg: Typed<A>): LazyDelegate<List<() -> T>>

Gets all providers that match the the given return type and tag, curried from factories that take an argument A.

The argument type is extracted from the Typed.type of the argument.

A & T generics will be erased!

Return

A list of providers of T.

Parameters

A

The type of argument the curried factories take.

T

The type of object to retrieve with the providers.

tag

The bound tag, if any.

arg

The argument that will be given to the factory when curried.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <A : Any, T : Any> DIAware.allProviders(tag: Any? = null, noinline fArg: () -> A): LazyDelegate<List<() -> T>>

Gets all providers that match the the given return type and tag, curried from factories that take an argument A.

A & T generics will be erased!

Return

A list of providers of T.

Parameters

A

The type of argument the curried factories take.

T

The type of object to retrieve with the providers.

tag

The bound tag, if any.

fArg

A function that returns the argument that will be given to the factory when curried.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <T : Any> DirectDIAware.allProviders(tag: Any? = null): List<() -> T>

Gets all providers that can return a T for the given type and tag.

T generics will be erased.

Return

A list of matching providers of T.

Parameters

T

The type of object to retrieve with the returned factory.

tag

The bound tag, if any.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <A : Any, T : Any> DirectDIAware.allProviders(tag: Any? = null, arg: A): List<() -> T>

Gets all providers that can return a T for the given type and tag, curried from factories for the given argument.

A & T generics will be erased.

Return

A list of matching providers of T.

Parameters

A

The type of argument the returned factory takes.

T

The type of object to retrieve with the returned factory.

tag

The bound tag, if any.

arg

The argument that will be given to the factory when curried.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <A, T : Any> DirectDIAware.allProviders(tag: Any? = null, arg: Typed<A>): List<() -> T>

Gets all providers that can return a T for the given type and tag, curried from factories for the given argument.

The argument type is extracted from the Typed.type of the argument.

A & T generics will be erased.

Return

A list of matching providers of T.

Parameters

A

The type of argument the returned factory takes.

T

The type of object to retrieve with the returned factory.

tag

The bound tag, if any.

arg

The argument that will be given to the factory when curried.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.


inline fun <A : Any, T : Any> DirectDIAware.allProviders(tag: Any? = null, noinline fArg: () -> A): List<() -> T>

Gets all providers that can return a T for the given type and tag, curried from factories for the given argument.

A & T generics will be erased.

Return

A list of matching providers of T.

Parameters

A

The type of argument the returned factory takes.

T

The type of object to retrieve with the returned factory.

tag

The bound tag, if any.

fArg

A function that returns the argument that will be given to the factory when curried.

Throws

DI.DependencyLoopException

When calling the factory, if the value construction triggered a dependency loop.