retdec
|
An edge of a CFG (represents program flow). More...
#include <cfg.h>
Public Member Functions | |
Edge (ShPtr< Node > src, ShPtr< Node > dst, ShPtr< Expression > label=nullptr) | |
Constructs a new edge src -> dst , optionally labelled by label. More... | |
ShPtr< Node > | getSrc () const |
Returns the source node of the edge. More... | |
ShPtr< Expression > | getLabel () const |
Returns the edge's label. More... | |
ShPtr< Node > | getDst () const |
Returns the destination node of the edge. More... | |
Private Attributes | |
ShPtr< Node > | src |
Edge source. More... | |
ShPtr< Expression > | label |
Edge label. More... | |
ShPtr< Node > | dst |
Edge destination. More... | |
Friends | |
class | RecursiveCFGBuilder |
class | NonRecursiveCFGBuilder |
Additional Inherited Members | |
![]() | |
NonCopyable (const NonCopyable &)=delete | |
NonCopyable & | operator= (const NonCopyable &)=delete |
NonCopyable ()=default | |
~NonCopyable ()=default | |
An edge of a CFG (represents program flow).
Instances of this class have reference object semantics.
retdec::llvmir2hll::CFG::Edge::Edge | ( | ShPtr< Node > | src, |
ShPtr< Node > | dst, | ||
ShPtr< Expression > | label = nullptr |
||
) |
Constructs a new edge src -> dst
, optionally labelled by label.
[in] | src | Source node. |
[in] | dst | Destination node. |
[in] | label | Optional edge label. |
Returns the destination node of the edge.
ShPtr< Expression > retdec::llvmir2hll::CFG::Edge::getLabel | ( | ) | const |
Returns the edge's label.
The returned label may be null.
Returns the source node of the edge.
|
friend |
|
friend |
|
private |
Edge label.