clang API Documentation
#include <ScopeInfo.h>


Public Member Functions | |
| LambdaScopeInfo (DiagnosticsEngine &Diag, CXXRecordDecl *Lambda, CXXMethodDecl *CallOperator) | |
| virtual | ~LambdaScopeInfo () |
| void | finishedExplicitCaptures () |
| Note when. | |
Static Public Member Functions | |
| static bool | classof (const FunctionScopeInfo *FSI) |
| static bool | classof (const LambdaScopeInfo *BSI) |
Public Attributes | |
| CXXRecordDecl * | Lambda |
| The class that describes the lambda. | |
| CXXMethodDecl * | CallOperator |
| The class that describes the lambda. | |
| SourceRange | IntroducerRange |
| Source range covering the lambda introducer [...]. | |
| unsigned | NumExplicitCaptures |
The number of captures in the Captures list that are explicit captures. | |
| bool | Mutable |
| Whether this is a mutable lambda. | |
| bool | ExplicitParams |
| Whether the (empty) parameter list is explicit. | |
| bool | ExprNeedsCleanups |
| Whether any of the capture expressions requires cleanups. | |
| llvm::SmallVector< VarDecl *, 4 > | ArrayIndexVars |
| Variables used to index into by-copy array captures. | |
| llvm::SmallVector< unsigned, 4 > | ArrayIndexStarts |
| Offsets into the ArrayIndexVars array at which each capture starts its list of array index variables. | |
Definition at line 323 of file ScopeInfo.h.
| clang::sema::LambdaScopeInfo::LambdaScopeInfo | ( | DiagnosticsEngine & | Diag, |
| CXXRecordDecl * | Lambda, | ||
| CXXMethodDecl * | CallOperator | ||
| ) | [inline] |
Definition at line 354 of file ScopeInfo.h.
References clang::sema::FunctionScopeInfo::SK_Lambda.
| static bool clang::sema::LambdaScopeInfo::classof | ( | const FunctionScopeInfo * | FSI | ) | [inline, static] |
Reimplemented from clang::sema::CapturingScopeInfo.
Definition at line 370 of file ScopeInfo.h.
References clang::sema::FunctionScopeInfo::Kind, and clang::sema::FunctionScopeInfo::SK_Lambda.
| static bool clang::sema::LambdaScopeInfo::classof | ( | const LambdaScopeInfo * | BSI | ) | [inline, static] |
Definition at line 373 of file ScopeInfo.h.
| void clang::sema::LambdaScopeInfo::finishedExplicitCaptures | ( | ) | [inline] |
Note when.
Definition at line 366 of file ScopeInfo.h.
References clang::sema::CapturingScopeInfo::Captures, and NumExplicitCaptures.
Referenced by clang::Sema::finishLambdaExplicitCaptures().
| llvm::SmallVector<unsigned, 4> clang::sema::LambdaScopeInfo::ArrayIndexStarts |
Offsets into the ArrayIndexVars array at which each capture starts its list of array index variables.
Definition at line 352 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaExpr(), and captureInLambda().
| llvm::SmallVector<VarDecl *, 4> clang::sema::LambdaScopeInfo::ArrayIndexVars |
Variables used to index into by-copy array captures.
Definition at line 348 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaExpr(), and captureInLambda().
The class that describes the lambda.
Definition at line 329 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnCapScopeReturnStmt(), and clang::Sema::ActOnLambdaExpr().
Whether the (empty) parameter list is explicit.
Definition at line 342 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaExpr().
Whether any of the capture expressions requires cleanups.
Definition at line 345 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaExpr(), and captureInLambda().
Source range covering the lambda introducer [...].
Definition at line 332 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaExpr().
The class that describes the lambda.
Definition at line 326 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaError(), clang::Sema::ActOnLambdaExpr(), and captureInLambda().
Whether this is a mutable lambda.
Definition at line 339 of file ScopeInfo.h.
Referenced by clang::Sema::tryCaptureVariable().
The number of captures in the Captures list that are explicit captures.
Definition at line 336 of file ScopeInfo.h.
Referenced by clang::Sema::ActOnLambdaExpr(), and finishedExplicitCaptures().