aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/infini/injector.py6
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}'."