Static Value-Flow Analysis
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | List of all members
SVF::GenericGraphTraits< const SlicedThreadCallGraphView * > Struct Reference

Public Types

using NodeRef = SlicedCallGraphNodeRef
 
using EdgeRef = SlicedCallGraphEdgeRef
 
using nodes_iterator = SlicedCGNodeIter
 
using ChildIteratorType = SlicedCGChildIterImpl< true >
 
using ChildEdgeIteratorType = SlicedCGEdgeIterImpl< true >
 

Static Public Member Functions

static const CallGraphNodegetRawNode (NodeRef n)
 
static void getInEdges (const SlicedThreadCallGraphView *g, const CallGraphNode *n, std::vector< const CallGraphEdge * > &out)
 
static const CallGraphgetCallGraph (const SlicedThreadCallGraphView *g)
 
static NodeRef getEntryNode (const SlicedThreadCallGraphView *)
 
static nodes_iterator nodes_begin (const SlicedThreadCallGraphView *v)
 
static nodes_iterator nodes_end (const SlicedThreadCallGraphView *v)
 
static ChildIteratorType child_begin (NodeRef n)
 
static ChildIteratorType child_end (NodeRef n)
 
static ChildIteratorType direct_child_begin (NodeRef n)
 
static ChildIteratorType direct_child_end (NodeRef n)
 
static ChildEdgeIteratorType child_edge_begin (NodeRef n)
 
static ChildEdgeIteratorType child_edge_end (NodeRef n)
 
static NodeRef edge_dest (const EdgeRef &e)
 
static unsigned graphSize (const SlicedThreadCallGraphView *v)
 
static unsigned getNodeID (NodeRef n)
 
static NodeRef getNode (const SlicedThreadCallGraphView *v, NodeID id)
 

Detailed Description

Definition at line 1436 of file SlicedGraphs.h.

Member Typedef Documentation

◆ ChildEdgeIteratorType

Definition at line 1442 of file SlicedGraphs.h.

◆ ChildIteratorType

Definition at line 1441 of file SlicedGraphs.h.

◆ EdgeRef

Definition at line 1439 of file SlicedGraphs.h.

◆ NodeRef

Definition at line 1438 of file SlicedGraphs.h.

◆ nodes_iterator

Definition at line 1440 of file SlicedGraphs.h.

Member Function Documentation

◆ child_begin()

Definition at line 1476 of file SlicedGraphs.h.

1477 {
1479 }
cJSON * n
Definition cJSON.cpp:2558
static SlicedCGEdgeIterImpl begin(const SlicedThreadCallGraphView *v, const CallGraphNode *n)

◆ child_edge_begin()

Definition at line 1493 of file SlicedGraphs.h.

1494 {
1495 return ChildEdgeIteratorType::begin(n.view, n.raw);
1496 }

◆ child_edge_end()

Definition at line 1497 of file SlicedGraphs.h.

1498 {
1499 return ChildEdgeIteratorType::end(n.view, n.raw);
1500 }
static SlicedCGEdgeIterImpl end(const SlicedThreadCallGraphView *v, const CallGraphNode *n)

◆ child_end()

Definition at line 1480 of file SlicedGraphs.h.

1481 {
1483 }

◆ direct_child_begin()

Definition at line 1484 of file SlicedGraphs.h.

1485 {
1486 return child_begin(n);
1487 }

◆ direct_child_end()

Definition at line 1488 of file SlicedGraphs.h.

1489 {
1490 return child_end(n);
1491 }

◆ edge_dest()

Definition at line 1502 of file SlicedGraphs.h.

1503 {
1504 return e.dst;
1505 }

◆ getCallGraph()

Definition at line 1456 of file SlicedGraphs.h.

1457 {
1458 return g->getOriginalCallGraph();
1459 }
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:76

◆ getEntryNode()

Definition at line 1462 of file SlicedGraphs.h.

1463 {
1464 return NodeRef{};
1465 }

◆ getInEdges()

static void SVF::GenericGraphTraits< const SlicedThreadCallGraphView * >::getInEdges ( const SlicedThreadCallGraphView g,
const CallGraphNode n,
std::vector< const CallGraphEdge * > &  out 
)
inlinestatic

Definition at line 1451 of file SlicedGraphs.h.

1453 {
1454 g->getInEdgesOf(n, out);
1455 }

◆ getNode()

Definition at line 1515 of file SlicedGraphs.h.

1516 {
1517 const CallGraphNode* raw = v->getOriginalCallGraph()->getGNode(id);
1518 return NodeRef{v, (raw != nullptr && v->isKeptNode(raw)) ? raw : nullptr};
1519 }
const char *const const char *const raw
Definition cJSON.h:270

◆ getNodeID()

Definition at line 1511 of file SlicedGraphs.h.

1512 {
1513 return n.raw->getId();
1514 }

◆ getRawNode()

Definition at line 1444 of file SlicedGraphs.h.

1445 {
1446 return n.raw;
1447 }

◆ graphSize()

Definition at line 1507 of file SlicedGraphs.h.

1508 {
1509 return static_cast<unsigned>(v->getKeptNodes().size());
1510 }

◆ nodes_begin()

Definition at line 1467 of file SlicedGraphs.h.

1468 {
1469 return SlicedCGNodeIter(v, v->getKeptNodes().begin());
1470 }

◆ nodes_end()

Definition at line 1471 of file SlicedGraphs.h.

1472 {
1473 return SlicedCGNodeIter(v, v->getKeptNodes().end());
1474 }

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