aboutsummaryrefslogtreecommitdiffstats
path: root/mitmproxy/utils
diff options
context:
space:
mode:
authorMatthew Shao <me@matshao.com>2017-06-13 23:21:52 +0800
committerMatthew Shao <me@matshao.com>2017-06-13 23:22:43 +0800
commit1177e6d90777da92c72a1e88de93312f2ca1e6ff (patch)
treed3af4078344140a0231def5beaaa6b4c6e61c91c /mitmproxy/utils
parent2c0f6c202321a9d332dbe0181d319a3be4fd2614 (diff)
downloadmitmproxy-1177e6d90777da92c72a1e88de93312f2ca1e6ff.tar.gz
mitmproxy-1177e6d90777da92c72a1e88de93312f2ca1e6ff.tar.bz2
mitmproxy-1177e6d90777da92c72a1e88de93312f2ca1e6ff.zip
Add typesepc_to_str function to mitmproxy/utils/typechck.py
Diffstat (limited to 'mitmproxy/utils')
-rw-r--r--mitmproxy/utils/typecheck.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/mitmproxy/utils/typecheck.py b/mitmproxy/utils/typecheck.py
index a5f27fee..ed58182d 100644
--- a/mitmproxy/utils/typecheck.py
+++ b/mitmproxy/utils/typecheck.py
@@ -98,3 +98,15 @@ def check_option_type(name: str, value: typing.Any, typeinfo: typing.Any) -> Non
return
elif not isinstance(value, typeinfo):
raise e
+
+
+def typespec_to_str(typespec: typing.Any) -> str:
+ if typespec in (str, int, bool):
+ t = typespec.__name__
+ elif typespec == typing.Optional[str]:
+ t = 'Union'
+ elif typespec == typing.Sequence[str]:
+ t = 'Sequence'
+ else:
+ raise NotImplementedError
+ return t