Metadata-Version: 1.0
Name: dependencyinjection
Version: 0.1.2.0
Summary: UNKNOWN
Home-page: https://github.com/Cologler/dependencyinjection-python
Author: cologler
Author-email: skyoflw@gmail.com
License: MIT
Description-Content-Type: UNKNOWN
Description: # dependency injection
        
        A dependency injection framework for python.
        
        Just like `Microsoft.Extensions.DependencyInjection`.
        
        ## Usage
        
        ``` py
        class A:
            pass
        
        class B:
            def __init__(self, a: A):
                assert isinstance(a, A)
        
        import dependencyinjection as di
        
        service = di.Services()
        service.scoped(A)
        service.singleton(B)
        provider = service.build()
        assert isinstance(provider.get(A), A)
        assert isinstance(provider.get(B), B)
        
        with provider.scope() as scoped_provider:
            assert provider.get(A) is provider.get(A)
            assert scoped_provider.get(B) is scoped_provider.get(B)
            assert provider.get(B) is scoped_provider.get(B)
            assert not (provider.get(A) is scoped_provider.get(A))
        ```
        
Keywords: python,dependencyinjection,di,ioc
Platform: UNKNOWN
