summaryrefslogtreecommitdiff
path: root/puzzles/50_typevar_constrained.py
diff options
context:
space:
mode:
Diffstat (limited to 'puzzles/50_typevar_constrained.py')
-rw-r--r--puzzles/50_typevar_constrained.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/puzzles/50_typevar_constrained.py b/puzzles/50_typevar_constrained.py
new file mode 100644
index 0000000..50ce10a
--- /dev/null
+++ b/puzzles/50_typevar_constrained.py
@@ -0,0 +1,9 @@
+from typing import TypeVar, Any, Union
+
+V = TypeVar("V", str, bytes)
+
+def check_v(x: Union[V, list[V]]) -> V:
+ raise NotImplementedError()
+
+def foo(a: list[Any]):
+ check_v(a)