clang 24.0.0git
HeaderSearch.h File Reference
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Lex/DirectoryLookup.h"
#include "clang/Lex/ExternalPreprocessorSource.h"
#include "clang/Lex/HeaderMap.h"
#include "clang/Lex/ModuleMap.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/StringSet.h"
#include "llvm/Support/Allocator.h"
#include <cassert>
#include <cstddef>
#include <memory>
#include <string>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  clang::HeaderFileInfo
 The preprocessor keeps track of this information for each file that is #included. More...
class  clang::ExternalHeaderFileInfoSource
 An external source of header file information, which may supply information about header files already included. More...
struct  clang::FrameworkCacheEntry
 This structure is used to record entries in our framework cache. More...
struct  clang::detail::SearchDirIteratorImpl< IsConst >
 Forward iterator over the search directories of HeaderSearch. More...
class  clang::HeaderSearch
 Encapsulates the information needed to find the file referenced by a #include or #include_next, (sub-)framework lookup, etc. More...

Namespaces

namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
namespace  clang
 Top level wrappers for InstallAPI frontend operations.
namespace  clang::detail

Typedefs

template<bool Const, typename T>
using clang::detail::Qualified = std::conditional_t<Const, const T, T>
using clang::ConstSearchDirIterator = detail::SearchDirIteratorImpl<true>
using clang::SearchDirIterator = detail::SearchDirIteratorImpl<false>
using clang::ConstSearchDirRange = llvm::iterator_range<ConstSearchDirIterator>
using clang::SearchDirRange = llvm::iterator_range<SearchDirIterator>

Functions

void clang::ApplyHeaderSearchOptions (HeaderSearch &HS, const HeaderSearchOptions &HSOpts, const LangOptions &Lang, const llvm::Triple &triple)
 Apply the header search options to get given HeaderSearch object.
void clang::normalizeModuleCachePath (FileManager &FileMgr, StringRef Path, SmallVectorImpl< char > &NormalizedPath)
std::string clang::createSpecificModuleCachePath (FileManager &FileMgr, StringRef ModuleCachePath, bool DisableModuleHash, std::string ContextHash)