SVF
|
#include <DPItem.h>
Public Types | |
typedef PathCondAllocator::Condition | PathCond |
typedef std::vector< std::pair< NodeID, NodeID > > | EdgeSet |
![]() | |
typedef CallStrCxt::const_iterator | const_iterator |
Public Member Functions | |
VFPathCond (PathCond *p=PathCondAllocator::trueCond()) | |
Constructor. More... | |
VFPathCond (const VFPathCond &cond) | |
Copy Constructor. More... | |
virtual | ~VFPathCond () |
Destructor. More... | |
u32_t | getMaxPathLen () const |
PathCond * | getPaths () const |
Return paths. More... | |
const EdgeSet & | getVFEdges () const |
Return paths. More... | |
void | setPaths (PathCond *p, const EdgeSet &e) |
Set paths. More... | |
u32_t | pathLen () const |
Get path length. More... | |
void | addVFEdge (NodeID from, NodeID to) |
Add SVFG Edge. More... | |
bool | hasVFEdge (NodeID from, NodeID to) const |
Has SVFG Edge. More... | |
bool | hasIncomingEdge (NodeID node) const |
Whether Node dst has incoming edge. More... | |
bool | hasOutgoingEdge (NodeID node) const |
Whether Node dst has outgoing edge. More... | |
bool | addPath (PathCondAllocator *allocator, PathCond *c, NodeID from, NodeID to) |
bool | operator< (const VFPathCond &rhs) const |
VFPathCond & | operator= (const VFPathCond &rhs) |
Overloading operator=. More... | |
bool | operator== (const VFPathCond &rhs) const |
Overloading operator==. More... | |
bool | operator!= (const VFPathCond &rhs) const |
Overloading operator!=. More... | |
std::string | vfEdgesTrace () const |
Get value-flow edge traces. More... | |
std::string | toString () const |
Dump context condition. More... | |
bool | condAnd (PathCondAllocator *allocator, PathCond *c) |
Condition operatoration. More... | |
void | condOr (PathCondAllocator *allocator, PathCond *c) |
![]() | |
ContextCond () | |
Constructor. More... | |
ContextCond (const ContextCond &cond) | |
Copy Constructor. More... | |
virtual | ~ContextCond () |
Destructor. More... | |
const CallStrCxt & | getContexts () const |
Get context. More... | |
CallStrCxt & | getContexts () |
Get context. More... | |
bool | isConcreteCxt () const |
Whether it is an concrete context. More... | |
void | setNonConcreteCxt () |
Whether it is an concrete context. More... | |
bool | containCallStr (NodeID cxt) const |
Whether contains callstring cxt. More... | |
u32_t | cxtSize () const |
Get context size. More... | |
virtual bool | pushContext (NodeID ctx) |
Push context. More... | |
virtual bool | matchContext (NodeID ctx) |
Match context. More... | |
bool | operator< (const ContextCond &rhs) const |
NodeID | operator[] (const u32_t index) const |
Overloading operator[]. More... | |
ContextCond & | operator= (const ContextCond &rhs) |
Overloading operator=. More... | |
bool | operator== (const ContextCond &rhs) const |
Overloading operator==. More... | |
bool | operator!= (const ContextCond &rhs) const |
Overloading operator!=. More... | |
const_iterator | begin () const |
Begin iterators. More... | |
const_iterator | end () const |
End iterators. More... | |
std::string | toString () const |
Dump context condition. More... | |
Static Public Member Functions | |
static void | setMaxPathLen (u32_t max) |
set max path limit More... | |
![]() | |
static void | setMaxCxtLen (u32_t max) |
set max context limit More... | |
Static Public Attributes | |
static u32_t | maximumPath = 0 |
![]() | |
static u32_t | maximumCxt = 0 |
Private Attributes | |
PathCond * | path |
EdgeSet | edges |
Static Private Attributes | |
static u32_t | maximumPathLen = 0 |
Additional Inherited Members | |
![]() | |
CallStrCxt | context |
typedef std::vector<std::pair<NodeID,NodeID> > SVF::VFPathCond::EdgeSet |
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
drop condition when existing a loop (vf cycle)
Definition at line 524 of file DPItem.h.
|
inline |
|
inline |
|
inline |
Return paths.
|
inline |
Return paths.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Overloading operator=.
Definition at line 563 of file DPItem.h.
|
inline |
|
inline |
Get path length.
|
inlinestatic |
|
inline |
Dump context condition.
Definition at line 595 of file DPItem.h.
|
inline |