diff options
Diffstat (limited to 'clang/include/clang/Lex/ModuleMap.h')
-rw-r--r-- | clang/include/clang/Lex/ModuleMap.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/clang/include/clang/Lex/ModuleMap.h b/clang/include/clang/Lex/ModuleMap.h index 6827408f10a3..41f85a1f572d 100644 --- a/clang/include/clang/Lex/ModuleMap.h +++ b/clang/include/clang/Lex/ModuleMap.h @@ -14,7 +14,6 @@ #ifndef LLVM_CLANG_LEX_MODULEMAP_H #define LLVM_CLANG_LEX_MODULEMAP_H -#include "clang/Basic/FileEntry.h" #include "clang/Basic/IdentifierTable.h" #include "clang/Basic/LangOptions.h" #include "clang/Basic/Module.h" @@ -38,6 +37,7 @@ namespace clang { class DiagnosticsEngine; class DirectoryEntry; +class FileEntry; class FileManager; class HeaderSearch; class SourceManager; @@ -648,13 +648,15 @@ public: /// Sets the umbrella header of the given module to the given /// header. - void setUmbrellaHeader(Module *Mod, FileEntryRef UmbrellaHeader, - Twine NameAsWritten); + void setUmbrellaHeader(Module *Mod, const FileEntry *UmbrellaHeader, + const Twine &NameAsWritten, + const Twine &PathRelativeToRootModuleDirectory); /// Sets the umbrella directory of the given module to the given /// directory. - void setUmbrellaDir(Module *Mod, DirectoryEntryRef UmbrellaDir, - Twine NameAsWritten); + void setUmbrellaDir(Module *Mod, const DirectoryEntry *UmbrellaDir, + const Twine &NameAsWritten, + const Twine &PathRelativeToRootModuleDirectory); /// Adds this header to the given module. /// \param Role The role of the header wrt the module. @@ -696,6 +698,9 @@ public: module_iterator module_begin() const { return Modules.begin(); } module_iterator module_end() const { return Modules.end(); } + llvm::iterator_range<module_iterator> modules() const { + return {module_begin(), module_end()}; + } /// Cache a module load. M might be nullptr. void cacheModuleLoad(const IdentifierInfo &II, Module *M) { |