diff options
| author | Steven Knight <knight@baldmt.com> | 2002-03-21 07:16:35 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2002-03-21 07:16:35 (GMT) |
| commit | bb8376994ade0355161d82068d420dee2ff4bec3 (patch) | |
| tree | 52483cef02bf7c5e55947bf1cb6ae60dfb51b875 /src/engine/SCons/Taskmaster.py | |
| parent | a9272652019c6d0cad2f20737e210f820ec9394d (diff) | |
| download | SCons-bb8376994ade0355161d82068d420dee2ff4bec3.zip SCons-bb8376994ade0355161d82068d420dee2ff4bec3.tar.gz SCons-bb8376994ade0355161d82068d420dee2ff4bec3.tar.bz2 | |
Speed up SCons.Sig.Calculator.bsig() (second most time-consuming function) by 6%-12% by using the new Walker eval_func argument.
Diffstat (limited to 'src/engine/SCons/Taskmaster.py')
| -rw-r--r-- | src/engine/SCons/Taskmaster.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/engine/SCons/Taskmaster.py b/src/engine/SCons/Taskmaster.py index 404355e..c97d28c 100644 --- a/src/engine/SCons/Taskmaster.py +++ b/src/engine/SCons/Taskmaster.py @@ -117,11 +117,11 @@ class Task: nodes = {} for t in self.targets: def get_parents(node, parent): return node.get_parents() - walker = SCons.Node.Walker(t, get_parents) - while 1: + def set_nodes(node, parent, nodes=nodes): nodes[node] = 1 + walker = SCons.Node.Walker(t, get_parents, eval_func=set_nodes) + n = walker.next() + while n: n = walker.next() - if n == None: break - nodes[n] = 1 pending = filter(lambda x: x.get_state() == SCons.Node.pending, nodes.keys()) tasks = {} |
