[libclang] Implement the importedASTFile indexing callback to provide
info about imported modules.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165020 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/libclang/IndexDecl.cpp b/tools/libclang/IndexDecl.cpp
index 53a98f1..65b0b16 100644
--- a/tools/libclang/IndexDecl.cpp
+++ b/tools/libclang/IndexDecl.cpp
@@ -10,6 +10,7 @@
#include "IndexingContext.h"
#include "clang/AST/DeclVisitor.h"
+#include "clang/Basic/Module.h"
using namespace clang;
using namespace cxindex;
@@ -305,6 +306,14 @@
IndexCtx.indexTypeSourceInfo(D->getTemplatedDecl()->getTypeSourceInfo(), D);
return true;
}
+
+ bool VisitImportDecl(ImportDecl *D) {
+ Module *Imported = D->getImportedModule();
+ if (Imported)
+ IndexCtx.importedModule(D->getLocation(), Imported->getFullModuleName(),
+ /*isIncludeDirective=*/false, Imported);
+ return true;
+ }
};
} // anonymous namespace