clang  19.0.0git
Public Member Functions | List of all members
clang::BlockDecl::Capture Class Reference

A class which contains all the information about a particular captured value. More...

#include "clang/AST/Decl.h"

Public Member Functions

 Capture (VarDecl *variable, bool byRef, bool nested, Expr *copy)
 
VarDeclgetVariable () const
 The variable being captured. More...
 
bool isByRef () const
 Whether this is a "by ref" capture, i.e. More...
 
bool isEscapingByref () const
 
bool isNonEscapingByref () const
 
bool isNested () const
 Whether this is a nested capture, i.e. More...
 
bool hasCopyExpr () const
 
ExprgetCopyExpr () const
 
void setCopyExpr (Expr *e)
 

Detailed Description

A class which contains all the information about a particular captured value.

Definition at line 4503 of file Decl.h.

Constructor & Destructor Documentation

◆ Capture()

clang::BlockDecl::Capture::Capture ( VarDecl variable,
bool  byRef,
bool  nested,
Expr copy 
)
inline

Definition at line 4518 of file Decl.h.

Member Function Documentation

◆ getCopyExpr()

Expr* clang::BlockDecl::Capture::getCopyExpr ( ) const
inline

◆ getVariable()

VarDecl* clang::BlockDecl::Capture::getVariable ( ) const
inline

◆ hasCopyExpr()

bool clang::BlockDecl::Capture::hasCopyExpr ( ) const
inline

Definition at line 4542 of file Decl.h.

◆ isByRef()

bool clang::BlockDecl::Capture::isByRef ( ) const
inline

Whether this is a "by ref" capture, i.e.

a capture of a __block variable.

Definition at line 4528 of file Decl.h.

Referenced by clang::CodeGen::CodeGenFunction::GenerateCopyHelperFunction().

◆ isEscapingByref()

bool clang::BlockDecl::Capture::isEscapingByref ( ) const
inline

Definition at line 4530 of file Decl.h.

References getVariable(), and clang::VarDecl::isEscapingByref().

◆ isNested()

bool clang::BlockDecl::Capture::isNested ( ) const
inline

Whether this is a nested capture, i.e.

the variable captured is not from outside the immediately enclosing function/block.

Definition at line 4540 of file Decl.h.

Referenced by getCaptureFieldType().

◆ isNonEscapingByref()

bool clang::BlockDecl::Capture::isNonEscapingByref ( ) const
inline

Definition at line 4534 of file Decl.h.

References getVariable(), and clang::VarDecl::isNonEscapingByref().

◆ setCopyExpr()

void clang::BlockDecl::Capture::setCopyExpr ( Expr e)
inline

Definition at line 4544 of file Decl.h.


The documentation for this class was generated from the following file: