class DepFinder(recipe.ClassInstanceBuilder): (source)
Known subclasses: klara.scripts.cover_gen_ins.line_fix_solver.LineFix
For every class, assume the last FunctionDef is the top level method to call. And for every instance, only the top level method will be call. This means that we could safely assume that every instance has only the attributes coming from __init__ and the top level method. The assumption being made: 1. Top level method has only `self` arg 2. Top level method is placed at the last of the class 3. Only top level method will be called by the class instance. All other method will be called only by the top level method The overall steps will be carried out: 1. visit the ClassDef. 2. Construct an instance and load context with all attributes in __init__ 3. Identify the top level method. 4. overload phi function infer handler. 5. Resolve the returned value by the top level method. this will trigger the overloaded phi function handler and those are the dependencies required.
Method | __init__ |
Undocumented |
Method | analyze |
Undocumented |
Method | compute |
:param node_exprs: list of ast nodes :return: dict contain ast_node to value |
Method | initialize |
Visit all the class and initialize constructor, and initialize all `self` of bound method |
Method | register |
Undocumented |
Method | solve |
Undocumented |
Method | uninitialize |
Undocumented |
Method | unregister |
Undocumented |
Method | visit |
Undocumented |
Instance Variable | as |
Undocumented |
Instance Variable | bound |
Undocumented |
Instance Variable | cfg |
Undocumented |
Instance Variable | classes |
Undocumented |
Instance Variable | entry |
Undocumented |
Instance Variable | entry |
Undocumented |
Instance Variable | ins |
Undocumented |
Instance Variable | is |
Undocumented |
Instance Variable | old |
Undocumented |
Instance Variable | processes |
Undocumented |
Instance Variable | z3 |
Undocumented |
Instance Variable | _created |
Undocumented |
Instance Variable | _z3 |
Undocumented |
Instance Variable | _z3 |
Undocumented |
Inherited from ClassInstanceBuilder
:
Instance Variable | class |
Undocumented |
Instance Variable | context |
Undocumented |
Inherited from AstVisitor
(via ClassInstanceBuilder
):
Method | generic |
Undocumented |
Method | visit |
Undocumented |
:param node_exprs: list of ast nodes :return: dict contain ast_node to value