Static Value-Flow Analysis
Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
SVF::BasicBlockEdge Class Reference

#include <BasicBlockG.h>

Inheritance diagram for SVF::BasicBlockEdge:
SVF::GenericEdge< NodeTy >

Public Member Functions

 BasicBlockEdge (SVFBasicBlock *s, SVFBasicBlock *d)
 Constructor.
 
 ~BasicBlockEdge ()
 Destructor.
 
virtual const std::string toString () const
 
- Public Member Functions inherited from SVF::GenericEdge< NodeTy >
 GenericEdge (NodeTy *s, NodeTy *d, GEdgeFlag k)
 Constructor.
 
virtual ~GenericEdge ()
 Destructor.
 
NodeID getSrcID () const
 get methods of the components
 
NodeID getDstID () const
 
GEdgeKind getEdgeKind () const
 
GEdgeKind getEdgeKindWithoutMask () const
 
NodeType * getSrcNode () const
 
NodeType * getDstNode () const
 
virtual bool operator== (const GenericEdge< NodeType > *rhs) const
 

Friends

OutStream & operator<< (OutStream &o, const BasicBlockEdge &edge)
 Overloading operator << for dumping ICFG node ID.
 

Additional Inherited Members

- Public Types inherited from SVF::GenericEdge< NodeTy >
typedef NodeTy NodeType
 Node type.
 
typedef u64_t GEdgeFlag
 
typedef s64_t GEdgeKind
 
typedef struct SVF::GenericEdge::equalGEdge equalGEdge
 Add the hash function for std::set (we also can overload operator< to implement this)
 
- Static Protected Attributes inherited from SVF::GenericEdge< NodeTy >
static constexpr unsigned char EdgeKindMaskBits = 8
 We use the lower 8 bits to denote edge kind.
 
static constexpr u64_t EdgeKindMask = (~0ULL) >> (64 - EdgeKindMaskBits)
 

Detailed Description

Definition at line 45 of file BasicBlockG.h.

Constructor & Destructor Documentation

◆ BasicBlockEdge()

SVF::BasicBlockEdge::BasicBlockEdge ( SVFBasicBlock *  s,
SVFBasicBlock *  d 
)
inline

Constructor.

Definition at line 50 of file BasicBlockG.h.

51 {
52 }
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:76
GenericEdge< SVFBasicBlock > GenericBasicBlockEdgeTy
Definition BasicBlockG.h:44

◆ ~BasicBlockEdge()

SVF::BasicBlockEdge::~BasicBlockEdge ( )
inline

Destructor.

Definition at line 54 of file BasicBlockG.h.

54{}

Member Function Documentation

◆ toString()

const std::string BasicBlockEdge::toString ( ) const
virtual

Definition at line 5 of file BasicBlockG.cpp.

6{
7 std::string str;
8 std::stringstream rawstr(str);
9 rawstr << "BasicBlockEdge: " << getSrcNode()->toString() << " -> " << getDstNode()->getName();
10 return rawstr.str();
11}
NodeType * getSrcNode() const
NodeType * getDstNode() const

Friends And Related Symbol Documentation

◆ operator<<

OutStream & operator<< ( OutStream &  o,
const BasicBlockEdge &  edge 
)
friend

Overloading operator << for dumping ICFG node ID.

Definition at line 58 of file BasicBlockG.h.

59 {
60 o << edge.toString();
61 return o;
62 }

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