Template Struct MakeClosure#

Struct Documentation#

template<typename FindSuccessors, typename FindEnd, typename DontAddChildren, typename Join, typename FilteredEdge>
struct MakeClosure#

Public Functions

inline MakeClosure(const FindSuccessors &findSuccessors, const FindEnd &findEnd, const DontAddChildren &dontAddChildren, const Join &join)#
inline void go(const CFGPath &p)#

Process one CFGPath at a time: make sure the end edge is an interesting one (should not be filtered out)

inline std::vector<FilteredEdge> filter() const#

Process visited CFGPaths: convert them into edges.

Public Members

std::set<CFGNode> visitedNodes#
std::vector<CFGPath> visitedPaths#
const FindSuccessors &findSuccessors#
const FindEnd &findEnd#
const DontAddChildren &dontAddChildren#
const Join &join#