clang  14.0.0git
Classes | Namespaces | Functions
ModuleDepCollector.h File Reference
#include "clang/Basic/LLVM.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Frontend/CompilerInvocation.h"
#include "clang/Frontend/Utils.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/PPCallbacks.h"
#include "clang/Serialization/ASTReader.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/StringSet.h"
#include "llvm/Support/raw_ostream.h"
#include <string>
#include <unordered_map>
Include dependency graph for ModuleDepCollector.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  clang::tooling::dependencies::PrebuiltModuleDep
 Modular dependency that has already been built prior to the dependency scan. More...
 
struct  clang::tooling::dependencies::ModuleID
 This is used to identify a specific module. More...
 
struct  clang::tooling::dependencies::ModuleIDHasher
 
struct  clang::tooling::dependencies::ModuleDeps
 
class  clang::tooling::dependencies::ModuleDepCollectorPP
 Callback that records textual includes and direct modular includes/imports during preprocessing. More...
 
class  clang::tooling::dependencies::ModuleDepCollector
 Collects modular and non-modular dependencies of the main file by attaching ModuleDepCollectorPP to the preprocessor. More...
 

Namespaces

 clang
 
 clang::tooling
 
 clang::tooling::dependencies
 
 clang::tooling::dependencies::detail
 

Functions

void clang::tooling::dependencies::detail::collectPCMAndModuleMapPaths (llvm::ArrayRef< ModuleID > Modules, std::function< StringRef(ModuleID)> LookupPCMPath, std::function< const ModuleDeps &(ModuleID)> LookupModuleDeps, std::vector< std::string > &PCMPaths, std::vector< std::string > &ModMapPaths)
 Collect the paths of PCM and module map files for the modules in Modules transitively. More...