2
2
3
3
import asyncio
4
4
import collections.abc
5
- import functools
6
5
import inspect
7
6
import types
8
7
9
- from . import providers
10
- from .wiring import _Marker, PatchedCallable
8
+ from .wiring import _Marker
11
9
12
- from .providers cimport Provider
10
+ from .providers cimport Provider, Resource
13
11
14
12
15
- def _sync_inject (object fn , tuple args , dict kwargs , dict injections , dict closings ):
13
+ def _sync_inject (object fn , tuple args , dict kwargs , dict injections , dict closings , / ):
16
14
cdef object result
17
15
cdef dict to_inject
18
16
cdef object arg_key
@@ -29,14 +27,14 @@ def _sync_inject(object fn, tuple args, dict kwargs, dict injections, dict closi
29
27
for arg_key, provider in closings.items():
30
28
if arg_key in kwargs and not isinstance (kwargs[arg_key], _Marker):
31
29
continue
32
- if not isinstance (provider, providers. Resource):
30
+ if not isinstance (provider, Resource):
33
31
continue
34
32
provider.shutdown()
35
33
36
34
return result
37
35
38
36
39
- async def _async_inject(object fn, tuple args, dict kwargs, dict injections, dict closings):
37
+ async def _async_inject(object fn, tuple args, dict kwargs, dict injections, dict closings, / ):
40
38
cdef object result
41
39
cdef dict to_inject
42
40
cdef list to_inject_await = []
@@ -66,7 +64,7 @@ async def _async_inject(object fn, tuple args, dict kwargs, dict injections, dic
66
64
for arg_key, provider in closings.items():
67
65
if arg_key in kwargs and isinstance (kwargs[arg_key], _Marker):
68
66
continue
69
- if not isinstance (provider, providers. Resource):
67
+ if not isinstance (provider, Resource):
70
68
continue
71
69
shutdown = provider.shutdown()
72
70
if _isawaitable(shutdown):
0 commit comments