]> granicus.if.org Git - clang/commitdiff
[ASTReader] Add a convenience function to retrieve all the input files of a module...
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>
Tue, 18 Nov 2014 05:24:18 +0000 (05:24 +0000)
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>
Tue, 18 Nov 2014 05:24:18 +0000 (05:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@222224 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Serialization/ASTReader.h
lib/Serialization/ASTReader.cpp

index 447a6f454534ccd8960ea28903649eae3ff12393..1b0347e91fff0b2ad141a929083a560e91a5122e 100644 (file)
@@ -2147,6 +2147,10 @@ public:
 
   //RIDErief Loads comments ranges.
   void ReadComments() override;
+
+  /// Return all input files for the given module file.
+  void getInputFiles(ModuleFile &F,
+                     SmallVectorImpl<serialization::InputFile> &Files);
 };
 
 /// \brief Helper class that saves the current stream position and
index 645a1a46b3939dc03fb6be3122ef4b700a9a66ff..9c95a0cb268427b2f57822c17df34198e40e494a 100644 (file)
@@ -8142,6 +8142,14 @@ void ASTReader::ReadComments() {
   }
 }
 
+void ASTReader::getInputFiles(ModuleFile &F,
+                             SmallVectorImpl<serialization::InputFile> &Files) {
+  for (unsigned I = 0, E = F.InputFilesLoaded.size(); I != E; ++I) {
+    unsigned ID = I+1;
+    Files.push_back(getInputFile(F, ID));
+  }
+}
+
 std::string ASTReader::getOwningModuleNameForDiagnostic(const Decl *D) {
   // If we know the owning module, use it.
   if (Module *M = D->getOwningModule())