class IndirectFieldDecl

Declaration

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

Description

Represents a field injected from an anonymous union/struct into the parent scope. These are always implicit.

Declared at: clang/include/clang/AST/Decl.h:3127

Inherits from: ValueDecl, Mergeable

Member Variables

private clang::NamedDecl** Chaining
private unsigned int ChainingSize

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • public static clang::IndirectFieldDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation L, clang::IdentifierInfo * Id, clang::QualType T, llvm::MutableArrayRef<NamedDecl *> CH)
  • public static clang::IndirectFieldDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • private IndirectFieldDecl(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation L, clang::DeclarationName N, clang::QualType T, MutableArrayRef<clang::NamedDecl *> CH)
  • private void anchor()
  • public ArrayRef<clang::NamedDecl *> chain() const
  • public clang::IndirectFieldDecl::chain_iterator chain_begin() const
  • public clang::IndirectFieldDecl::chain_iterator chain_end() const
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::FieldDecl * getAnonField() const
  • public clang::IndirectFieldDecl * getCanonicalDecl()
  • public const clang::IndirectFieldDecl * getCanonicalDecl() const
  • public unsigned int getChainingSize() const
  • public clang::VarDecl * getVarDecl() const

Inherited from ValueDecl:

Inherited from NamedDecl:

Inherited from Decl:

Methods

static clang::IndirectFieldDecl* Create(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation L,
    clang::IdentifierInfo* Id,
    clang::QualType T,
    llvm::MutableArrayRef<NamedDecl*> CH)

Declared at: clang/include/clang/AST/Decl.h:3141

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation L
clang::IdentifierInfo* Id
clang::QualType T
llvm::MutableArrayRef<NamedDecl*> CH

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

Declared at: clang/include/clang/AST/Decl.h:3145

Parameters

clang::ASTContext& C
unsigned int ID

IndirectFieldDecl(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation L,
    clang::DeclarationName N,
    clang::QualType T,
    MutableArrayRef<clang::NamedDecl*> CH)

Declared at: clang/include/clang/AST/Decl.h:3132

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation L
clang::DeclarationName N
clang::QualType T
MutableArrayRef<clang::NamedDecl*> CH

void anchor()

Declared at: clang/include/clang/AST/Decl.h:3136

ArrayRef<clang::NamedDecl*> chain() const

Declared at: clang/include/clang/AST/Decl.h:3149

clang::IndirectFieldDecl::chain_iterator
chain_begin() const

Declared at: clang/include/clang/AST/Decl.h:3152

clang::IndirectFieldDecl::chain_iterator
chain_end() const

Declared at: clang/include/clang/AST/Decl.h:3153

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

Declared at: clang/include/clang/AST/Decl.h:3171

Parameters

const clang::Decl* D

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

Declared at: clang/include/clang/AST/Decl.h:3172

Parameters

clang::Decl::Kind K

clang::FieldDecl* getAnonField() const

Declared at: clang/include/clang/AST/Decl.h:3157

clang::IndirectFieldDecl* getCanonicalDecl()

Description

Retrieves the "canonical" declaration of the given declaration.

Declared at: clang/include/clang/AST/Decl.h:3167

const clang::IndirectFieldDecl* getCanonicalDecl()
    const

Declared at: clang/include/clang/AST/Decl.h:3168

unsigned int getChainingSize() const

Declared at: clang/include/clang/AST/Decl.h:3155

clang::VarDecl* getVarDecl() const

Declared at: clang/include/clang/AST/Decl.h:3162