def leave(self, node):
        '''
        Tries to invoke a method matching the pattern *leave_<type name>*, where
        <type name> is the name of the type of the *node*.
        '''
        name = 'leave_' + node.__class__.__name__
        fn = getattr(self, name, self.default_leave)
        fn(node)
def leave ( self , node ) : name = 'leave_' + node . __class__ . __name__ fn = getattr ( self , name , self . default_leave ) fn ( node )
Tries to invoke a method matching the pattern *leave_<type name>*, where
        <type name> is the name of the type of the *node*.