LLDB mainline
lldb_private::XcodeSDKAndSysroot Class Reference

An abstraction which groups an XcodeSDK with the sysroot it was used from. More...

#include <XcodeSDK.h>

Public Member Functions

 XcodeSDKAndSysroot ()=default
 Constructs an empty SDK with no sysroot.
 XcodeSDKAndSysroot (XcodeSDK sdk, FileSpec sysroot)
 XcodeSDKAndSysroot (std::string name, FileSpec sysroot)
bool operator== (const XcodeSDKAndSysroot &other) const
bool operator!= (const XcodeSDKAndSysroot &other) const
const XcodeSDKGetSDK () const
const FileSpecGetSysroot () const
llvm::StringRef GetString () const
XcodeSDK::Type GetType () const
void Merge (const XcodeSDKAndSysroot &other)
bool IsAppleInternalSDK () const

Private Attributes

XcodeSDK m_sdk
FileSpec m_sysroot

Detailed Description

An abstraction which groups an XcodeSDK with the sysroot it was used from.

The sysroot is not necessarily a path to the SDK named by the XcodeSDK: a compiler may record a sysroot that was remapped, for example with -fdebug-prefix-map, in which case it is only meaningful verbatim.

Definition at line 101 of file XcodeSDK.h.

Constructor & Destructor Documentation

◆ XcodeSDKAndSysroot() [1/3]

lldb_private::XcodeSDKAndSysroot::XcodeSDKAndSysroot ( )
default

Constructs an empty SDK with no sysroot.

Referenced by Merge(), operator!=(), and operator==().

◆ XcodeSDKAndSysroot() [2/3]

lldb_private::XcodeSDKAndSysroot::XcodeSDKAndSysroot ( XcodeSDK sdk,
FileSpec sysroot )
inline

Definition at line 108 of file XcodeSDK.h.

References m_sdk, and m_sysroot.

◆ XcodeSDKAndSysroot() [3/3]

lldb_private::XcodeSDKAndSysroot::XcodeSDKAndSysroot ( std::string name,
FileSpec sysroot )
inline

Definition at line 110 of file XcodeSDK.h.

References m_sdk, and m_sysroot.

Member Function Documentation

◆ GetSDK()

const XcodeSDK & lldb_private::XcodeSDKAndSysroot::GetSDK ( ) const
inline

Definition at line 116 of file XcodeSDK.h.

References m_sdk.

Referenced by lldb_private::PlatformDarwin::ResolveXcodeSDK().

◆ GetString()

llvm::StringRef lldb_private::XcodeSDKAndSysroot::GetString ( ) const
inline

Definition at line 118 of file XcodeSDK.h.

References m_sdk.

Referenced by lldb_private::SymbolFileOnDemand::ParseXcodeSDK().

◆ GetSysroot()

const FileSpec & lldb_private::XcodeSDKAndSysroot::GetSysroot ( ) const
inline

Definition at line 117 of file XcodeSDK.h.

References m_sysroot.

Referenced by lldb_private::PlatformDarwin::ResolveXcodeSDK().

◆ GetType()

XcodeSDK::Type lldb_private::XcodeSDKAndSysroot::GetType ( ) const
inline

Definition at line 119 of file XcodeSDK.h.

References m_sdk.

◆ IsAppleInternalSDK()

bool lldb_private::XcodeSDKAndSysroot::IsAppleInternalSDK ( ) const
inline

Definition at line 122 of file XcodeSDK.h.

References m_sdk.

Referenced by lldb_private::PlatformDarwin::GetSDKPathFromDebugInfo().

◆ Merge()

void XcodeSDKAndSysroot::Merge ( const XcodeSDKAndSysroot & other)

◆ operator!=()

bool XcodeSDKAndSysroot::operator!= ( const XcodeSDKAndSysroot & other) const

Definition at line 336 of file XcodeSDK.cpp.

References XcodeSDKAndSysroot().

◆ operator==()

bool XcodeSDKAndSysroot::operator== ( const XcodeSDKAndSysroot & other) const

Definition at line 332 of file XcodeSDK.cpp.

References m_sdk, m_sysroot, and XcodeSDKAndSysroot().

Member Data Documentation

◆ m_sdk

XcodeSDK lldb_private::XcodeSDKAndSysroot::m_sdk
private

◆ m_sysroot

FileSpec lldb_private::XcodeSDKAndSysroot::m_sysroot
private

Definition at line 103 of file XcodeSDK.h.

Referenced by GetSysroot(), Merge(), operator==(), XcodeSDKAndSysroot(), and XcodeSDKAndSysroot().


The documentation for this class was generated from the following files: