Package SCons :: Module Executor :: Class Executor
[hide private]
[frames] | no frames]

Class Executor

source code

A class for controlling instances of executing an action.

This largely exists to hold a single association of an action,
environment, list of environment override dictionaries, targets
and sources for later processing as needed.



Nested Classes [hide private]
  __metaclass__
Instance Methods [hide private]
 
__init__(self, action, env=False, overridelist=[{}], targets=[], sources=[], builder_kw={}) source code
 
set_action_list(self, action) source code
 
get_action_list(self) source code
 
get_build_env(self)
Fetch or create the appropriate build Environment for this Executor.
source code
 
get_build_scanner_path(self, scanner)
Fetch the scanner path for this executor's targets and sources.
source code
 
get_kw(self, kw={}) source code
 
do_nothing(self, target, kw) source code
 
do_execute(self, target, kw)
Actually execute the action list.
source code
 
__call__(self, target, **kw) source code
 
cleanup(self) source code
 
add_sources(self, sources)
Add source files to this Executor's list.
source code
 
get_sources(self) source code
 
prepare(self)
Preparatory checks for whether this Executor can go ahead and (try to) build its targets.
source code
 
add_pre_action(self, action) source code
 
add_post_action(self, action) source code
 
my_str(self) source code
 
__str__(self) source code
 
nullify(self) source code
 
get_contents(self)
Fetch the signature contents.
source code
 
get_timestamp(self)
Fetch a time stamp for this Executor.
source code
 
scan_targets(self, scanner) source code
 
scan_sources(self, scanner) source code
 
scan(self, scanner, node_list)
Scan a list of this Executor's files (targets or sources) for implicit dependencies and update all of the targets with them.
source code
 
_get_unignored_sources_key(self, ignore=()) source code
 
get_unignored_sources(self, ignore=()) source code
 
_process_sources_key(self, func, ignore=()) source code
 
process_sources(self, func, ignore=()) source code
 
get_implicit_deps(self)
Return the executor's implicit dependencies, i.e.
source code
Class Variables [hide private]
  memoizer_counters = [<SCons.Memoize.CountValue instance at 0x8...
Method Details [hide private]

add_sources(self, sources)

source code 
Add source files to this Executor's list.  This is necessary
for "multi" Builders that can be called repeatedly to build up
a source file list for a given target.

get_contents(self)

source code 
Fetch the signature contents.  This is the main reason this
class exists, so we can compute this once and cache it regardless
of how many target or source Nodes there are.

get_timestamp(self)

source code 
Fetch a time stamp for this Executor.  We don't have one, of
course (only files do), but this is the interface used by the
timestamp module.

scan(self, scanner, node_list)

source code 
Scan a list of this Executor's files (targets or sources) for
implicit dependencies and update all of the targets with them.
This essentially short-circuits an N*M scan of the sources for
each individual target, which is a hell of a lot more efficient.

get_implicit_deps(self)

source code 
Return the executor's implicit dependencies, i.e. the nodes of
the commands to be executed.


Class Variable Details [hide private]

memoizer_counters

Value:
[]