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

Public Types

using NodeRef = SlicedPAGNodeRef
 
using EdgeRef = SlicedPAGEdgeRef
 
using nodes_iterator = SlicedPAGNodeIter
 
using ChildIteratorType = SlicedPAGChildIterImpl< true >
 
using ChildEdgeIteratorType = SlicedPAGEdgeIterImpl< true >
 

Static Public Member Functions

static const SVFVargetRawNode (NodeRef n)
 
static NodeRef getEntryNode (const SlicedPAGView *)
 
static nodes_iterator nodes_begin (const SlicedPAGView *v)
 
static nodes_iterator nodes_end (const SlicedPAGView *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 SlicedPAGView *v)
 
static unsigned getNodeID (NodeRef n)
 
static NodeRef getNode (const SlicedPAGView *v, NodeID id)
 

Detailed Description

Definition at line 1565 of file SlicedGraphs.h.

Member Typedef Documentation

◆ ChildEdgeIteratorType

Definition at line 1571 of file SlicedGraphs.h.

◆ ChildIteratorType

Definition at line 1570 of file SlicedGraphs.h.

◆ EdgeRef

Definition at line 1568 of file SlicedGraphs.h.

◆ NodeRef

Definition at line 1567 of file SlicedGraphs.h.

◆ nodes_iterator

Definition at line 1569 of file SlicedGraphs.h.

Member Function Documentation

◆ child_begin()

Definition at line 1592 of file SlicedGraphs.h.

1593 {
1595 }
cJSON * n
Definition cJSON.cpp:2558
static SlicedPAGEdgeIterImpl begin(const SlicedPAGView *v, const SVFVar *n)
SlicedPAGChildIterImpl< true > ChildIteratorType

◆ child_edge_begin()

static ChildEdgeIteratorType SVF::GenericGraphTraits< const SlicedPAGView * >::child_edge_begin ( NodeRef  n)
inlinestatic

Definition at line 1609 of file SlicedGraphs.h.

1610 {
1611 return ChildEdgeIteratorType::begin(n.view, n.raw);
1612 }

◆ child_edge_end()

Definition at line 1613 of file SlicedGraphs.h.

1614 {
1615 return ChildEdgeIteratorType::end(n.view, n.raw);
1616 }
static SlicedPAGEdgeIterImpl end(const SlicedPAGView *v, const SVFVar *n)

◆ child_end()

Definition at line 1596 of file SlicedGraphs.h.

1597 {
1599 }

◆ direct_child_begin()

static ChildIteratorType SVF::GenericGraphTraits< const SlicedPAGView * >::direct_child_begin ( NodeRef  n)
inlinestatic

Definition at line 1600 of file SlicedGraphs.h.

1601 {
1602 return child_begin(n);
1603 }
static ChildIteratorType child_begin(NodeRef n)

◆ direct_child_end()

static ChildIteratorType SVF::GenericGraphTraits< const SlicedPAGView * >::direct_child_end ( NodeRef  n)
inlinestatic

Definition at line 1604 of file SlicedGraphs.h.

1605 {
1606 return child_end(n);
1607 }
static ChildIteratorType child_end(NodeRef n)

◆ edge_dest()

static NodeRef SVF::GenericGraphTraits< const SlicedPAGView * >::edge_dest ( const EdgeRef e)
inlinestatic

Definition at line 1618 of file SlicedGraphs.h.

1619 {
1620 return e.dst;
1621 }

◆ getEntryNode()

static NodeRef SVF::GenericGraphTraits< const SlicedPAGView * >::getEntryNode ( const SlicedPAGView )
inlinestatic

Definition at line 1578 of file SlicedGraphs.h.

1579 {
1580 return NodeRef{};
1581 }

◆ getNode()

static NodeRef SVF::GenericGraphTraits< const SlicedPAGView * >::getNode ( const SlicedPAGView v,
NodeID  id 
)
inlinestatic

Definition at line 1631 of file SlicedGraphs.h.

1632 {
1633 const bool kept = v->getKeptNodeIds().count(id) > 0;
1634 return NodeRef{v, kept ? v->getSVFIR()->getGNode(id) : nullptr};
1635 }
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:76

◆ getNodeID()

static unsigned SVF::GenericGraphTraits< const SlicedPAGView * >::getNodeID ( NodeRef  n)
inlinestatic

Definition at line 1627 of file SlicedGraphs.h.

1628 {
1629 return n.raw->getId();
1630 }

◆ getRawNode()

static const SVFVar * SVF::GenericGraphTraits< const SlicedPAGView * >::getRawNode ( NodeRef  n)
inlinestatic

Definition at line 1573 of file SlicedGraphs.h.

1574 {
1575 return n.raw;
1576 }

◆ graphSize()

Definition at line 1623 of file SlicedGraphs.h.

1624 {
1625 return static_cast<unsigned>(v->getKeptNodeIds().size());
1626 }

◆ nodes_begin()

Definition at line 1583 of file SlicedGraphs.h.

1584 {
1585 return SlicedPAGNodeIter(v, v->getKeptNodeIds().begin());
1586 }

◆ nodes_end()

Definition at line 1587 of file SlicedGraphs.h.

1588 {
1589 return SlicedPAGNodeIter(v, v->getKeptNodeIds().end());
1590 }

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