class DeclContextTree

Declaration

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

Description

This class gives a tree-like API to the DenseMap that stores the DeclContext objects. It holds the BumpPtrAllocator where these objects will be allocated.

Declared at: llvm/include/llvm/DWARFLinker/DWARFLinkerDeclContext.h:118

Method Overview

  • public PointerIntPair<llvm::DeclContext *, 1> getChildDeclContext(llvm::DeclContext & Context, const llvm::DWARFDie & DIE, llvm::CompileUnit & Unit, llvm::UniquingStringPool & StringPool, bool InClangModule)
  • public llvm::DeclContext & getRoot()

Methods

PointerIntPair<llvm::DeclContext*, 1>
getChildDeclContext(
    llvm::DeclContext& Context,
    const llvm::DWARFDie& DIE,
    llvm::CompileUnit& Unit,
    llvm::UniquingStringPool& StringPool,
    bool InClangModule)

Description

Get the child of \a Context described by \a DIE in \a Unit. The required strings will be interned in \a StringPool. An invalid context means it shouldn't be considered for uniquing, but its not returning null, because some children of that context might be uniquing candidates. FIXME: The invalid bit along the return value is to emulate some dsymutil-classic functionality.

Declared at: llvm/include/llvm/DWARFLinker/DWARFLinkerDeclContext.h:132

Parameters

llvm::DeclContext& Context
const llvm::DWARFDie& DIE
llvm::CompileUnit& Unit
llvm::UniquingStringPool& StringPool
bool InClangModule

Returns

The child DeclContext along with one bit that is set if this context is invalid.

llvm::DeclContext& getRoot()

Declared at: llvm/include/llvm/DWARFLinker/DWARFLinkerDeclContext.h:136