(code)
| 731 | return val |
| 732 | |
| 733 | def _parse_exception_table(code): |
| 734 | iterator = iter(code.co_exceptiontable) |
| 735 | entries = [] |
| 736 | try: |
| 737 | while True: |
| 738 | start = _parse_varint(iterator)*2 |
| 739 | length = _parse_varint(iterator)*2 |
| 740 | end = start + length |
| 741 | target = _parse_varint(iterator)*2 |
| 742 | dl = _parse_varint(iterator) |
| 743 | depth = dl >> 1 |
| 744 | lasti = bool(dl&1) |
| 745 | entries.append(_ExceptionTableEntry(start, end, target, depth, lasti)) |
| 746 | except StopIteration: |
| 747 | return entries |
| 748 | |
| 749 | def _is_backward_jump(op): |
| 750 | return opname[op] in ('JUMP_BACKWARD', |
no test coverage detected