Recursively resolve PEP 585 builtins

This commit is contained in:
James 2021-08-01 18:53:00 +01:00 committed by GitHub
parent 451811c40c
commit a30f2b99c3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -121,7 +121,10 @@ def restify(cls: Optional[Type]) -> str:
else:
return ' | '.join(restify(a) for a in cls.__args__)
elif cls.__module__ in ('__builtin__', 'builtins'):
return ':class:`%s`' % cls.__name__
if hasattr(cls, '__args__'):
return ':class:`%s`\\[%s]' % (cls.__name__, ', '.join(restify(arg) for arg in cls.__args__))
else:
return ':class:`%s`' % cls.__name__
else:
if sys.version_info >= (3, 7): # py37+
return _restify_py37(cls)