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

Class _PathList

source code

object --+
         |
        _PathList


An actual PathList object.



Instance Methods [hide private]
 
__init__(self, pathlist)
Initializes a PathList object, canonicalizing the input and pre-processing it for quicker substitution later.
source code
 
__len__(self) source code
 
__getitem__(self, i) source code
 
subst_path(self, env, target, source)
Performs construction variable substitution on a pre-digested PathList for a specific target and source.
source code

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, pathlist)
(Constructor)

source code 

Initializes a PathList object, canonicalizing the input and
pre-processing it for quicker substitution later.

The stored representation of the PathList is a list of tuples
containing (type, value), where the "type" is one of the TYPE_*
variables defined above.  We distinguish between:

    strings that contain no '$' and therefore need no
    delayed-evaluation string substitution (we expect that there
    will be many of these and that we therefore get a pretty
    big win from avoiding string substitution)

    strings that contain '$' and therefore need substitution
    (the hard case is things like '${TARGET.dir}/include',
    which require re-evaluation for every target + source)

    other objects (which may be something like an EntryProxy
    that needs a method called to return a Node)

Pre-identifying the type of each element in the PathList up-front
and storing the type in the list of tuples is intended to reduce
the amount of calculation when we actually do the substitution
over and over for each target.

Overrides: object.__init__