diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2009-11-10 20:29:35 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2009-11-10 20:29:35 -0500 |
commit | 3a6188cb9522340ff31949dfd31bbc5d9682d3f4 (patch) | |
tree | e5ddb9a84517a313d9abfc78770863ff66310b54 /coverage/parser.py | |
parent | 90d80149337a93010e6494122819fe4754f42ec5 (diff) | |
download | python-coveragepy-3a6188cb9522340ff31949dfd31bbc5d9682d3f4.tar.gz |
Some per-instance caching to speed code parsing and analysis.
Diffstat (limited to 'coverage/parser.py')
-rw-r--r-- | coverage/parser.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/coverage/parser.py b/coverage/parser.py index 9e0bd15..760e4e4 100644 --- a/coverage/parser.py +++ b/coverage/parser.py @@ -4,7 +4,7 @@ import glob, opcode, os, re, sys, token, tokenize from coverage.backward import set, sorted, StringIO # pylint: disable-msg=W0622 from coverage.bytecode import ByteCodes, CodeObjects -from coverage.misc import nice_pair, CoverageException, NoSource +from coverage.misc import nice_pair, CoverageException, NoSource, expensive class CodeParser(object): @@ -193,6 +193,7 @@ class CodeParser(object): if fl1 != fl2: all_arcs.append((fl1, fl2)) return sorted(all_arcs) + arcs = expensive(arcs) def exit_counts(self): """Get a mapping from line numbers to count of exits from that line. @@ -212,6 +213,7 @@ class CodeParser(object): exit_counts[l1] += 1 return exit_counts + exit_counts = expensive(exit_counts) ## Opcodes that guide the ByteParser. |