injector library

Classes

Dependency
An value representing the type of an value which is injectable, and it's injected, concrete form.
DependencyGraphNode
An GraphNode for an dependency graph constructed from an DependencyTreeNode.
DependencyTreeNode
An TreeNode for an dependency tree constructed from an Consumer or an InjectableConsumer.
IAmAnDependencyTreeNode
An interface for classes that can display child DependencyTreeNodes on the dependency tree.
ICreateAnScope
An interface for classes that can create an scope for themselves.
IDebugAnScope
An interface for objects that can have their InjectorScope overriden for debug purposes.
IInjectDependencies
An interface for classes that can use an Injector to use injected dependencies.
Injector
An class used to access instances of an specified type without knowing the concrete type or value.
InjectorScope
An class used to access instances of an specified type without knowing the concrete type or value.
InjectorScopeBuilder
An object which can create an InjectorScope after adding the needed types.
IScopeProxy
An interface for classes that may transport an Injector down an dependency tree automatically.
ScopeTreeNode
An specialized TreeNode for working with an InjectorScope tree.

Enums

ScopeOverridingMode
How the old InjectorScope will be overriden with an new scope in IDebugAnScope.debugOverrideScope.
ValueKind

Mixins

Consumer
An mixin for values that can be accessed only via Dependency Injection with Injector and have other dependencies.
DetachedConsumer
An mixin for values that can be accessed without Dependency Injection, but need to use Dependencies from an Injector. Use it with the Injector.root scope.
InjectableProxy
An mixin for values that are injected and may have Consumer or other InjectableProxy children which are not injected directly.

Functions

unreachable([Object? _]) → Never