aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-05-31 00:08:52 +0000
committerAnders Carlsson <andersca@mac.com>2009-05-31 00:08:52 +0000
commitf0721fe438d7e40c168e5d664970e7830bc138fb (patch)
tree0fad020da18babab2dc02642f41718540e47b318
parente61c9e80a108b5db7e5f0e702f0e455d737c6390 (diff)
Add more getters to the new AST nodes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72651 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/AST/ExprCXX.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/include/clang/AST/ExprCXX.h b/include/clang/AST/ExprCXX.h
index 852a0916cc..53386231a0 100644
--- a/include/clang/AST/ExprCXX.h
+++ b/include/clang/AST/ExprCXX.h
@@ -425,6 +425,8 @@ public:
static CXXTemporary *Create(ASTContext &C,
const CXXDestructorDecl *Destructor);
void Destroy(ASTContext &C);
+
+ const CXXDestructorDecl *getDestructor() const { return Destructor; }
};
/// CXXBindTemporaryExpr - Represents binding an expression to a temporary,
@@ -445,7 +447,8 @@ public:
void Destroy(ASTContext &C);
CXXTemporary *getTemporary() { return Temp; }
-
+ const CXXTemporary *getTemporary() const { return Temp; }
+
const Expr *getSubExpr() const { return cast<Expr>(SubExpr); }
Expr *getSubExpr() { return cast<Expr>(SubExpr); }
void setSubExpr(Expr *E) { SubExpr = E; }
@@ -1035,10 +1038,15 @@ public:
assert(i < NumTemps && "Index out of range");
return Temps[i];
}
+ const CXXTemporary *getTemporary(unsigned i) const {
+ assert(i < NumTemps && "Index out of range");
+ return Temps[i];
+ }
+
void removeLastTemporary() { NumTemps--; }
- const Expr *getSubExpr() const { return cast<Expr>(SubExpr); }
Expr *getSubExpr() { return cast<Expr>(SubExpr); }
+ const Expr *getSubExpr() const { return cast<Expr>(SubExpr); }
void setSubExpr(Expr *E) { SubExpr = E; }
virtual SourceRange getSourceRange() const { return SourceRange(); }