ROSE 0.11.145.147
Public Member Functions | Public Attributes | List of all members
VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge > Struct Template Reference

Description

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

Definition at line 31 of file filteredCFGImpl.h.

Collaboration diagram for VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >:
Collaboration graph
[legend]

Public Member Functions

 MakeClosure (const FindSuccessors &findSuccessors, const FindEnd &findEnd, const DontAddChildren &dontAddChildren, const Join &join)
 
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)
 
std::vector< FilteredEdge > filter () const
 Process visited CFGPaths: convert them into edges.
 

Public Attributes

std::set< CFGNodevisitedNodes
 
std::vector< CFGPathvisitedPaths
 
const FindSuccessors & findSuccessors
 
const FindEnd & findEnd
 
const DontAddChildren & dontAddChildren
 
const Join & join
 

Constructor & Destructor Documentation

◆ MakeClosure()

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::MakeClosure ( const FindSuccessors &  findSuccessors,
const FindEnd &  findEnd,
const DontAddChildren &  dontAddChildren,
const Join &  join 
)
inline

Definition at line 40 of file filteredCFGImpl.h.

Member Function Documentation

◆ go()

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
void VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::go ( const CFGPath p)
inline

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

Definition at line 50 of file filteredCFGImpl.h.

References VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::go().

Referenced by VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::go().

◆ filter()

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
std::vector< FilteredEdge > VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::filter ( ) const
inline

Process visited CFGPaths: convert them into edges.

Definition at line 72 of file filteredCFGImpl.h.

Member Data Documentation

◆ visitedNodes

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
std::set< CFGNode > VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::visitedNodes

Definition at line 33 of file filteredCFGImpl.h.

◆ visitedPaths

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
std::vector< CFGPath > VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::visitedPaths

Definition at line 34 of file filteredCFGImpl.h.

◆ findSuccessors

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
const FindSuccessors& VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::findSuccessors

Definition at line 35 of file filteredCFGImpl.h.

◆ findEnd

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
const FindEnd& VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::findEnd

Definition at line 36 of file filteredCFGImpl.h.

◆ dontAddChildren

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
const DontAddChildren& VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::dontAddChildren

Definition at line 37 of file filteredCFGImpl.h.

◆ join

template<typename FindSuccessors , typename FindEnd , typename DontAddChildren , typename Join , typename FilteredEdge >
const Join& VirtualCFG::MakeClosure< FindSuccessors, FindEnd, DontAddChildren, Join, FilteredEdge >::join

Definition at line 38 of file filteredCFGImpl.h.


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