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 1590 of file SlicedGraphs.h.

Member Typedef Documentation

◆ ChildEdgeIteratorType

Definition at line 1596 of file SlicedGraphs.h.

◆ ChildIteratorType

Definition at line 1595 of file SlicedGraphs.h.

◆ EdgeRef

Definition at line 1593 of file SlicedGraphs.h.

◆ NodeRef

Definition at line 1592 of file SlicedGraphs.h.

◆ nodes_iterator

Definition at line 1594 of file SlicedGraphs.h.

Member Function Documentation

◆ child_begin()

Definition at line 1617 of file SlicedGraphs.h.

1618 {
1620 }
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 1634 of file SlicedGraphs.h.

1635 {
1636 return ChildEdgeIteratorType::begin(n.view, n.raw);
1637 }

◆ child_edge_end()

Definition at line 1638 of file SlicedGraphs.h.

1639 {
1640 return ChildEdgeIteratorType::end(n.view, n.raw);
1641 }
static SlicedPAGEdgeIterImpl end(const SlicedPAGView *v, const SVFVar *n)

◆ child_end()

Definition at line 1621 of file SlicedGraphs.h.

1622 {
1624 }

◆ direct_child_begin()

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

Definition at line 1625 of file SlicedGraphs.h.

1626 {
1627 return child_begin(n);
1628 }
static ChildIteratorType child_begin(NodeRef n)

◆ direct_child_end()

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

Definition at line 1629 of file SlicedGraphs.h.

1630 {
1631 return child_end(n);
1632 }
static ChildIteratorType child_end(NodeRef n)

◆ edge_dest()

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

Definition at line 1643 of file SlicedGraphs.h.

1644 {
1645 return e.dst;
1646 }

◆ getEntryNode()

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

Definition at line 1603 of file SlicedGraphs.h.

1604 {
1605 return NodeRef{};
1606 }

◆ getNode()

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

Definition at line 1656 of file SlicedGraphs.h.

1657 {
1658 const bool kept = v->getKeptNodeIds().count(id) > 0;
1659 return NodeRef{v, kept ? v->getSVFIR()->getGNode(id) : nullptr};
1660 }
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:76

◆ getNodeID()

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

Definition at line 1652 of file SlicedGraphs.h.

1653 {
1654 return n.raw->getId();
1655 }

◆ getRawNode()

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

Definition at line 1598 of file SlicedGraphs.h.

1599 {
1600 return n.raw;
1601 }

◆ graphSize()

Definition at line 1648 of file SlicedGraphs.h.

1649 {
1650 return static_cast<unsigned>(v->getKeptNodeIds().size());
1651 }

◆ nodes_begin()

Definition at line 1608 of file SlicedGraphs.h.

1609 {
1610 return SlicedPAGNodeIter(v, v->getKeptNodeIds().begin());
1611 }

◆ nodes_end()

Definition at line 1612 of file SlicedGraphs.h.

1613 {
1614 return SlicedPAGNodeIter(v, v->getKeptNodeIds().end());
1615 }

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