class OMPCapturedExprDecl

Declaration

class OMPCapturedExprDecl : public VarDecl { /* full declaration omitted */ };

Description

Pseudo declaration for capturing expressions. Also is used for capturing of non-static data members in non-static member functions. Clang supports capturing of variables only, but OpenMP 4.5 allows to privatize non-static members of current class in non-static member functions. This pseudo-declaration allows properly handle this kind of capture by wrapping captured expression into a variable-like declaration.

Declared at: clang/include/clang/AST/DeclOpenMP.h:383

Inherits from: VarDecl

Member Variables

Inherited from VarDecl:

protected Init
protected

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • public static clang::OMPCapturedExprDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::IdentifierInfo * Id, clang::QualType T, clang::SourceLocation StartLoc)
  • public static clang::OMPCapturedExprDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • private OMPCapturedExprDecl(clang::ASTContext & C, clang::DeclContext * DC, clang::IdentifierInfo * Id, clang::QualType Type, clang::TypeSourceInfo * TInfo, clang::SourceLocation StartLoc)
  • private void anchor()
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::SourceRange getSourceRange() const

Inherited from VarDecl:

Inherited from DeclaratorDecl:

Inherited from ValueDecl:

Inherited from NamedDecl:

Inherited from Decl:

Methods

static clang::OMPCapturedExprDecl* Create(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::IdentifierInfo* Id,
    clang::QualType T,
    clang::SourceLocation StartLoc)

Declared at: clang/include/clang/AST/DeclOpenMP.h:396

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::IdentifierInfo* Id
clang::QualType T
clang::SourceLocation StartLoc

static clang::OMPCapturedExprDecl*
CreateDeserialized(clang::ASTContext& C,
                   unsigned int ID)

Declared at: clang/include/clang/AST/DeclOpenMP.h:400

Parameters

clang::ASTContext& C
unsigned int ID

OMPCapturedExprDecl(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::IdentifierInfo* Id,
    clang::QualType Type,
    clang::TypeSourceInfo* TInfo,
    clang::SourceLocation StartLoc)

Declared at: clang/include/clang/AST/DeclOpenMP.h:387

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::IdentifierInfo* Id
clang::QualType Type
clang::TypeSourceInfo* TInfo
clang::SourceLocation StartLoc

void anchor()

Declared at: clang/include/clang/AST/DeclOpenMP.h:385

static bool classof(const clang::Decl* D)

Declared at: clang/include/clang/AST/DeclOpenMP.h:405

Parameters

const clang::Decl* D

static bool classofKind(clang::Decl::Kind K)

Declared at: clang/include/clang/AST/DeclOpenMP.h:406

Parameters

clang::Decl::Kind K

clang::SourceRange getSourceRange() const

Description

Source range that this declaration covers.

Declared at: clang/include/clang/AST/DeclOpenMP.h:402