|
clang 24.0.0git
|
The information about the darwin SDK that was used during this compilation. More...
#include "clang/Basic/DarwinSDKInfo.h"
Classes | |
| struct | OSEnvPair |
| A value that describes two os-environment pairs that can be used as a key to the version map in the SDK. More... | |
| class | RelatedTargetVersionMapping |
| Represents a version mapping that maps from a version of one target to a version of a related target. More... | |
| struct | SDKPlatformInfo |
| Information about the supported platforms, derived from the target triple definitions, in the SDK. More... | |
Public Types | |
| using | PlatformInfoStorageType = SmallVector<SDKPlatformInfo, 2> |
Public Member Functions | |
| DarwinSDKInfo (std::string FilePath, llvm::Triple::OSType OS, llvm::Triple::EnvironmentType Environment, VersionTuple Version, StringRef DisplayName, VersionTuple MaximumDeploymentTarget, PlatformInfoStorageType PlatformInfos, llvm::DenseMap< OSEnvPair::StorageType, std::optional< RelatedTargetVersionMapping > > VersionMappings=llvm::DenseMap< OSEnvPair::StorageType, std::optional< RelatedTargetVersionMapping > >()) | |
| DarwinSDKInfo (llvm::Triple::OSType OS, llvm::Triple::EnvironmentType Environment, VersionTuple Version, StringRef DisplayName, VersionTuple MaximumDeploymentTarget) | |
| Construct SDK Info inferred from the parameters rather than read from SDKSettings.json. | |
| StringRef | getFilePath () const |
| llvm::Triple::OSType | getOS () const |
| llvm::Triple::EnvironmentType | getEnvironment () const |
| const llvm::VersionTuple & | getVersion () const |
| const StringRef | getDisplayName () const |
| const llvm::Triple & | getCanonicalPlatformTriple () const |
| bool | supportsTriple (const llvm::Triple &Triple) const |
| StringRef | getPlatformPrefix (const llvm::Triple &Triple) const |
| const RelatedTargetVersionMapping * | getVersionMapping (OSEnvPair Kind) const |
Static Public Member Functions | |
| static std::optional< DarwinSDKInfo > | parseDarwinSDKSettingsJSON (std::string FilePath, const llvm::json::Object *Obj) |
The information about the darwin SDK that was used during this compilation.
Definition at line 34 of file DarwinSDKInfo.h.
Definition at line 168 of file DarwinSDKInfo.h.
|
inline |
Definition at line 170 of file DarwinSDKInfo.h.
Referenced by DarwinSDKInfo(), and parseDarwinSDKSettingsJSON().
| DarwinSDKInfo::DarwinSDKInfo | ( | llvm::Triple::OSType | OS, |
| llvm::Triple::EnvironmentType | Environment, | ||
| VersionTuple | Version, | ||
| StringRef | DisplayName, | ||
| VersionTuple | MaximumDeploymentTarget ) |
Construct SDK Info inferred from the parameters rather than read from SDKSettings.json.
This will infer PlatformInfos from an SDK for the OS/Environment that predates the introduction of SDKSettings.json, and will not infer version mappings.
Definition at line 349 of file DarwinSDKInfo.cpp.
References DarwinSDKInfo(), and legacyPlatformInfos().
|
inline |
Definition at line 208 of file DarwinSDKInfo.h.
|
inline |
Definition at line 206 of file DarwinSDKInfo.h.
|
inline |
Definition at line 202 of file DarwinSDKInfo.h.
|
inline |
Definition at line 198 of file DarwinSDKInfo.h.
|
inline |
Definition at line 200 of file DarwinSDKInfo.h.
Referenced by parsePlatformInfos().
| StringRef DarwinSDKInfo::getPlatformPrefix | ( | const llvm::Triple & | Triple | ) | const |
Definition at line 400 of file DarwinSDKInfo.cpp.
References findPlatformInfo().
|
inline |
Definition at line 204 of file DarwinSDKInfo.h.
|
inline |
Definition at line 227 of file DarwinSDKInfo.h.
Referenced by handleAvailabilityAttr(), and shouldInferAvailabilityAttribute().
|
static |
Definition at line 257 of file DarwinSDKInfo.cpp.
References DarwinSDKInfo(), getVersionKey(), clang::DarwinSDKInfo::OSEnvPair::macCatalystToMacOSPair(), clang::DarwinSDKInfo::OSEnvPair::macOStoMacCatalystPair(), clang::DarwinSDKInfo::RelatedTargetVersionMapping::parseJSON(), parseOSAndEnvironment(), parsePlatformInfos(), and parseXcodePlatform().
Referenced by clang::parseDarwinSDKInfo().
| bool DarwinSDKInfo::supportsTriple | ( | const llvm::Triple & | Triple | ) | const |
Definition at line 396 of file DarwinSDKInfo.cpp.
References findPlatformInfo().