clang-tools  14.0.0git
Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
clang::clangd::IncludeStructure Class Reference

#include <Headers.h>

Collaboration diagram for clang::clangd::IncludeStructure:
Collaboration graph


class  RecordHeaders

Public Types

enum  HeaderID : unsigned

Public Member Functions

 IncludeStructure ()
void collect (const CompilerInstance &CI)
llvm::Optional< HeaderIDgetID (const FileEntry *Entry) const
HeaderID getOrCreateID (const FileEntry *Entry)
StringRef getRealPath (HeaderID ID) const
bool isSelfContained (HeaderID ID) const
llvm::ArrayRef< std::string > allHeaders () const
llvm::DenseMap< HeaderID, unsigned > includeDepth (HeaderID Root=MainFileID) const

Public Attributes

llvm::DenseMap< HeaderID, SmallVector< HeaderID > > IncludeChildren
llvm::DenseMap< stdlib::Header, llvm::SmallVector< HeaderID > > StdlibHeaders
std::vector< InclusionMainFileIncludes

Static Public Attributes

static const HeaderID MainFileID = HeaderID(0u)

Detailed Description

Definition at line 192 of file Headers.h.

Member Enumeration Documentation

◆ HeaderID

Definition at line 207 of file Headers.h.

Constructor & Destructor Documentation

◆ IncludeStructure()

clang::clangd::IncludeStructure::IncludeStructure ( )

Definition at line 194 of file Headers.h.

Member Function Documentation

◆ allHeaders()

llvm::ArrayRef<std::string> clang::clangd::IncludeStructure::allHeaders ( ) const

Definition at line 222 of file Headers.h.

◆ collect()

void clang::clangd::IncludeStructure::collect ( const CompilerInstance &  CI)

Definition at line 212 of file Headers.cpp.

◆ getID()

llvm::Optional< IncludeStructure::HeaderID > clang::clangd::IncludeStructure::getID ( const FileEntry *  Entry) const

◆ getOrCreateID()

IncludeStructure::HeaderID clang::clangd::IncludeStructure::getOrCreateID ( const FileEntry *  Entry)

◆ getRealPath()

StringRef clang::clangd::IncludeStructure::getRealPath ( HeaderID  ID) const

Definition at line 212 of file Headers.h.

References ID.

◆ includeDepth()

llvm::DenseMap< IncludeStructure::HeaderID, unsigned > clang::clangd::IncludeStructure::includeDepth ( HeaderID  Root = MainFileID) const

Definition at line 253 of file Headers.cpp.

◆ isSelfContained()

bool clang::clangd::IncludeStructure::isSelfContained ( HeaderID  ID) const

Definition at line 217 of file Headers.h.

References ID.

Member Data Documentation

◆ IncludeChildren

llvm::DenseMap<HeaderID, SmallVector<HeaderID> > clang::clangd::IncludeStructure::IncludeChildren

◆ MainFileID

const HeaderID clang::clangd::IncludeStructure::MainFileID = HeaderID(0u)

Definition at line 241 of file Headers.h.

Referenced by getOrCreateID().

◆ MainFileIncludes

std::vector<Inclusion> clang::clangd::IncludeStructure::MainFileIncludes

◆ StdlibHeaders

llvm::DenseMap<stdlib::Header, llvm::SmallVector<HeaderID> > clang::clangd::IncludeStructure::StdlibHeaders

The documentation for this class was generated from the following files: