Skip to content

Latest commit

 

History

History
58 lines (32 loc) · 3.27 KB

File metadata and controls

58 lines (32 loc) · 3.27 KB
graph LR
    injector_Module["injector.Module"]
    injector_Binder["injector.Binder"]
    injector_Binding["injector.Binding"]
    injector_Provider["injector.Provider"]
    injector_Module -- "configures" --> injector_Binder
    injector_Binder -- "creates" --> injector_Binding
    injector_Binder -- "instantiates" --> injector_Provider
Loading

CodeBoardingDemoContact

Details

The Binding & Module Configuration subsystem is the foundational layer where users define and register how dependencies are mapped to their concrete implementations within the injector framework. It provides the necessary interfaces and mechanisms for declaring these mappings and preparing them for the dependency resolution process.

injector.Module

Serves as the primary configuration unit for users. It provides a structured way to declare how dependencies are mapped to their concrete implementations or providers. Users extend Module and implement its configure method to define a set of related dependency bindings.

Related Classes/Methods:

injector.Binder

Acts as the central registry and orchestrator for dependency bindings. It is responsible for receiving, storing, and managing the lifecycle of binding declarations, translating them into concrete mapping rules that the injector can use for dependency resolution.

Related Classes/Methods:

injector.Binding

Represents the actual mapping rules or immutable representations of the dependency mappings. It encapsulates the "what" (the dependency) and the "how" (the provider or concrete implementation) of a single dependency relationship.

Related Classes/Methods:

injector.Provider

Encapsulates the logic for creating bound instances. This can be a factory function, a class type, or a pre-existing instance, providing a unified interface for the Injector to obtain dependency instances.

Related Classes/Methods: