diff options
Diffstat (limited to 'include/clang/Serialization/ModuleManager.h')
-rw-r--r-- | include/clang/Serialization/ModuleManager.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/include/clang/Serialization/ModuleManager.h b/include/clang/Serialization/ModuleManager.h index 6ff0640..6dcaa21 100644 --- a/include/clang/Serialization/ModuleManager.h +++ b/include/clang/Serialization/ModuleManager.h @@ -34,7 +34,7 @@ class ModuleManager { /// \brief FileManager that handles translating between filenames and /// FileEntry *. - FileManager FileMgr; + FileManager &FileMgr; /// \brief A lookup of in-memory (virtual file) buffers llvm::DenseMap<const FileEntry *, llvm::MemoryBuffer *> InMemoryBuffers; @@ -45,7 +45,7 @@ public: typedef SmallVector<ModuleFile*, 2>::reverse_iterator ModuleReverseIterator; typedef std::pair<uint32_t, StringRef> ModuleOffset; - ModuleManager(const FileSystemOptions &FSO); + explicit ModuleManager(FileManager &FileMgr); ~ModuleManager(); /// \brief Forward iterator to traverse all loaded modules. This is reverse @@ -105,7 +105,10 @@ public: std::pair<ModuleFile *, bool> addModule(StringRef FileName, ModuleKind Type, ModuleFile *ImportedBy, unsigned Generation, std::string &ErrorStr); - + + /// \brief Remove the given set of modules. + void removeModules(ModuleIterator first, ModuleIterator last); + /// \brief Add an in-memory buffer the list of known buffers void addInMemoryBuffer(StringRef FileName, llvm::MemoryBuffer *Buffer); |