From b0177eba7c1ce7f27df4fa934e0022ee457b6f1c Mon Sep 17 00:00:00 2001 From: Eric Christopher Date: Wed, 29 Feb 2012 03:25:27 +0000 Subject: [PATCH] Add some iterators for grabbing lambda expression contexts. llvm-svn: 151701 --- clang/include/clang/AST/DeclCXX.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/clang/include/clang/AST/DeclCXX.h b/clang/include/clang/AST/DeclCXX.h index b2773027e004..231454894222 100644 --- a/clang/include/clang/AST/DeclCXX.h +++ b/clang/include/clang/AST/DeclCXX.h @@ -997,6 +997,14 @@ public: void getCaptureFields(llvm::DenseMap &Captures, FieldDecl *&ThisCapture) const; + typedef const LambdaExpr::Capture* capture_const_iterator; + capture_const_iterator captures_begin() const { + return isLambda() ? getLambdaData().Captures : NULL; + } + capture_const_iterator captures_end() const { + return isLambda() ? captures_begin() + getLambdaData().NumCaptures : NULL; + } + /// getConversions - Retrieve the overload set containing all of the /// conversion functions in this class. UnresolvedSetImpl *getConversionFunctions() {