bridgepoint/prebuild.py
def find_symbol(self, name=None, kind=None):
        '''
        Find a symbol in the symbol table by name, kind, or both.
        '''
        for s in reversed(self.stack):
                        
            for symbol_name, handle in s.symbols.items():
                symbol_kind = handle.__class__.__name__
                
                if name == symbol_name and kind == symbol_kind:
                    return handle
                
                elif name is None and kind == handle.__class__.__name__:
                    return handle
                
                elif name == symbol_name and kind is None:
                    return handle
            
            if name is None and kind == s.handle.__class__.__name__:
                return s.handle
def find_symbol(self, name=None, kind=None):
        '''
        Find a symbol in the symbol table by name, kind, or both.
        '''
        for s in reversed(self.stack):
                        
            for symbol_name, handle in s.symbols.items():
                symbol_kind = handle.__class__.__name__
                
                if name == symbol_name and kind == symbol_kind:
                    return handle
                
                elif name is None and kind == handle.__class__.__name__:
                    return handle
                
                elif name == symbol_name and kind is None:
                    return handle
            
            if name is None and kind == s.handle.__class__.__name__:
                return s.handle
Find a symbol in the symbol table by name, kind, or both.