Static Value-Flow Analysis
Loading...
Searching...
No Matches
SVF::SlicedPAGNodeIter Class Reference

#include <SlicedGraphs.h>

Public Types

using iterator_category = std::forward_iterator_tag
using value_type = SlicedPAGNodeRef
using difference_type = std::ptrdiff_t
using pointer = const SlicedPAGNodeRef*
using reference = SlicedPAGNodeRef

Public Member Functions

 SlicedPAGNodeIter ()=default
 SlicedPAGNodeIter (const SlicedPAGView *v, Set< NodeID >::const_iterator i)
reference operator* () const
SlicedPAGNodeIter & operator++ ()
SlicedPAGNodeIter operator++ (int)

Private Attributes

const SlicedPAGView * view = nullptr
Set< NodeID >::const_iterator it {}

Friends

bool operator== (const SlicedPAGNodeIter &a, const SlicedPAGNodeIter &b)
bool operator!= (const SlicedPAGNodeIter &a, const SlicedPAGNodeIter &b)

Detailed Description

Definition at line 1009 of file SlicedGraphs.h.

Member Typedef Documentation

◆ difference_type

Definition at line 1014 of file SlicedGraphs.h.

◆ iterator_category

using SVF::SlicedPAGNodeIter::iterator_category = std::forward_iterator_tag

Definition at line 1012 of file SlicedGraphs.h.

◆ pointer

Definition at line 1015 of file SlicedGraphs.h.

◆ reference

◆ value_type

Constructor & Destructor Documentation

◆ SlicedPAGNodeIter() [1/2]

SVF::SlicedPAGNodeIter::SlicedPAGNodeIter ( )
default

◆ SlicedPAGNodeIter() [2/2]

SVF::SlicedPAGNodeIter::SlicedPAGNodeIter ( const SlicedPAGView * v,
Set< NodeID >::const_iterator i )
inline

Definition at line 1019 of file SlicedGraphs.h.

1020 : view(v), it(i) {}
const SlicedPAGView * view
Set< NodeID >::const_iterator it

Member Function Documentation

◆ operator*()

reference SVF::SlicedPAGNodeIter::operator* ( ) const
inline

Definition at line 1022 of file SlicedGraphs.h.

1023 {
1024 return SlicedPAGNodeRef{view, view->getSVFIR()->getGNode(*it)};
1025 }
SlicedNodeRef< SlicedPAGView, SVFVar > SlicedPAGNodeRef

◆ operator++() [1/2]

SlicedPAGNodeIter & SVF::SlicedPAGNodeIter::operator++ ( )
inline

Definition at line 1026 of file SlicedGraphs.h.

1027 {
1028 ++it;
1029 return *this;
1030 }

◆ operator++() [2/2]

SlicedPAGNodeIter SVF::SlicedPAGNodeIter::operator++ ( int )
inline

Definition at line 1031 of file SlicedGraphs.h.

1032 {
1033 SlicedPAGNodeIter t = *this;
1034 ++it;
1035 return t;
1036 }

◆ operator!=

bool operator!= ( const SlicedPAGNodeIter & a,
const SlicedPAGNodeIter & b )
friend

Definition at line 1041 of file SlicedGraphs.h.

1042 {
1043 return !(a == b);
1044 }
cJSON * a
Definition cJSON.cpp:2560
const cJSON *const b
Definition cJSON.h:255

◆ operator==

bool operator== ( const SlicedPAGNodeIter & a,
const SlicedPAGNodeIter & b )
friend

Definition at line 1037 of file SlicedGraphs.h.

1038 {
1039 return a.view == b.view && a.it == b.it;
1040 }

Member Data Documentation

◆ it

Set<NodeID>::const_iterator SVF::SlicedPAGNodeIter::it {}
private

Definition at line 1048 of file SlicedGraphs.h.

1048{};

◆ view

const SlicedPAGView* SVF::SlicedPAGNodeIter::view = nullptr
private

Definition at line 1047 of file SlicedGraphs.h.


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