#NEWLINE# def __call__( self , node , env , path = ( ) ) : #NEWLINE# #INDENT# "\n        This method scans a single object. 'node' is the node\n        that will be passed to the scanner function, and 'env' is the\n        environment that will be passed to the scanner function. A list of\n        direct dependency nodes for the specified node will be returned.\n        " #NEWLINE# if ( self . scan_check and ( not self . scan_check ( node , env ) ) ) : #NEWLINE# #INDENT# return [ ] #NEWLINE# #UNINDENT# self = self . select ( node ) #NEWLINE# if ( not ( self . argument is _null ) ) : #NEWLINE# #INDENT# list = self . function ( node , env , path , self . argument ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# list = self . function ( node , env , path ) #NEWLINE# #UNINDENT# kw = { #NEWLINE# #INDENT# #NEWLINE# #UNINDENT# } #NEWLINE# if hasattr ( node , 'dir' ) : #NEWLINE# #INDENT# kw [ 'directory' ] = node . dir #NEWLINE# #UNINDENT# node_factory = env . get_factory ( self . node_factory ) #NEWLINE# nodes = [ ] #NEWLINE# for l in list : #NEWLINE# #INDENT# if ( self . node_class and ( not isinstance ( l , self . node_class ) ) ) : #NEWLINE# #INDENT# l = node_factory ( l , ** kw ) #NEWLINE# #UNINDENT# nodes . append ( l ) #NEWLINE# #UNINDENT# return nodes