class documentation

Control flow graph (CFG). A control flow graph is composed of basic blocks and links between them representing control flow jumps. It has a unique entry block and several possible 'final' blocks (blocks with no exits representing the end of the CFG).

Method __init__ Undocumented
Method __iter__ Generator that yields all the blocks in the current graph, then recursively yields from any sub graphs
Method __str__ Undocumented
Method build_visual Build a visualisation of the CFG with graphviz and output it in a DOT file.
Instance Variable asynchr Undocumented
Instance Variable entryblock Undocumented
Instance Variable finalblocks Undocumented
Instance Variable functioncfgs Undocumented
Instance Variable name Undocumented
Method _build_visual Undocumented
Method _visit_blocks Undocumented
def __init__(self, name, asynchr=False): (source)

Undocumented

def __iter__(self): (source)

Generator that yields all the blocks in the current graph, then recursively yields from any sub graphs

def __str__(self): (source)

Undocumented

def build_visual(self, filepath, format, calls=True, show=True): (source)

Build a visualisation of the CFG with graphviz and output it in a DOT file. Args: filename: The name of the output file in which the visualisation must be saved. format: The format to use for the output file (PDF, ...). show: A boolean indicating whether to automatically open the output file after building the visualisation.

Undocumented

entryblock = (source)

Undocumented

finalblocks: list = (source)

Undocumented

functioncfgs: dict = (source)

Undocumented

Undocumented

def _build_visual(self, format='pdf', calls=True): (source)

Undocumented

def _visit_blocks(self, graph, block, visited=[], calls=True): (source)

Undocumented