diff options
author | Steven Knight <knight@baldmt.com> | 2005-04-04 03:45:45 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2005-04-04 03:45:45 (GMT) |
commit | ffec76ae5f25f15c28e4f173582e8799c89635af (patch) | |
tree | 6c9abefdc4c296ba08751937e4c785306b10c1fe | |
parent | 13dcf8c4ebad065d6296e7a3da24b21a1666a974 (diff) | |
download | SCons-ffec76ae5f25f15c28e4f173582e8799c89635af.zip SCons-ffec76ae5f25f15c28e4f173582e8799c89635af.tar.gz SCons-ffec76ae5f25f15c28e4f173582e8799c89635af.tar.bz2 |
Performance optimization in the last patch: eliminate implicit_factory() entirely.
-rw-r--r-- | src/engine/SCons/Node/__init__.py | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index bc10e21..8754c7d 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -417,16 +417,6 @@ class Node: return deps - def implicit_factory(self, path): - """ - Turn a cache implicit dependency path into a node. - This is called so many times that doing caching - here is a significant performance boost. - __cacheable__ - """ - env = self.get_build_env() - return env.get_factory(self.builder.source_factory)(path) - def get_scanner(self, env, kw={}): return env.get_scanner(self.scanner_key()) @@ -482,7 +472,8 @@ class Node: if implicit_cache and not implicit_deps_changed: implicit = self.get_stored_implicit() if implicit: - implicit = map(self.implicit_factory, implicit) + factory = build_env.get_factory(self.builder.source_factory) + implicit = map(factory, implicit) self._add_child(self.implicit, self.implicit_dict, implicit) calc = build_env.get_calculator() if implicit_deps_unchanged or self.current(calc): |