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

#include <ConsGEdge.h>

Inheritance diagram for SVF::GepCGEdge:
SVF::ConstraintEdge SVF::GenericEdge< NodeTy > SVF::NormalGepCGEdge SVF::VariantGepCGEdge

Static Public Member Functions

static bool classof (const GepCGEdge *)
 Methods for support type inquiry through isa, cast, and dyn_cast:
 
static bool classof (const ConstraintEdge *edge)
 
static bool classof (const GenericConsEdgeTy *edge)
 
- Static Public Member Functions inherited from SVF::ConstraintEdge
static bool classof (const GenericConsEdgeTy *edge)
 ClassOf.
 

Protected Member Functions

 GepCGEdge (ConstraintNode *s, ConstraintNode *d, ConstraintEdgeK k, EdgeID id)
 Constructor.
 

Private Member Functions

 GepCGEdge ()
 place holder
 
 GepCGEdge (const GepCGEdge &)
 place holder
 
void operator= (const GepCGEdge &)
 place holder
 

Additional Inherited Members

- Public Types inherited from SVF::ConstraintEdge
enum  ConstraintEdgeK {
  Addr , Copy , Store , Load ,
  NormalGep , VariantGep
}
 
typedef GenericNode< ConstraintNode, ConstraintEdge >::GEdgeSetTy ConstraintEdgeSetTy
 Constraint edge type.
 
- 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)
 
- Public Member Functions inherited from SVF::ConstraintEdge
 ConstraintEdge (ConstraintNode *s, ConstraintNode *d, ConstraintEdgeK k, EdgeID id=0)
 Constructor.
 
 ~ConstraintEdge ()
 Destructor.
 
EdgeID getEdgeID () const
 Return edge ID.
 
- 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
 
- 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

Gep edge

Definition at line 225 of file ConsGEdge.h.

Constructor & Destructor Documentation

◆ GepCGEdge() [1/3]

SVF::GepCGEdge::GepCGEdge ( )
private

place holder

◆ GepCGEdge() [2/3]

SVF::GepCGEdge::GepCGEdge ( const GepCGEdge &  )
private

place holder

◆ GepCGEdge() [3/3]

SVF::GepCGEdge::GepCGEdge ( ConstraintNode *  s,
ConstraintNode *  d,
ConstraintEdgeK  k,
EdgeID  id 
)
inlineprotected

Constructor.

Definition at line 235 of file ConsGEdge.h.

236 : ConstraintEdge(s,d,k,id)
237 {
238
239 }
ConstraintEdge(ConstraintNode *s, ConstraintNode *d, ConstraintEdgeK k, EdgeID id=0)
Constructor.
Definition ConsGEdge.h:62
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:76

Member Function Documentation

◆ classof() [1/3]

static bool SVF::GepCGEdge::classof ( const ConstraintEdge *  edge)
inlinestatic

Definition at line 248 of file ConsGEdge.h.

249 {
250 return edge->getEdgeKind() == NormalGep ||
251 edge->getEdgeKind() == VariantGep;
252 }

◆ classof() [2/3]

static bool SVF::GepCGEdge::classof ( const GenericConsEdgeTy *  edge)
inlinestatic

Definition at line 253 of file ConsGEdge.h.

254 {
255 return edge->getEdgeKind() == NormalGep ||
256 edge->getEdgeKind() == VariantGep;
257 }

◆ classof() [3/3]

static bool SVF::GepCGEdge::classof ( const GepCGEdge *  )
inlinestatic

Methods for support type inquiry through isa, cast, and dyn_cast:

Definition at line 244 of file ConsGEdge.h.

245 {
246 return true;
247 }

◆ operator=()

void SVF::GepCGEdge::operator= ( const GepCGEdge &  )
private

place holder


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