ATLAS Offline Software
Loading...
Searching...
No Matches
apydep.DependencyFinder Class Reference
Inheritance diagram for apydep.DependencyFinder:
Collaboration diagram for apydep.DependencyFinder:

Public Member Functions

 __init__ (self)
 visit_Import (self, node)
 visit_ImportFrom (self, node)
 visit_Call (self, node)

Public Attributes

 imports = set()
 includes = set()

Detailed Description

Walk an AST collecting import/include statements.

Definition at line 18 of file apydep.py.

Constructor & Destructor Documentation

◆ __init__()

apydep.DependencyFinder.__init__ ( self)

Definition at line 21 of file apydep.py.

21 def __init__(self):
22 self.imports = set()
23 self.includes = set()
24
STL class.

Member Function Documentation

◆ visit_Call()

apydep.DependencyFinder.visit_Call ( self,
node )
"include(XYZ/ABC.py)

Definition at line 34 of file apydep.py.

34 def visit_Call(self, node):
35 """"include(XYZ/ABC.py)"""
36 if isinstance(node.func, ast.Name) and node.func.id=='include' and node.args:
37 if isinstance(node.args[0], ast.Constant):
38 self.includes.add(node.args[0].value.split('/',1)[0])
39
40
bool add(const std::string &hname, TKey *tobj)
Definition fastadd.cxx:55

◆ visit_Import()

apydep.DependencyFinder.visit_Import ( self,
node )
import XYZ

Definition at line 25 of file apydep.py.

25 def visit_Import(self, node):
26 """import XYZ"""
27 self.imports.update(alias.name.split('.',1)[0] for alias in node.names)
28

◆ visit_ImportFrom()

apydep.DependencyFinder.visit_ImportFrom ( self,
node )
from XYZ import ABC

Definition at line 29 of file apydep.py.

29 def visit_ImportFrom(self, node):
30 """from XYZ import ABC"""
31 if node.level==0: # ignore relative imports
32 self.imports.add(node.module.split('.',1)[0])
33

Member Data Documentation

◆ imports

apydep.DependencyFinder.imports = set()

Definition at line 22 of file apydep.py.

◆ includes

apydep.DependencyFinder.includes = set()

Definition at line 23 of file apydep.py.


The documentation for this class was generated from the following file: