示例#1
0
 def count_statements(self, filepath):
     self.nbstatements = 0
     try:
         ast_node = MANAGER.ast_from_file(filepath, source=True)
         self._walk(ast_node)
     except AstroidSyntaxError:
         self.nbstatements = np.nan
     return self.nbstatements
示例#2
0
 def get_ast(self, filepath, modname):
     """return a ast(roid) representation for a module"""
     try:
         return MANAGER.ast_from_file(filepath, modname, source=True)
     except SyntaxError as ex:
         self.add_message('syntax-error', line=ex.lineno, args=ex.msg)
     except AstroidBuildingException as ex:
         self.add_message('parse-error', args=ex)
     except Exception as ex:
         import traceback
         traceback.print_exc()
         self.add_message('astroid-error', args=(ex.__class__, ex))
示例#3
0
 def get_ast(self, filepath, modname):
     """return a ast(roid) representation for a module"""
     try:
         return MANAGER.ast_from_file(filepath, modname, source=True)
     except SyntaxError as ex:
         self.add_message('E0001', line=ex.lineno, args=ex.msg)
     except AstroidBuildingException as ex:
         self.add_message('F0010', args=ex)
     except Exception as ex:
         import traceback
         traceback.print_exc()
         self.add_message('F0002', args=(ex.__class__, ex))
示例#4
0
 def __init__(self, filepath, function_name):
     self.filepath = filepath
     self.modname = os.path.splitext(os.path.basename(filepath))[0]
     self.function_name = function_name
     self.visit_events = {}
     self.leave_events = {}
     self.linter = self
     try:
         self.ast = MANAGER.ast_from_file(
             self.filepath,
             self.modname,
             source=True
         )
     except Exception, ex:
         print "Failed to parse the given source file."
         import traceback
         traceback.print_exc()
         exit(-1)
示例#5
0
def _gen_py_depends(filename: str, pkgfiles: Set[str]) -> Set[str]:
    """
    Generate the set of qualified named of used symbols of a python module and
    imported from modules not in the same mmpack package.

    Args:
        filename: absolute path of a python module
        pkgfiles: set of absolute path of files in the same mmpack packaged

    Returns: Set of qualified name of imported symbols
    """
    tree = astroid_manager.ast_from_file(filename)

    used_symbols = set()
    for node in tree.body:
        _inspect_node(node, used_symbols, pkgfiles)

    return used_symbols
示例#6
0
 def get_ast(self, filepath, modname):
     """return a ast(roid) representation for a module"""
     try:
         return MANAGER.ast_from_file(filepath, modname, source=True)
     except SyntaxError, ex:
         self.add_message('syntax-error', line=ex.lineno, args=ex.msg)
示例#7
0
 def get_ast(self, filepath, modname):
     """return a ast(roid) representation for a module"""
     try:
         return MANAGER.ast_from_file(filepath, modname, source=True)
     except SyntaxError, ex:
         self.add_message('syntax-error', line=ex.lineno, args=ex.msg)