def exc_info(): le = JS('$pyjs.__last_exception__') if not le: return (None, None, None) if not hasattr(le.error, '__class__'): cls = None else: cls = le.error.__class__ tb = JS('$pyjs.__last_exception_stack__') if tb: start = tb.start while tb and start > 0: tb = tb.tb_next start -= 1 else: tb = le tb.tb_next = None return (cls, le.error, tb)