#include <virtualCFG.h>
For internal use only.
A CFG path is a set of connected CFG edges; condition and variable information is combined across the edges in the path. Paths are used as parts of edges in filtered views of the CFG. They implement almost the same functions as CFG edges, and their functions are just forwarded to by filtered edge methods. This is an internal class.
Public Member Functions | |
| CFGPath (CFGEdge e) | |
| CFGPath (const CFGPath &a, const CFGPath &b) | |
| CFGPath () | |
| std::string | toString () const |
| std::string | toStringForDebugging () const |
| std::string | id () const |
| CFGNode | source () const |
| CFGNode | target () const |
| EdgeConditionKind | condition () const |
| SgExpression * | caseLabel () const |
| SgExpression * | conditionBasedOn () const |
| std::vector< SgInitializedName * > | scopesBeingExited () const |
| std::vector< SgInitializedName * > | scopesBeingEntered () const |
| bool | operator== (const CFGPath &o) const |
| bool | operator!= (const CFGPath &o) const |
| bool | operator< (const CFGPath &o) const |
| An arbitrary order, so we can use this in std::set and std::map. | |
| const std::vector< CFGEdge > & | getEdges () const |
| Returns the edges in the path, starting at the source and ending at the target. | |
Private Attributes | |
| std::vector< CFGEdge > | edges |
| VirtualCFG::CFGPath::CFGPath | ( | CFGEdge | e | ) | [inline] |
| VirtualCFG::CFGPath::CFGPath | ( | ) | [inline] |
| std::string VirtualCFG::CFGPath::toString | ( | ) | const |
| std::string VirtualCFG::CFGPath::toStringForDebugging | ( | ) | const |
| std::string VirtualCFG::CFGPath::id | ( | ) | const |
| CFGNode VirtualCFG::CFGPath::source | ( | ) | const [inline] |
| CFGNode VirtualCFG::CFGPath::target | ( | ) | const [inline] |
| EdgeConditionKind VirtualCFG::CFGPath::condition | ( | ) | const [inline] |
| SgExpression* VirtualCFG::CFGPath::caseLabel | ( | ) | const [inline] |
| SgExpression* VirtualCFG::CFGPath::conditionBasedOn | ( | ) | const [inline] |
| std::vector<SgInitializedName*> VirtualCFG::CFGPath::scopesBeingExited | ( | ) | const [inline] |
| std::vector<SgInitializedName*> VirtualCFG::CFGPath::scopesBeingEntered | ( | ) | const [inline] |
| bool VirtualCFG::CFGPath::operator== | ( | const CFGPath & | o | ) | const [inline] |
| bool VirtualCFG::CFGPath::operator!= | ( | const CFGPath & | o | ) | const [inline] |
| bool VirtualCFG::CFGPath::operator< | ( | const CFGPath & | o | ) | const [inline] |
An arbitrary order, so we can use this in std::set and std::map.
| const std::vector<CFGEdge>& VirtualCFG::CFGPath::getEdges | ( | ) | const [inline] |
Returns the edges in the path, starting at the source and ending at the target.
std::vector<CFGEdge> VirtualCFG::CFGPath::edges [private] |
1.4.7