clang 20.0.0git
|
Describes the capture of either a variable, or 'this', or variable-length array type. More...
#include "clang/AST/Stmt.h"
Public Member Functions | |
Capture (SourceLocation Loc, VariableCaptureKind Kind, VarDecl *Var=nullptr) | |
Create a new capture. | |
VariableCaptureKind | getCaptureKind () const |
Determine the kind of capture. | |
SourceLocation | getLocation () const |
Retrieve the source location at which the variable or 'this' was first used. | |
bool | capturesThis () const |
Determine whether this capture handles the C++ 'this' pointer. | |
bool | capturesVariable () const |
Determine whether this capture handles a variable (by reference). | |
bool | capturesVariableByCopy () const |
Determine whether this capture handles a variable by copy. | |
bool | capturesVariableArrayType () const |
Determine whether this capture handles a variable-length array type. | |
VarDecl * | getCapturedVar () const |
Retrieve the declaration of the variable being captured. | |
Friends | |
class | ASTStmtReader |
class | CapturedStmt |
Describes the capture of either a variable, or 'this', or variable-length array type.
CapturedStmt::Capture::Capture | ( | SourceLocation | Loc, |
VariableCaptureKind | Kind, | ||
VarDecl * | Var = nullptr |
||
) |
Create a new capture.
Loc | The source location associated with this capture. |
Kind | The kind of capture (this, ByRef, ...). |
Var | The variable being captured, or null if capturing this. |
Definition at line 1280 of file Stmt.cpp.
References clang::CapturedStmt::VCK_ByCopy, clang::CapturedStmt::VCK_ByRef, clang::CapturedStmt::VCK_This, and clang::CapturedStmt::VCK_VLAType.
|
inline |
Determine whether this capture handles the C++ 'this' pointer.
Definition at line 3808 of file Stmt.h.
References getCaptureKind(), and clang::CapturedStmt::VCK_This.
Referenced by genMapInfoForCaptures().
|
inline |
Determine whether this capture handles a variable (by reference).
Definition at line 3811 of file Stmt.h.
References getCaptureKind(), and clang::CapturedStmt::VCK_ByRef.
Referenced by genMapInfoForCaptures().
|
inline |
Determine whether this capture handles a variable-length array type.
Definition at line 3820 of file Stmt.h.
References getCaptureKind(), and clang::CapturedStmt::VCK_VLAType.
Referenced by genMapInfoForCaptures().
|
inline |
Determine whether this capture handles a variable by copy.
Definition at line 3814 of file Stmt.h.
References getCaptureKind(), and clang::CapturedStmt::VCK_ByCopy.
VarDecl * CapturedStmt::Capture::getCapturedVar | ( | ) | const |
Retrieve the declaration of the variable being captured.
This operation is only valid if this capture captures a variable.
Definition at line 1305 of file Stmt.cpp.
References clang::CapturedStmt::capturesVariable().
Referenced by genMapInfoForCaptures().
CapturedStmt::VariableCaptureKind CapturedStmt::Capture::getCaptureKind | ( | ) | const |
Determine the kind of capture.
Definition at line 1301 of file Stmt.cpp.
Referenced by capturesThis(), capturesVariable(), capturesVariableArrayType(), and capturesVariableByCopy().
|
inline |
|
friend |
|
friend |