LLVM 20.0.0git
|
This class gives a tree-like API to the DenseMap that stores the DeclContext objects. More...
#include "llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h"
Public Member Functions | |
PointerIntPair< DeclContext *, 1 > | getChildDeclContext (DeclContext &Context, const DWARFDie &DIE, CompileUnit &Unit, bool InClangModule) |
Get the child of Context described by DIE in Unit. | |
DeclContext & | getRoot () |
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.
Definition at line 129 of file DWARFLinkerDeclContext.h.
PointerIntPair< DeclContext *, 1 > llvm::DeclContextTree::getChildDeclContext | ( | DeclContext & | Context, |
const DWARFDie & | DIE, | ||
CompileUnit & | Unit, | ||
bool | InClangModule | ||
) |
Get the child of Context described by DIE in Unit.
The required strings will be interned in 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.
Definition at line 48 of file DWARFLinkerDeclContext.cpp.
References assert(), llvm::StringRef::empty(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::end(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::find(), llvm::dwarf_linker::classic::DeclContext::getQualifiedNameHash(), llvm::DIE::getTag(), llvm::dwarf_linker::classic::DeclContext::getTag(), llvm::hash_combine(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::insert(), llvm::LinkageName, llvm::ShortName, and llvm::dwarf::toUnsigned().
Referenced by llvm::analyzeContextInfo().
|
inline |
Definition at line 147 of file DWARFLinkerDeclContext.h.
Referenced by llvm::dwarf_linker::classic::DWARFLinker::link().