draw tree of HTTPX exceptions

This commit is contained in:
Luciano Ramalho
2021-10-18 16:42:59 -03:00
parent 7c155cb337
commit ce7d45154f

View File

@@ -5,12 +5,13 @@ import httpx # make httpx classes available to .__subclasses__()
def tree(cls, level=0, last_sibling=True): def tree(cls, level=0, last_sibling=True):
yield cls, level, last_sibling yield cls, level, last_sibling
subclasses = [c for c in cls.__subclasses__() # get RuntimeError and exceptions defined in httpx
if c.__module__ == 'httpx' or c is RuntimeError] subclasses = [sub for sub in cls.__subclasses__()
if sub is RuntimeError or sub.__module__ == 'httpx']
if subclasses: if subclasses:
last = subclasses[-1] last = subclasses[-1]
for sub_cls in subclasses: for sub in subclasses:
yield from tree(sub_cls, level+1, sub_cls is last) yield from tree(sub, level+1, sub is last)
def display(cls): def display(cls):