Containers

Containers

The principal object in the Grundzeug Dependency Injection container is the IContainer and its default implementation, Container:

IContainer

Container

Injectors

Instead of injecting the container into your functions and classes, inject Injector to explicitly state that the container is not going to be mutated:

Injector

The default implementation as returned by the containers is the ContainerInjector:

ContainerInjector

Container registrations

ContainerRegistration

RegistrationTypes

InstanceContainerRegistration

ContainerFactoryContainerRegistration

TransientFactoryContainerRegistration

HierarchicalFactoryContainerRegistration

Exceptions

ContainerAlreadyHasRegistrationError

ResolutionFailedError

Common data interfaces

RegistrationKey

Helper classes

The following interfaces and classes are used to implement the indexing syntax used in the ~grundzeug.container.IContainer.

GetBeanProtocol

IContainerResolveIndexer

RegisterInstanceProtocol

IContainerRegisterInstanceIndexer

RegisterFactoryProtocol

IContainerRegisterFactoryIndexer

RegisterTypeProtocol

IContainerRegisterTypeIndexer

ContainerResolveIndexer

ContainerRegisterInstanceIndexer

ContainerRegisterFactoryIndexer

ContainerRegisterTypeIndexer