diff options
author | Matthew Shao <me@matshao.com> | 2017-06-13 23:21:52 +0800 |
---|---|---|
committer | Matthew Shao <me@matshao.com> | 2017-06-13 23:22:43 +0800 |
commit | 1177e6d90777da92c72a1e88de93312f2ca1e6ff (patch) | |
tree | d3af4078344140a0231def5beaaa6b4c6e61c91c /mitmproxy/utils | |
parent | 2c0f6c202321a9d332dbe0181d319a3be4fd2614 (diff) | |
download | mitmproxy-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.py | 12 |
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 |