From 35cf6a1655726e82c3142101e5a93e4113134285 Mon Sep 17 00:00:00 2001 From: Roman Mogylatov Date: Mon, 11 Jan 2021 08:16:53 -0500 Subject: [PATCH] Improve typing --- src/dependency_injector/containers.pyi | 1 + src/dependency_injector/wiring.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dependency_injector/containers.pyi b/src/dependency_injector/containers.pyi index 7ebba297..f202715c 100644 --- a/src/dependency_injector/containers.pyi +++ b/src/dependency_injector/containers.pyi @@ -25,6 +25,7 @@ class Container: provider_type: Type[Provider] = Provider providers: Dict[str, Provider] overridden: Tuple[Provider] + __self__: Provider def __init__(self) -> None: ... def __deepcopy__(self, memo: Optional[Dict[str, Any]]) -> Provider: ... def __setattr__(self, name: str, value: Union[Provider, Any]) -> None: ... diff --git a/src/dependency_injector/wiring.py b/src/dependency_injector/wiring.py index 5cac9da3..b8143bba 100644 --- a/src/dependency_injector/wiring.py +++ b/src/dependency_injector/wiring.py @@ -500,7 +500,7 @@ class ClassGetItemMeta(GenericMeta): class _Marker(Generic[T], metaclass=ClassGetItemMeta): - def __init__(self, provider: Union[providers.Provider, Any]) -> None: + def __init__(self, provider: Union[providers.Provider, Container]) -> None: if _is_declarative_container(provider): provider = provider.__self__ self.provider: providers.Provider = provider