Lines Matching refs:Module

59 void ModuleMap::resolveLinkAsDependencies(Module *Mod) {  in resolveLinkAsDependencies()
70 void ModuleMap::addLinkAsDependency(Module *Mod) { in addLinkAsDependency()
77 Module::HeaderKind ModuleMap::headerRoleToKind(ModuleHeaderRole Role) { in headerRoleToKind()
81 return Module::HK_Normal; in headerRoleToKind()
83 return Module::HK_Private; in headerRoleToKind()
85 return Module::HK_Textual; in headerRoleToKind()
87 return Module::HK_PrivateTextual; in headerRoleToKind()
92 ModuleMap::headerKindToRole(Module::HeaderKind Kind) { in headerKindToRole()
94 case Module::HK_Normal: in headerKindToRole()
96 case Module::HK_Private: in headerKindToRole()
98 case Module::HK_Textual: in headerKindToRole()
100 case Module::HK_PrivateTextual: in headerKindToRole()
102 case Module::HK_Excluded: in headerKindToRole()
108 Module::ExportDecl
109 ModuleMap::resolveExport(Module *Mod, in resolveExport()
110 const Module::UnresolvedExportDecl &Unresolved, in resolveExport()
115 return Module::ExportDecl(nullptr, true); in resolveExport()
119 Module *Context = resolveModuleId(Unresolved.Id, Mod, Complain); in resolveExport()
123 return Module::ExportDecl(Context, Unresolved.Wildcard); in resolveExport()
126 Module *ModuleMap::resolveModuleId(const ModuleId &Id, Module *Mod, in resolveModuleId()
129 Module *Context = lookupModuleUnqualified(Id[0].first, Mod); in resolveModuleId()
140 Module *Sub = lookupModuleQualified(Id[I].first, Context); in resolveModuleId()
158 static void appendSubframeworkPaths(Module *Mod, in appendSubframeworkPaths()
176 Module *M, const Module::UnresolvedHeaderDirective &Header, in findHeader()
251 void ModuleMap::resolveHeader(Module *Mod, in resolveHeader()
252 const Module::UnresolvedHeaderDirective &Header, in resolveHeader()
259 if (Module *UmbrellaMod = UmbrellaDirs[UmbrellaDir]) in resolveHeader()
266 Module::Header H = {RelativePathName.str(), File}; in resolveHeader()
267 if (Header.Kind == Module::HK_Excluded) in resolveHeader()
275 } else if (Header.Kind == Module::HK_Excluded) { in resolveHeader()
291 Module *Mod, const Module::UnresolvedHeaderDirective &Header) { in resolveAsBuiltinHeader()
292 if (Header.Kind == Module::HK_Excluded || in resolveAsBuiltinHeader()
309 Module::Header H = {Path.str(), File}; in resolveAsBuiltinHeader()
439 static bool violatesPrivateInclude(Module *RequestingModule, in violatesPrivateInclude()
448 SmallVectorImpl<Module::Header> *HeaderList[] = { in violatesPrivateInclude()
449 &Header.getModule()->Headers[Module::HK_Private], in violatesPrivateInclude()
450 &Header.getModule()->Headers[Module::HK_PrivateTextual]}; in violatesPrivateInclude()
453 std::find_if(Hs->begin(), Hs->end(), [&](const Module::Header &H) { in violatesPrivateInclude()
462 static Module *getTopLevelOrNull(Module *M) { in getTopLevelOrNull()
466 void ModuleMap::diagnoseHeaderInclusion(Module *RequestingModule, in diagnoseHeaderInclusion()
482 Module *Private = nullptr; in diagnoseHeaderInclusion()
483 Module *NotUsed = nullptr; in diagnoseHeaderInclusion()
594 Module *Result = H.getModule(); in findOrCreateModuleForHeaderInUmbrellaDir()
598 Module *UmbrellaModule = Result; in findOrCreateModuleForHeaderInUmbrellaDir()
627 Result->Exports.push_back(Module::ExportDecl(nullptr, true)); in findOrCreateModuleForHeaderInUmbrellaDir()
643 Result->Exports.push_back(Module::ExportDecl(nullptr, true)); in findOrCreateModuleForHeaderInUmbrellaDir()
674 const Module *RequestingModule) const { in isHeaderUnavailableInModule()
703 auto IsUnavailable = [&](const Module *M) { in isHeaderUnavailableInModule()
711 llvm::DenseMap<const DirectoryEntry *, Module *>::const_iterator KnownDir in isHeaderUnavailableInModule()
714 Module *Found = KnownDir->second; in isHeaderUnavailableInModule()
720 Module *UmbrellaModule = Found; in isHeaderUnavailableInModule()
765 Module *ModuleMap::findModule(StringRef Name) const { in findModule()
766 llvm::StringMap<Module *>::const_iterator Known = Modules.find(Name); in findModule()
773 Module *ModuleMap::lookupModuleUnqualified(StringRef Name, in lookupModuleUnqualified()
774 Module *Context) const { in lookupModuleUnqualified()
776 if (Module *Sub = lookupModuleQualified(Name, Context)) in lookupModuleUnqualified()
783 Module *ModuleMap::lookupModuleQualified(StringRef Name, Module *Context) const{ in lookupModuleQualified()
790 std::pair<Module *, bool> ModuleMap::findOrCreateModule(StringRef Name, in findOrCreateModule()
791 Module *Parent, in findOrCreateModule()
795 if (Module *Sub = lookupModuleQualified(Name, Parent)) in findOrCreateModule()
799 Module *Result = new Module(Name, SourceLocation(), Parent, IsFramework, in findOrCreateModule()
810 Module *ModuleMap::createGlobalModuleForInterfaceUnit(SourceLocation Loc) { in createGlobalModuleForInterfaceUnit()
812 new Module("<global>", Loc, nullptr, /*IsFramework*/ false, in createGlobalModuleForInterfaceUnit()
814 PendingSubmodules.back()->Kind = Module::GlobalModuleFragment; in createGlobalModuleForInterfaceUnit()
818 Module *ModuleMap::createModuleForInterfaceUnit(SourceLocation Loc, in createModuleForInterfaceUnit()
820 Module *GlobalModule) { in createModuleForInterfaceUnit()
825 new Module(Name, Loc, nullptr, /*IsFramework*/ false, in createModuleForInterfaceUnit()
827 Result->Kind = Module::ModuleInterfaceUnit; in createModuleForInterfaceUnit()
846 Module *ModuleMap::createHeaderModule(StringRef Name, in createHeaderModule()
847 ArrayRef<Module::Header> Headers) { in createHeaderModule()
852 new Module(Name, SourceLocation(), nullptr, /*IsFramework*/ false, in createHeaderModule()
854 Result->Kind = Module::ModuleInterfaceUnit; in createHeaderModule()
857 for (const Module::Header &H : Headers) { in createHeaderModule()
858 auto *M = new Module(H.NameAsWritten, SourceLocation(), Result, in createHeaderModule()
862 M->Exports.push_back(Module::ExportDecl(nullptr, true)); in createHeaderModule()
871 static void inferFrameworkLink(Module *Mod, const DirectoryEntry *FrameworkDir, in inferFrameworkLink()
887 Mod->LinkLibraries.push_back(Module::LinkLibrary(Mod->Name, in inferFrameworkLink()
894 Module *ModuleMap::inferFrameworkModule(const DirectoryEntry *FrameworkDir, in inferFrameworkModule()
895 bool IsSystem, Module *Parent) { in inferFrameworkModule()
901 Module *ModuleMap::inferFrameworkModule(const DirectoryEntry *FrameworkDir, in inferFrameworkModule()
902 Attributes Attrs, Module *Parent) { in inferFrameworkModule()
918 if (Module *Mod = lookupModuleQualified(ModuleName, Parent)) in inferFrameworkModule()
988 Module *Result = new Module(ModuleName, SourceLocation(), Parent, in inferFrameworkModule()
1013 Result->Exports.push_back(Module::ExportDecl(nullptr, true)); in inferFrameworkModule()
1071 Module *ModuleMap::createShadowedModule(StringRef Name, bool IsFramework, in createShadowedModule()
1072 Module *ShadowingModule) { in createShadowedModule()
1075 Module *Result = in createShadowedModule()
1076 new Module(Name, SourceLocation(), /*Parent=*/nullptr, IsFramework, in createShadowedModule()
1086 void ModuleMap::setUmbrellaHeader(Module *Mod, const FileEntry *UmbrellaHeader, in setUmbrellaHeader()
1098 void ModuleMap::setUmbrellaDir(Module *Mod, const DirectoryEntry *UmbrellaDir, in setUmbrellaDir()
1105 void ModuleMap::addUnresolvedHeader(Module *Mod, in addUnresolvedHeader()
1106 Module::UnresolvedHeaderDirective Header, in addUnresolvedHeader()
1125 Header.Kind != Module::HK_Excluded) { in addUnresolvedHeader()
1157 void ModuleMap::resolveHeaderDirectives(Module *Mod) const { in resolveHeaderDirectives()
1166 void ModuleMap::addHeader(Module *Mod, Module::Header Header, in addHeader()
1195 void ModuleMap::excludeHeader(Module *Mod, Module::Header Header) { in excludeHeader()
1202 Mod->Headers[Module::HK_Excluded].push_back(std::move(Header)); in excludeHeader()
1206 ModuleMap::getContainingModuleMapFile(const Module *Module) const { in getContainingModuleMapFile()
1207 if (Module->DefinitionLoc.isInvalid()) in getContainingModuleMapFile()
1211 SourceMgr.getFileID(Module->DefinitionLoc)); in getContainingModuleMapFile()
1214 const FileEntry *ModuleMap::getModuleMapFileForUniquing(const Module *M) const { in getModuleMapFileForUniquing()
1222 void ModuleMap::setInferredModuleAllowedBy(Module *M, const FileEntry *ModMap) { in setInferredModuleAllowedBy()
1229 for (llvm::StringMap<Module *>::iterator M = Modules.begin(), in dump()
1249 bool ModuleMap::resolveExports(Module *Mod, bool Complain) { in resolveExports()
1253 Module::ExportDecl Export = resolveExport(Mod, UE, Complain); in resolveExports()
1262 bool ModuleMap::resolveUses(Module *Mod, bool Complain) { in resolveUses()
1266 Module *DirectUse = resolveModuleId(UDU, Mod, Complain); in resolveUses()
1275 bool ModuleMap::resolveConflicts(Module *Mod, bool Complain) { in resolveConflicts()
1279 if (Module *OtherMod = resolveModuleId(UC.Id, Mod, Complain)) { in resolveConflicts()
1280 Module::Conflict Conflict; in resolveConflicts()
1397 Module *ActiveModule = nullptr;
1407 llvm::SmallPtrSet<Module *, 2> UsesRequiresExcludedHack;
1711 const Module *M, SourceRange ReplLoc) { in diagnosePrivateModules()
1846 Module *PreviousActiveModule = ActiveModule; in parseModuleDecl()
1851 const Module *TopLevelModule = nullptr; in parseModuleDecl()
1853 if (Module *Next = Map.lookupModuleQualified(Id[I].first, ActiveModule)) { in parseModuleDecl()
1897 Module *ShadowingModule = nullptr; in parseModuleDecl()
1898 if (Module *Existing = Map.lookupModuleQualified(ModuleName, ActiveModule)) { in parseModuleDecl()
2148 static bool shouldAddRequirement(Module *M, StringRef Feature, in shouldAddRequirement()
2267 Module::UnresolvedHeaderDirective Header; in parseHeaderDecl()
2272 (LeadingToken == MMToken::ExcludeKeyword ? Module::HK_Excluded in parseHeaderDecl()
2347 static int compareModuleHeaders(const Module::Header *A, in compareModuleHeaders()
2348 const Module::Header *B) { in compareModuleHeaders()
2399 SmallVector<Module::Header, 6> Headers; in parseUmbrellaDirDecl()
2406 Module::Header Header = {I->path(), FE}; in parseUmbrellaDirDecl()
2419 if (Module *OwningModule = Map.UmbrellaDirs[Dir]) { in parseUmbrellaDirDecl()
2472 Module::UnresolvedExportDecl Unresolved = { in parseExportDecl()
2557 ActiveModule->LinkLibraries.push_back(Module::LinkLibrary(LibraryName, in parseLinkDecl()
2641 Module::UnresolvedConflict Conflict; in parseConflict()