Lines Matching full:framework

58 ALWAYS_ENABLED_STATISTIC(NumFrameworkLookups, "Number of framework lookups.");
104 llvm::errs() << NumFrameworkLookups << " framework lookups.\n"
333 // Search for or infer a module map for a framework. Here we use
338 llvm::sys::path::append(FrameworkDirName, SearchName + ".framework");
535 // Check if the headermap maps the filename to a framework include
537 // framework include.
556 /// Given a framework directory, find the top-most framework directory.
559 /// \param DirName The name of the framework directory.
561 /// returned top-level module to the originally named framework.
565 assert(llvm::sys::path::extension(DirName) == ".framework" &&
566 "Not a framework directory");
573 // #include <Foo/Frameworks/Bar.framework/Headers/Wibble.h>
575 // where 'Bar' used to be embedded in 'Foo', is now a top-level framework
580 // Similar issues occur when a top-level framework has moved into an
581 // embedded framework.
597 // If this is a framework directory, then we're a subframework of this
598 // framework.
599 if (llvm::sys::path::extension(DirName) == ".framework") {
615 /// DirectoryLookup, which is a framework directory.
623 // Framework names must have a '/' in the filename.
628 // Find out if this is the home for the specified framework, by checking
637 // Otherwise, construct the path to this framework dir.
649 // FrameworkName = "/System/Library/Frameworks/Cocoa.framework/"
650 FrameworkName += ".framework/";
656 // If the framework dir doesn't exist, we fail.
662 // framework.
665 // If this is a user search directory, check if the framework has been
666 // user-specified as a system framework.
685 // Check "/System/Library/Frameworks/Cocoa.framework/Headers/file.h"
701 // Check "/System/Library/Frameworks/Cocoa.framework/PrivateHeaders/file.h"
715 // Find the framework in which this header occurs.
724 // If this is a framework directory, then we're a subframework of this
725 // framework.
726 if (llvm::sys::path::extension(FrameworkPath) == ".framework") {
808 // Detect different types of framework style paths:
810 // ...Foo.framework/{Headers,PrivateHeaders}
811 // ...Foo.framework/Versions/{A,Current}/{Headers,PrivateHeaders}
812 // ...Foo.framework/Frameworks/Nested.framework/{Headers,PrivateHeaders}
823 } else if (I->ends_with(".framework")) {
824 StringRef Name = I->drop_back(10); // Drop .framework
871 // Headers in Foo.framework/Headers should not include headers
872 // from Foo.framework/PrivateHeaders, since this violates public/private
977 StringRef Framework = FromHFI->Framework;
982 ToHFI.Framework = Framework;
1108 // If the directory characteristic is User but this framework was
1109 // user-specified to be treated as a system framework, promote the
1124 // Set the `Framework` info if this file is in a header map with framework
1125 // style include spelling or found in a framework dir. The header map case
1130 HFI.Framework =
1137 HFI.Framework =
1159 // a header in a framework that is currently being built, and we couldn't
1161 // "Foo" is the name of the framework in which the including header was found.
1169 ScratchFilename += IncludingHFI->Framework;
1206 /// within ".../Carbon.framework/Headers/Carbon.h", check to see if HIToolbox
1207 /// is a subframework within Carbon.framework. If so, return the FileEntry
1213 // Framework names must have a '/' in the filename. Find it.
1219 // Look up the base framework name of the ContextFileEnt.
1222 // If the context info wasn't a framework, couldn't be a subframework.
1224 auto FrameworkPos = ContextName.find(".framework");
1234 // Append Frameworks/HIToolbox.framework/
1237 FrameworkName += ".framework/";
1254 // If the framework dir doesn't exist, we fail.
1260 // framework.
1270 // Check ".../Frameworks/HIToolbox.framework/Headers/HIToolbox.h"
1282 // Check ".../Frameworks/HIToolbox.framework/PrivateHeaders/HIToolbox.h"
1362 if (HFI.Framework.empty())
1363 HFI.Framework = OtherHFI.Framework;
1601 StringRef HeaderSearch::getUniqueFrameworkName(StringRef Framework) {
1602 return FrameworkNames.insert(Framework).first->first();
1635 ".framework")) {
1741 // Find the top-level framework based on this framework.
1745 assert(TopFrameworkDir && "Could not find the top-most framework dir");
1747 // Determine the name of the top-level framework.
1750 // Load this framework module. If that succeeds, find the suggested module
1756 // corresponds to a module. Possibly we should lock down framework modules
1779 << File.getDir().getName().ends_with(".framework");
1810 if (DirName.ends_with(".framework"))
1864 // module.map at the framework root is also accepted.
1898 // Try to infer a module map from the framework directory.
1935 // E.g. Foo.framework/Modules/module.modulemap
1958 // Search each of the ".framework" directories to load them as modules.
1963 if (llvm::sys::path::extension(Dir->path()) != ".framework")
1970 // Load this framework module.
2028 bool IsFramework = llvm::sys::path::extension(Dir->path()) == ".framework";
2112 // Framework includes by convention use <>.
2144 // If the best prefix is a framework path, we need to compute the proper
2145 // include spelling for the framework header.