class GlobalDecl

Declaration

class GlobalDecl { /* full declaration omitted */ };

Description

GlobalDecl - represents a global declaration. This can either be a CXXConstructorDecl and the constructor type (Base, Complete). a CXXDestructorDecl and the destructor type (Base, Complete), a FunctionDecl and the kernel reference type (Kernel, Stub), or a VarDecl, a FunctionDecl or a BlockDecl. When a new type of GlobalDecl is added, the following places should be updated to convert a Decl* to a GlobalDecl: PredefinedExpr::ComputeName() in lib/AST/Expr.cpp. getParentOfLocalEntity() in lib/AST/ItaniumMangle.cpp ASTNameGenerator::Implementation::writeFuncOrVarName in lib/AST/Mangle.cpp

Declared at: clang/include/clang/AST/GlobalDecl.h:56

Member Variables

private llvm::PointerIntPair<const Decl*, 3> Value
private unsigned int MultiVersionIndex = 0

Method Overview

Methods

GlobalDecl()

Declared at: clang/include/clang/AST/GlobalDecl.h:69

GlobalDecl(const clang::VarDecl* D,
           clang::DynamicInitKind StubKind)

Declared at: clang/include/clang/AST/GlobalDecl.h:91

Parameters

const clang::VarDecl* D
clang::DynamicInitKind StubKind

GlobalDecl(const clang::CXXDestructorDecl* D,
           clang::CXXDtorType Type)

Declared at: clang/include/clang/AST/GlobalDecl.h:90

Parameters

const clang::CXXDestructorDecl* D
clang::CXXDtorType Type

GlobalDecl(const clang::CXXConstructorDecl* D,
           clang::CXXCtorType Type)

Declared at: clang/include/clang/AST/GlobalDecl.h:89

Parameters

const clang::CXXConstructorDecl* D
clang::CXXCtorType Type

GlobalDecl(const clang::OMPDeclareMapperDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:88

Parameters

const clang::OMPDeclareMapperDecl* D

GlobalDecl(
    const clang::OMPDeclareReductionDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:87

Parameters

const clang::OMPDeclareReductionDecl* D

GlobalDecl(const clang::ObjCMethodDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:86

Parameters

const clang::ObjCMethodDecl* D

GlobalDecl(const clang::CapturedDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:85

Parameters

const clang::CapturedDecl* D

GlobalDecl(const clang::BlockDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:84

Parameters

const clang::BlockDecl* D

GlobalDecl(const clang::NamedDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:83

Parameters

const clang::NamedDecl* D

GlobalDecl(const clang::FunctionDecl* D,
           clang::KernelReferenceKind Kind)

Declared at: clang/include/clang/AST/GlobalDecl.h:79

Parameters

const clang::FunctionDecl* D
clang::KernelReferenceKind Kind

GlobalDecl(const clang::FunctionDecl* D,
           unsigned int MVIndex = 0)

Declared at: clang/include/clang/AST/GlobalDecl.h:71

Parameters

const clang::FunctionDecl* D
unsigned int MVIndex = 0

GlobalDecl(const clang::VarDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:70

Parameters

const clang::VarDecl* D

void Init(const clang::Decl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:60

Parameters

const clang::Decl* D

void* getAsOpaquePtr() const

Declared at: clang/include/clang/AST/GlobalDecl.h:148

clang::GlobalDecl getCanonicalDecl() const

Declared at: clang/include/clang/AST/GlobalDecl.h:94

clang::CXXCtorType getCtorType() const

Declared at: clang/include/clang/AST/GlobalDecl.h:105

const clang::Decl* getDecl() const

Declared at: clang/include/clang/AST/GlobalDecl.h:103

static clang::KernelReferenceKind
getDefaultKernelReference(
    const clang::FunctionDecl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:158

Parameters

const clang::FunctionDecl* D

clang::CXXDtorType getDtorType() const

Declared at: clang/include/clang/AST/GlobalDecl.h:110

clang::DynamicInitKind getDynamicInitKind() const

Declared at: clang/include/clang/AST/GlobalDecl.h:115

static clang::GlobalDecl getFromOpaquePtr(void* P)

Declared at: clang/include/clang/AST/GlobalDecl.h:152

Parameters

void* P

clang::KernelReferenceKind
getKernelReferenceKind() const

Declared at: clang/include/clang/AST/GlobalDecl.h:132

unsigned int getMultiVersionIndex() const

Declared at: clang/include/clang/AST/GlobalDecl.h:122

clang::GlobalDecl getWithCtorType(
    clang::CXXCtorType Type)

Declared at: clang/include/clang/AST/GlobalDecl.h:169

Parameters

clang::CXXCtorType Type

clang::GlobalDecl getWithDecl(
    const clang::Decl* D)

Declared at: clang/include/clang/AST/GlobalDecl.h:163

Parameters

const clang::Decl* D

clang::GlobalDecl getWithDtorType(
    clang::CXXDtorType Type)

Declared at: clang/include/clang/AST/GlobalDecl.h:176

Parameters

clang::CXXDtorType Type

clang::GlobalDecl getWithKernelReferenceKind(
    clang::KernelReferenceKind Kind)

Declared at: clang/include/clang/AST/GlobalDecl.h:194

Parameters

clang::KernelReferenceKind Kind

clang::GlobalDecl getWithMultiVersionIndex(
    unsigned int Index)

Declared at: clang/include/clang/AST/GlobalDecl.h:183

Parameters

unsigned int Index

bool operator bool() const

Declared at: clang/include/clang/AST/GlobalDecl.h:150