diff options
| author | Steven Knight <knight@baldmt.com> | 2001-11-02 03:12:07 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2001-11-02 03:12:07 (GMT) |
| commit | 2f51f69cf055ec44e37eaac22b1992bd5218278f (patch) | |
| tree | 60165bd248d020974a0be3f5477825876a682445 /src/engine/SCons/Node/__init__.py | |
| parent | 00c3ada748b164ecf909727fa81f521dde72fda9 (diff) | |
| download | SCons-2f51f69cf055ec44e37eaac22b1992bd5218278f.zip SCons-2f51f69cf055ec44e37eaac22b1992bd5218278f.tar.gz SCons-2f51f69cf055ec44e37eaac22b1992bd5218278f.tar.bz2 | |
Rebuild in response to a changed build command.
Diffstat (limited to 'src/engine/SCons/Node/__init__.py')
| -rw-r--r-- | src/engine/SCons/Node/__init__.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index 0e1a8d9..513b260 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -79,6 +79,23 @@ class Node: def builder_set(self, builder): self.builder = builder + def builder_sig_adapter(self): + """Create an adapter for calculating a builder's signature. + + The underlying signature class will call get_contents() + to fetch the signature of a builder, but the actual + content of that signature depends on the node and the + environment (for construction variable substitution), + so this adapter provides the right glue between the two. + """ + class Adapter: + def __init__(self, node): + self.node = node + def get_contents(self): + env = self.node.env.Dictionary() + return self.node.builder.get_contents(env = env) + return Adapter(self) + def env_set(self, env): self.env = env |
