summaryrefslogtreecommitdiff
path: root/puzzles/50_typevar_constrained.py
diff options
context:
space:
mode:
authorMartin Fischer <martin@push-f.com>2022-02-24 08:03:07 +0100
committerMartin Fischer <martin@push-f.com>2022-02-24 08:03:07 +0100
commitc0db4ed95908c0774815da22d4e810c2a5a7a266 (patch)
tree830aaa3f3f2406b98acb59b67b25e7d02bafb9b0 /puzzles/50_typevar_constrained.py
parent7c914668646504077caae217ca13332f6244f7d9 (diff)
prefix numbers to puzzles
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)