Static Value-Flow Analysis
Loading...
Searching...
No Matches
SVF::DOTGraphTraits< const SlicedThreadCallGraphView * > Struct Reference
Inheritance diagram for SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >:
SVF::DefaultDOTGraphTraits SVF::DefaultDOTGraphTraits

Public Member Functions

 DOTGraphTraits (bool isSimple=false)
std::string getNodeLabel (SlicedCallGraphNodeRef n, const SlicedThreadCallGraphView *)
Public Member Functions inherited from SVF::DefaultDOTGraphTraits
 DefaultDOTGraphTraits (bool simple=false)
template<typename NodeT, typename GraphType>
std::string getNodeLabel (NodeT, const GraphType &)

Static Public Member Functions

static std::string getGraphName (const SlicedThreadCallGraphView *)
static const void * getNodeIdentifier (SlicedCallGraphNodeRef n)
static std::string getNodeAttributes (SlicedCallGraphNodeRef, const SlicedThreadCallGraphView *)
template<class EdgeIter>
static std::string getEdgeAttributes (SlicedCallGraphNodeRef, EdgeIter EI, const SlicedThreadCallGraphView *)
Static Public Member Functions inherited from SVF::DefaultDOTGraphTraits
template<typename GraphType>
static std::string getGraphName (const GraphType &)
template<typename GraphType>
static std::string getGraphProperties (const GraphType &)
static bool renderGraphFromBottomUp ()
template<typename NodeT>
static const void * getNodeIdentifier (NodeT N)
template<typename NodeT, typename GraphType>
static bool isNodeHidden (NodeT, const GraphType &)
template<typename NodeT, typename GraphType>
static std::string getNodeIdentifierLabel (NodeT, const GraphType &)
template<typename NodeT, typename GraphType>
static std::string getNodeDescription (NodeT, const GraphType &)
template<typename NodeT, typename GraphType>
static std::string getNodeAttributes (NodeT, const GraphType &)
template<typename NodeT, typename EdgeIter, typename GraphType>
static std::string getEdgeAttributes (NodeT, EdgeIter, const GraphType &)
template<typename NodeT, typename EdgeIter>
static std::string getEdgeSourceLabel (NodeT, EdgeIter)
template<typename NodeT, typename EdgeIter>
static bool edgeTargetsEdgeSource (NodeT, EdgeIter)
template<typename NodeT, typename EdgeIter>
static EdgeIter getEdgeTarget (NodeT, EdgeIter I)
static bool hasEdgeDestLabels ()
template<typename NodeT>
static unsigned numEdgeDestLabels (NodeT)
template<typename NodeT>
static std::string getEdgeDestLabel (NodeT, unsigned)
template<typename GraphType, typename GraphWriter>
static void addCustomGraphFeatures (const GraphType &, GraphWriter &)

Additional Inherited Members

Protected Member Functions inherited from SVF::DefaultDOTGraphTraits
bool isSimple ()

Detailed Description

Definition at line 109 of file SlicedGraphs.cpp.

Constructor & Destructor Documentation

◆ DOTGraphTraits()

SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >::DOTGraphTraits ( bool isSimple = false)
inline

Definition at line 111 of file SlicedGraphs.cpp.

Member Function Documentation

◆ getEdgeAttributes()

template<class EdgeIter>
std::string SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >::getEdgeAttributes ( SlicedCallGraphNodeRef ,
EdgeIter EI,
const SlicedThreadCallGraphView *  )
inlinestatic

Definition at line 136 of file SlicedGraphs.cpp.

137 {
138 const CallGraphEdge* e = EI.currentEdge().underlying;
139 if (e != nullptr && e->getEdgeKind() == CallGraphEdge::TDForkEdge)
140 return "color=green";
141 if (e != nullptr && e->getEdgeKind() == CallGraphEdge::CallRetEdge)
142 return "color=blue";
143 return "color=black";
144 }

◆ getGraphName()

std::string SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >::getGraphName ( const SlicedThreadCallGraphView * )
inlinestatic

Definition at line 115 of file SlicedGraphs.cpp.

116 {
117 return "SlicedThreadCallGraph";
118 }

◆ getNodeAttributes()

std::string SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >::getNodeAttributes ( SlicedCallGraphNodeRef ,
const SlicedThreadCallGraphView *  )
inlinestatic

Definition at line 130 of file SlicedGraphs.cpp.

131 {
132 return "shape=record,color=black";
133 }

◆ getNodeIdentifier()

const void * SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >::getNodeIdentifier ( SlicedCallGraphNodeRef n)
inlinestatic

Definition at line 120 of file SlicedGraphs.cpp.

121 {
122 return n.raw;
123 }

◆ getNodeLabel()

std::string SVF::DOTGraphTraits< const SlicedThreadCallGraphView * >::getNodeLabel ( SlicedCallGraphNodeRef n,
const SlicedThreadCallGraphView *  )
inline

Definition at line 125 of file SlicedGraphs.cpp.

126 {
127 return n.raw != nullptr ? n.raw->getName() : "";
128 }

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