aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Analysis/PathSensitive/ExplodedGraph.h
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2009-09-10 05:44:00 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2009-09-10 05:44:00 +0000
commitb317f8f5ca8737a5bbad97a3f7566a2dbd2ed61b (patch)
treedbab3bddeef187575b62017955dc3caccaf9c922 /include/clang/Analysis/PathSensitive/ExplodedGraph.h
parentf84a4a469d8a45c76cb941595582a0fd3b9b15d3 (diff)
Make AnalysisManager stateless. Now other analyzer components only depends on
local node information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81433 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Analysis/PathSensitive/ExplodedGraph.h')
-rw-r--r--include/clang/Analysis/PathSensitive/ExplodedGraph.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/clang/Analysis/PathSensitive/ExplodedGraph.h b/include/clang/Analysis/PathSensitive/ExplodedGraph.h
index fc41333f27..d8659c2302 100644
--- a/include/clang/Analysis/PathSensitive/ExplodedGraph.h
+++ b/include/clang/Analysis/PathSensitive/ExplodedGraph.h
@@ -119,10 +119,14 @@ public:
CFG &getCFG() const { return *getLocationContext()->getCFG(); }
- const GRState* getState() const {
- return State;
+ ParentMap &getParentMap() const {return getLocationContext()->getParentMap();}
+
+ LiveVariables &getLiveVariables() const {
+ return *getLocationContext()->getLiveVariables();
}
+ const GRState* getState() const { return State; }
+
template <typename T>
const T* getLocationAs() const { return llvm::dyn_cast<T>(&Location); }