11#include " swift/extractor/mangler/SwiftMangler.h"
22#include " swift/extractor/infra/SwiftDispatcher.h"
3- #include " swift/extractor/trap/generated/decl/TrapClasses.h"
43#include " swift/logging/SwiftLogging.h"
54
65#include < swift/AST/Module.h>
@@ -170,15 +169,12 @@ void SwiftMangler::indexExtensionsAndFilePrivateValues(llvm::ArrayRef<swift::Dec
170169 }
171170}
172171
173- void SwiftMangler::indexClangExtensionsAndFilePrivateValues (
172+ uint32_t SwiftMangler::indexClangSubmoduleExtensionsAndFilePrivateValues (
174173 const clang::Module* clangModule,
175- swift::ClangModuleLoader* moduleLoader) {
176- if (!moduleLoader) {
177- return ;
178- }
179-
180- auto index = 0u ;
174+ swift::ClangModuleLoader* moduleLoader,
175+ uint32_t index) {
181176 for (const auto & submodule : clangModule->submodules ()) {
177+ index = indexClangSubmoduleExtensionsAndFilePrivateValues (submodule, moduleLoader, index);
182178 if (auto * swiftSubmodule = moduleLoader->getWrapperForModule (submodule)) {
183179 llvm::SmallVector<swift::Decl*> children;
184180 swiftSubmodule->getTopLevelDecls (children);
@@ -191,6 +187,17 @@ void SwiftMangler::indexClangExtensionsAndFilePrivateValues(
191187 }
192188 }
193189 }
190+ return index;
191+ }
192+
193+ void SwiftMangler::indexClangExtensionsAndFilePrivateValues (
194+ const clang::Module* clangModule,
195+ swift::ClangModuleLoader* moduleLoader) {
196+ if (!moduleLoader) {
197+ return ;
198+ }
199+
200+ indexClangSubmoduleExtensionsAndFilePrivateValues (clangModule, moduleLoader, 0u );
194201}
195202
196203SwiftMangledName SwiftMangler::visitGenericTypeParamDecl (const swift::GenericTypeParamDecl* decl) {
0 commit comments