|
Static Value-Flow Analysis
|
#include <GenericGraph.h>
Public Member Functions | |
| GenericNode (NodeID i, GNodeK k, const SVFType *svfType=nullptr) | |
| Constructor. | |
| virtual | ~GenericNode () |
| Destructor. | |
| bool | hasIncomingEdge () const |
| Has incoming/outgoing edge set. | |
| bool | hasOutgoingEdge () const |
| iterator | OutEdgeBegin () |
| iterators | |
| iterator | OutEdgeEnd () |
| iterator | InEdgeBegin () |
| iterator | InEdgeEnd () |
| const_iterator | OutEdgeBegin () const |
| const_iterator | OutEdgeEnd () const |
| const_iterator | InEdgeBegin () const |
| const_iterator | InEdgeEnd () const |
| virtual iterator | directOutEdgeBegin () |
| Iterators used for SCC detection, overwrite it in child class if necessary. | |
| virtual iterator | directOutEdgeEnd () |
| virtual iterator | directInEdgeBegin () |
| virtual iterator | directInEdgeEnd () |
| virtual const_iterator | directOutEdgeBegin () const |
| virtual const_iterator | directOutEdgeEnd () const |
| virtual const_iterator | directInEdgeBegin () const |
| virtual const_iterator | directInEdgeEnd () const |
| bool | addIncomingEdge (EdgeType *inEdge) |
| Add incoming and outgoing edges. | |
| bool | addOutgoingEdge (EdgeType *outEdge) |
| EdgeType * | hasIncomingEdge (EdgeType *edge) const |
| Find incoming and outgoing edges. | |
| EdgeType * | hasOutgoingEdge (EdgeType *edge) const |
| const GEdgeSetTy & | getOutEdges () const |
| const GEdgeSetTy & | getInEdges () const |
| u32_t | removeIncomingEdge (EdgeType *edge) |
| u32_t | removeOutgoingEdge (EdgeType *edge) |
| Public Member Functions inherited from SVF::SVFValue | |
| SVFValue (NodeID i, GNodeK k, const SVFType *ty=nullptr) | |
| NodeID | getId () const |
| Get ID. | |
| GNodeK | getNodeKind () const |
| Get node kind. | |
| virtual const SVFType * | getType () const |
| virtual void | setName (const std::string &nameInfo) |
| virtual void | setName (std::string &&nameInfo) |
| virtual const std::string & | getName () const |
| virtual void | setSourceLoc (const std::string &sourceCodeInfo) |
| virtual const std::string | getSourceLoc () const |
| const std::string | valueOnlyToString () const |
| const bool | hasLLVMValue () const |
Static Public Member Functions | |
| static bool | classof (const GenericNode< NodeTy, EdgeTy > *) |
| static bool | classof (const SVFValue *) |
Private Attributes | |
| GEdgeSetTy | InEdges |
| all incoming edge of this node | |
| GEdgeSetTy | OutEdges |
| all outgoing edge of this node | |
Additional Inherited Members | |
| Static Protected Member Functions inherited from SVF::SVFValue | |
| static bool | isICFGNodeKinds (GNodeK n) |
| Helper functions to check node kinds. | |
| static bool | isInterICFGNodeKind (GNodeK n) |
| static bool | isSVFVarKind (GNodeK n) |
| static bool | isValVarKinds (GNodeK n) |
| static bool | isConstantDataValVar (GNodeK n) |
| static bool | isObjVarKinds (GNodeK n) |
| static bool | isBaseObjVarKinds (GNodeK n) |
| static bool | isConstantDataObjVarKinds (GNodeK n) |
| static bool | isVFGNodeKinds (GNodeK n) |
| static bool | isArgumentVFGNodeKinds (GNodeK n) |
| static bool | isStmtVFGNodeKinds (GNodeK n) |
| static bool | isPHIVFGNodeKinds (GNodeK n) |
| static bool | isMRSVFGNodeKinds (GNodeK n) |
| static bool | isMSSAPHISVFGNodeKinds (GNodeK n) |
| Protected Attributes inherited from SVF::SVFValue | |
| NodeID | id |
| Node ID. | |
| GNodeK | nodeKind |
| Node kind. | |
| const SVFType * | type |
| SVF type. | |
| std::string | name |
| std::string | sourceLoc |
| Source code information of this value. | |
Generic node on the graph as base class
Definition at line 141 of file GenericGraph.h.
| typedef GEdgeSetTy::const_iterator SVF::GenericNode< NodeTy, EdgeTy >::const_iterator |
Definition at line 152 of file GenericGraph.h.
| typedef EdgeTy SVF::GenericNode< NodeTy, EdgeTy >::EdgeType |
Definition at line 146 of file GenericGraph.h.
| typedef OrderedSet<EdgeType*, typename EdgeType::equalGEdge> SVF::GenericNode< NodeTy, EdgeTy >::GEdgeSetTy |
Edge kind.
Definition at line 148 of file GenericGraph.h.
| typedef GEdgeSetTy::iterator SVF::GenericNode< NodeTy, EdgeTy >::iterator |
Edge iterator
Definition at line 151 of file GenericGraph.h.
| typedef NodeTy SVF::GenericNode< NodeTy, EdgeTy >::NodeType |
Definition at line 145 of file GenericGraph.h.
|
inline |
Constructor.
Definition at line 162 of file GenericGraph.h.
|
inlinevirtual |
Destructor.
Definition at line 168 of file GenericGraph.h.
|
inline |
Add incoming and outgoing edges.
Definition at line 273 of file GenericGraph.h.
|
inline |
Definition at line 277 of file GenericGraph.h.
|
inlinestatic |
Definition at line 321 of file GenericGraph.h.
|
inlinestatic |
Definition at line 326 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 244 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 261 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 248 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 265 of file GenericGraph.h.
|
inlinevirtual |
Iterators used for SCC detection, overwrite it in child class if necessary.
Reimplemented in SVF::ConstraintNode.
Definition at line 236 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 253 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 240 of file GenericGraph.h.
|
inlinevirtual |
Reimplemented in SVF::ConstraintNode.
Definition at line 257 of file GenericGraph.h.
|
inline |
Definition at line 180 of file GenericGraph.h.
|
inline |
Get incoming/outgoing edge set
Definition at line 176 of file GenericGraph.h.
|
inline |
Has incoming/outgoing edge set.
Definition at line 188 of file GenericGraph.h.
|
inline |
Find incoming and outgoing edges.
Definition at line 303 of file GenericGraph.h.
|
inline |
Definition at line 192 of file GenericGraph.h.
|
inline |
Definition at line 311 of file GenericGraph.h.
|
inline |
Definition at line 208 of file GenericGraph.h.
|
inline |
Definition at line 224 of file GenericGraph.h.
|
inline |
Definition at line 212 of file GenericGraph.h.
|
inline |
Definition at line 228 of file GenericGraph.h.
|
inline |
|
inline |
Definition at line 216 of file GenericGraph.h.
|
inline |
Definition at line 204 of file GenericGraph.h.
|
inline |
Definition at line 220 of file GenericGraph.h.
|
inline |
Remove incoming and outgoing edges
Definition at line 285 of file GenericGraph.h.
|
inline |
|
private |
all incoming edge of this node
Definition at line 157 of file GenericGraph.h.
|
private |
all outgoing edge of this node
Definition at line 158 of file GenericGraph.h.