Interprocedural AnalysisΒΆ

class VyPRAnalysis.interprocedural.CallTree(transaction)

A tree derived of the calls that took place during a transaction/http request.

add_subtree_to_vertex(vertex, subtree)

Given a CallTreeVertex and a CallTree, add the root of the call tree as a child of the vertex and copy all vertices over into the vertex set of the call tree.

get_direct_callees(call)

Given a call, find its vertex and then return its children.

get_reachable(call)

Given a call, perform stack-based traversal to find all reachable calls in the tree.

get_subtree_roots_in_interval(call, time_lower_bound, time_upper_bound)

Given a time interval and a call, determine the child vertices that fit within a given time interval. Note: this time interval will usually be derived from an observation occurring during that call.

process_vertex(root, calls)

Given a root and a list of child calls, construct the subtree rooted here.

write_to_file(file_name)

Write this call tree to a dot file.