Package SCons :: Package Node
[hide private]
[frames] | no frames]

Package Node

source code

SCons.Node

The Node package for the SCons software construction utility.

This is, in many ways, the heart of SCons.

A Node is where we encapsulate all of the dependency information about any thing that SCons can build, or about any thing which SCons can use to build some other thing. The canonical "thing," of course, is a file, but a Node can also represent something remote (like a web page) or something completely abstract (like an Alias).

Each specific type of "thing" is specifically represented by a subclass of the Node base class: Node.FS.File for files, Node.Alias for aliases, etc. Dependency information is kept here in the base class, and information specific to files/aliases/etc. is in the subclass. The goal, if we've done this correctly, is that any type of "thing" should be able to depend on any other type of "thing."

Submodules [hide private]

Classes [hide private]
  NodeInfoBase
The generic base class for signature information for a Node.
  BuildInfoBase
The generic base class for build information for a Node.
  Node
The base Node class, for entities that we know how to build, or use to build other Nodes.
  NodeList
  Walker
An iterator for walking a Node tree.
Functions [hide private]
 
classname(obj) source code
 
Annotate(node) source code
 
get_children(node, parent) source code
 
ignore_cycle(node, stack) source code
 
do_nothing(node, parent) source code
Variables [hide private]
  __revision__ = 'src/engine/SCons/Node/__init__.py 5110 2010/07...
  no_state = 0
  pending = 1
  executing = 2
  up_to_date = 3
  executed = 4
  failed = 5
  StateString = {0: 'no_state', 1: 'pending', 2: 'executing', 3:...
  implicit_cache = 0
  implicit_deps_unchanged = 0
  implicit_deps_changed = 0
  arg2nodes_lookups = [<bound method AliasNameSpace.lookup of {}>]
  __package__ = 'SCons.Node'
Variables Details [hide private]

__revision__

Value:
'src/engine/SCons/Node/__init__.py 5110 2010/07/25 16:14:38 bdeegan'

StateString

Value:
{0: 'no_state',
 1: 'pending',
 2: 'executing',
 3: 'up_to_date',
 4: 'executed',
 5: 'failed'}