diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2009-10-16 07:57:08 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2009-10-16 07:57:08 -0400 |
commit | 966655151ed56516caff039a00db6354550b3263 (patch) | |
tree | 5531d92971a70111d924095258a7db9dae8c3bc2 /coverage/parser.py | |
parent | 9ca8f380e28b3bd315708da4d0c879549f9e3e42 (diff) | |
download | python-coveragepy-966655151ed56516caff039a00db6354550b3263.tar.gz |
Ad-hoc discovery of opcodes that need to be parsed. BREAK_LOOP is implicit? yikes...
Diffstat (limited to 'coverage/parser.py')
-rw-r--r-- | coverage/parser.py | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/coverage/parser.py b/coverage/parser.py index 9460f08..8884e41 100644 --- a/coverage/parser.py +++ b/coverage/parser.py @@ -274,7 +274,10 @@ class ByteParser: return last_line _code_enders = set([opcode.opmap[name] for name in ['RETURN_VALUE']]) - _chunk_enders = set([opcode.opmap[name] for name in ['JUMP_ABSOLUTE', 'JUMP_FORWARD']]) + _chunk_enders = set([opcode.opmap[name] for name in [ + 'JUMP_ABSOLUTE', 'JUMP_FORWARD', 'BREAK_LOOP', 'CONTINUE_LOOP', + 'RAISE_VARARGS' + ]]) _chunk_enders |= _code_enders def _split_into_chunks(self): @@ -391,7 +394,7 @@ class ByteParser: for bp in self.child_parsers(): chunks.extend(bp._split_into_chunks()) - return [], chunks + return chunks def _all_arcs(self): arcs = [] @@ -452,16 +455,13 @@ class AdHocMain(object): bp._disassemble() if options.chunks: - warnings, chunks = bp._all_chunks() + chunks = bp._all_chunks() if options.recursive: print("%6d: %s" % (len(chunks), filename)) - if warnings: - print("\t%r" % (warnings,)) else: - print(warnings) - print(chunks) + print("Chunks: %r" % chunks) arcs = bp._all_arcs() - print(arcs) + print("Arcs: %r" % arcs) if options.source or options.tokens: cp = CodeParser(filename=filename, exclude=r"no\s*cover") |