diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/infini/injector.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/infini/injector.py b/src/infini/injector.py index 73d96566..62032bb5 100644 --- a/src/infini/injector.py +++ b/src/infini/injector.py @@ -28,7 +28,11 @@ class Injector: else: param_types = (origin,) - if type(parameters[param_name]) not in param_types: + if not any( + isinstance(parameters[param_name], param_type) + for param_type in param_types + if not isinstance(param_type, typing._SpecialForm) + ): raise ValueError( f"Parameter with name '{param_name}' has a mismatch type, " f"expected '{param.annotation!r}' but got '{type(parameters[param_name])!r}'." |
