class MSGuidDecl

Declaration

class MSGuidDecl : public ValueDecl, public Mergeable, public Node { /* full declaration omitted */ };

Description

A global _GUID constant. These are implicitly created by UuidAttrs. struct _declspec(uuid("01234567-89ab-cdef-0123-456789abcdef")) X{}; X is a CXXRecordDecl that contains a UuidAttr that references the (unique) MSGuidDecl for the specified UUID.

Declared at: clang/include/clang/AST/DeclCXX.h:4172

Inherits from: ValueDecl, Mergeable, FoldingSetBase::Node

Member Variables

private clang::MSGuidDecl::Parts PartVal
The decomposed form of the UUID.
private clang::APValue APVal
The resolved value of the UUID as an APValue. Computed on demand and cached.

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • private static clang::MSGuidDecl * Create(const clang::ASTContext & C, clang::QualType T, clang::MSGuidDecl::Parts P)
  • private static clang::MSGuidDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • private MSGuidDecl(clang::DeclContext * DC, clang::QualType T, clang::MSGuidDecl::Parts P)
  • public static void Profile(llvm::FoldingSetNodeID & ID, clang::MSGuidDecl::Parts P)
  • public void Profile(llvm::FoldingSetNodeID & ID)
  • private void anchor()
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::APValue & getAsAPValue() const
  • public clang::MSGuidDecl::Parts getParts() const
  • public void printName(llvm::raw_ostream & OS) const

Inherited from FoldingSetBase::Node:

Inherited from ValueDecl:

Inherited from NamedDecl:

Inherited from Decl:

Methods

static clang::MSGuidDecl* Create(
    const clang::ASTContext& C,
    clang::QualType T,
    clang::MSGuidDecl::Parts P)

Declared at: clang/include/clang/AST/DeclCXX.h:4190

Parameters

const clang::ASTContext& C
clang::QualType T
clang::MSGuidDecl::Parts P

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

Declared at: clang/include/clang/AST/DeclCXX.h:4191

Parameters

clang::ASTContext& C
unsigned int ID

MSGuidDecl(clang::DeclContext* DC,
           clang::QualType T,
           clang::MSGuidDecl::Parts P)

Declared at: clang/include/clang/AST/DeclCXX.h:4188

Parameters

clang::DeclContext* DC
clang::QualType T
clang::MSGuidDecl::Parts P

static void Profile(llvm::FoldingSetNodeID& ID,
                    clang::MSGuidDecl::Parts P)

Declared at: clang/include/clang/AST/DeclCXX.h:4210

Parameters

llvm::FoldingSetNodeID& ID
clang::MSGuidDecl::Parts P

void Profile(llvm::FoldingSetNodeID& ID)

Declared at: clang/include/clang/AST/DeclCXX.h:4216

Parameters

llvm::FoldingSetNodeID& ID

void anchor()

Declared at: clang/include/clang/AST/DeclCXX.h:4186

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

Declared at: clang/include/clang/AST/DeclCXX.h:4218

Parameters

const clang::Decl* D

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

Declared at: clang/include/clang/AST/DeclCXX.h:4219

Parameters

clang::Decl::Kind K

clang::APValue& getAsAPValue() const

Description

Get the value of this MSGuidDecl as an APValue. This may fail and return an absent APValue if the type of the declaration is not of the expected shape.

Declared at: clang/include/clang/AST/DeclCXX.h:4208

clang::MSGuidDecl::Parts getParts() const

Description

Get the decomposed parts of this declaration.

Declared at: clang/include/clang/AST/DeclCXX.h:4203

void printName(llvm::raw_ostream& OS) const

Description

Print this UUID in a human-readable format.

Declared at: clang/include/clang/AST/DeclCXX.h:4200

Parameters

llvm::raw_ostream& OS