LLDB mainline
|
#include <SBPlatform.h>
Public Member Functions | |
SBPlatform () | |
SBPlatform (const char *platform_name) | |
SBPlatform (const SBPlatform &rhs) | |
SBPlatform & | operator= (const SBPlatform &rhs) |
~SBPlatform () | |
operator bool () const | |
bool | IsValid () const |
void | Clear () |
const char * | GetWorkingDirectory () |
bool | SetWorkingDirectory (const char *path) |
const char * | GetName () |
SBError | ConnectRemote (SBPlatformConnectOptions &connect_options) |
void | DisconnectRemote () |
bool | IsConnected () |
const char * | GetTriple () |
const char * | GetHostname () |
const char * | GetOSBuild () |
const char * | GetOSDescription () |
uint32_t | GetOSMajorVersion () |
uint32_t | GetOSMinorVersion () |
uint32_t | GetOSUpdateVersion () |
void | SetSDKRoot (const char *sysroot) |
SBError | Put (SBFileSpec &src, SBFileSpec &dst) |
SBError | Get (SBFileSpec &src, SBFileSpec &dst) |
SBError | Install (SBFileSpec &src, SBFileSpec &dst) |
SBError | Run (SBPlatformShellCommand &shell_command) |
SBError | Launch (SBLaunchInfo &launch_info) |
SBProcess | Attach (SBAttachInfo &attach_info, const SBDebugger &debugger, SBTarget &target, SBError &error) |
SBProcessInfoList | GetAllProcesses (SBError &error) |
SBError | Kill (const lldb::pid_t pid) |
SBError | MakeDirectory (const char *path, uint32_t file_permissions=eFilePermissionsDirectoryDefault) |
uint32_t | GetFilePermissions (const char *path) |
SBError | SetFilePermissions (const char *path, uint32_t file_permissions) |
SBUnixSignals | GetUnixSignals () const |
SBEnvironment | GetEnvironment () |
Return the environment variables of the remote platform connection process. | |
SBError | SetLocateModuleCallback (lldb::SBPlatformLocateModuleCallback callback, void *callback_baton) |
Set a callback as an implementation for locating module in order to implement own module cache system. | |
Static Public Member Functions | |
static SBPlatform | GetHostPlatform () |
Protected Member Functions | |
lldb::PlatformSP | GetSP () const |
void | SetSP (const lldb::PlatformSP &platform_sp) |
SBError | ExecuteConnected (const std::function< lldb_private::Status(const lldb::PlatformSP &)> &func) |
Protected Attributes | |
lldb::PlatformSP | m_opaque_sp |
Friends | |
class | SBDebugger |
class | SBTarget |
Definition at line 97 of file SBPlatform.h.
SBPlatform::SBPlatform | ( | ) |
Definition at line 294 of file SBPlatform.cpp.
References LLDB_INSTRUMENT_VA.
SBPlatform::SBPlatform | ( | const char * | platform_name | ) |
Definition at line 296 of file SBPlatform.cpp.
References lldb_private::Platform::Create(), LLDB_INSTRUMENT_VA, and m_opaque_sp.
SBPlatform::SBPlatform | ( | const SBPlatform & | rhs | ) |
Definition at line 302 of file SBPlatform.cpp.
References LLDB_INSTRUMENT_VA, and m_opaque_sp.
|
default |
SBProcess SBPlatform::Attach | ( | SBAttachInfo & | attach_info, |
const SBDebugger & | debugger, | ||
SBTarget & | target, | ||
SBError & | error | ||
) |
Definition at line 578 of file SBPlatform.cpp.
References error(), lldb_private::Status::FromErrorString(), GetSP(), lldb::SBTarget::GetSP(), LLDB_INSTRUMENT_VA, lldb::SBAttachInfo::ref(), and lldb::SBDebugger::ref().
void SBPlatform::Clear | ( | ) |
Definition at line 335 of file SBPlatform.cpp.
References LLDB_INSTRUMENT_VA, and m_opaque_sp.
SBError SBPlatform::ConnectRemote | ( | SBPlatformConnectOptions & | connect_options | ) |
Definition at line 379 of file SBPlatform.cpp.
References lldb_private::Args::AppendArgument(), lldb_private::Status::FromErrorString(), GetSP(), lldb::SBPlatformConnectOptions::GetURL(), LLDB_INSTRUMENT_VA, and lldb::SBError::ref().
void SBPlatform::DisconnectRemote | ( | ) |
Definition at line 394 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
|
protected |
Definition at line 622 of file SBPlatform.cpp.
References lldb_private::Status::FromErrorString(), GetSP(), and lldb::SBError::ref().
Referenced by Install(), Kill(), Launch(), Put(), and Run().
SBError SBPlatform::Get | ( | SBFileSpec & | src, |
SBFileSpec & | dst | ||
) |
Definition at line 498 of file SBPlatform.cpp.
References lldb_private::Status::FromErrorString(), GetSP(), LLDB_INSTRUMENT_VA, lldb::SBError::ref(), and lldb::SBFileSpec::ref().
SBProcessInfoList SBPlatform::GetAllProcesses | ( | SBError & | error | ) |
Definition at line 601 of file SBPlatform.cpp.
References error(), lldb_private::Status::FromErrorString(), and GetSP().
SBEnvironment SBPlatform::GetEnvironment | ( | ) |
Return the environment variables of the remote platform connection process.
Definition at line 687 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
uint32_t SBPlatform::GetFilePermissions | ( | const char * | path | ) |
Definition at line 651 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
const char * SBPlatform::GetHostname | ( | ) |
Definition at line 456 of file SBPlatform.cpp.
References lldb_private::ConstString::GetCString(), GetSP(), and LLDB_INSTRUMENT_VA.
|
static |
Definition at line 317 of file SBPlatform.cpp.
References lldb_private::Platform::GetHostPlatform(), LLDB_INSTRUMENT, and m_opaque_sp.
const char * SBPlatform::GetName | ( | ) |
Definition at line 341 of file SBPlatform.cpp.
References lldb_private::ConstString::AsCString(), GetSP(), and LLDB_INSTRUMENT_VA.
Referenced by lldb::SBDebugger::GetSelectedPlatform(), and lldb::SBDebugger::SetSelectedPlatform().
const char * SBPlatform::GetOSBuild | ( | ) |
Definition at line 426 of file SBPlatform.cpp.
References lldb_private::ConstString::GetCString(), GetSP(), and LLDB_INSTRUMENT_VA.
const char * SBPlatform::GetOSDescription | ( | ) |
Definition at line 441 of file SBPlatform.cpp.
References lldb_private::ConstString::GetCString(), GetSP(), and LLDB_INSTRUMENT_VA.
uint32_t SBPlatform::GetOSMajorVersion | ( | ) |
Definition at line 465 of file SBPlatform.cpp.
References GetSP(), LLDB_INSTRUMENT_VA, and UINT32_MAX.
uint32_t SBPlatform::GetOSMinorVersion | ( | ) |
Definition at line 474 of file SBPlatform.cpp.
References GetSP(), LLDB_INSTRUMENT_VA, and UINT32_MAX.
uint32_t SBPlatform::GetOSUpdateVersion | ( | ) |
Definition at line 483 of file SBPlatform.cpp.
References GetSP(), LLDB_INSTRUMENT_VA, and UINT32_MAX.
|
protected |
Definition at line 350 of file SBPlatform.cpp.
References m_opaque_sp.
Referenced by Attach(), ConnectRemote(), DisconnectRemote(), ExecuteConnected(), Get(), GetAllProcesses(), GetEnvironment(), GetFilePermissions(), GetHostname(), GetName(), GetOSBuild(), GetOSDescription(), GetOSMajorVersion(), GetOSMinorVersion(), GetOSUpdateVersion(), lldb::SBDebugger::GetSelectedPlatform(), GetTriple(), GetUnixSignals(), GetWorkingDirectory(), IsConnected(), MakeDirectory(), SetFilePermissions(), SetLocateModuleCallback(), SetSDKRoot(), lldb::SBDebugger::SetSelectedPlatform(), and SetWorkingDirectory().
const char * SBPlatform::GetTriple | ( | ) |
Definition at line 411 of file SBPlatform.cpp.
References lldb_private::ConstString::GetCString(), GetSP(), lldb_private::ArchSpec::GetTriple(), lldb_private::ArchSpec::IsValid(), and LLDB_INSTRUMENT_VA.
SBUnixSignals SBPlatform::GetUnixSignals | ( | ) | const |
Definition at line 678 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
const char * SBPlatform::GetWorkingDirectory | ( | ) |
Definition at line 356 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
SBError SBPlatform::Install | ( | SBFileSpec & | src, |
SBFileSpec & | dst | ||
) |
Definition at line 531 of file SBPlatform.cpp.
References error(), ExecuteConnected(), lldb::SBFileSpec::Exists(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::FileSpec::GetPath(), LLDB_INSTRUMENT_VA, and lldb::SBFileSpec::ref().
bool SBPlatform::IsConnected | ( | ) |
Definition at line 402 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
bool SBPlatform::IsValid | ( | ) | const |
Definition at line 325 of file SBPlatform.cpp.
References LLDB_INSTRUMENT_VA.
SBError SBPlatform::Kill | ( | const lldb::pid_t | pid | ) |
Definition at line 615 of file SBPlatform.cpp.
References ExecuteConnected(), and LLDB_INSTRUMENT_VA.
SBError SBPlatform::Launch | ( | SBLaunchInfo & | launch_info | ) |
Definition at line 568 of file SBPlatform.cpp.
References error(), ExecuteConnected(), LLDB_INSTRUMENT_VA, lldb::SBLaunchInfo::ref(), and lldb::SBLaunchInfo::set_ref().
SBError SBPlatform::MakeDirectory | ( | const char * | path, |
uint32_t | file_permissions = eFilePermissionsDirectoryDefault |
||
) |
Definition at line 637 of file SBPlatform.cpp.
References lldb_private::Status::FromErrorString(), GetSP(), LLDB_INSTRUMENT_VA, and lldb::SBError::ref().
|
explicit |
Definition at line 329 of file SBPlatform.cpp.
References LLDB_INSTRUMENT_VA.
SBPlatform & SBPlatform::operator= | ( | const SBPlatform & | rhs | ) |
Definition at line 308 of file SBPlatform.cpp.
References LLDB_INSTRUMENT_VA, and m_opaque_sp.
SBError SBPlatform::Put | ( | SBFileSpec & | src, |
SBFileSpec & | dst | ||
) |
Definition at line 511 of file SBPlatform.cpp.
References ExecuteConnected(), lldb::SBFileSpec::Exists(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::FileSpec::GetPath(), LLDB_INSTRUMENT_VA, and lldb::SBFileSpec::ref().
SBError SBPlatform::Run | ( | SBPlatformShellCommand & | shell_command | ) |
Definition at line 544 of file SBPlatform.cpp.
References ExecuteConnected(), lldb_private::Status::FromErrorString(), lldb::SBPlatformShellCommand::GetCommand(), lldb::SBPlatformShellCommand::GetWorkingDirectory(), LLDB_INSTRUMENT_VA, lldb::SBPlatformShellCommand::m_opaque_ptr, PlatformShellCommand::m_output, PlatformShellCommand::m_shell, PlatformShellCommand::m_signo, PlatformShellCommand::m_status, and PlatformShellCommand::m_timeout.
SBError SBPlatform::SetFilePermissions | ( | const char * | path, |
uint32_t | file_permissions | ||
) |
Definition at line 663 of file SBPlatform.cpp.
References lldb_private::Status::FromErrorString(), GetSP(), LLDB_INSTRUMENT_VA, and lldb::SBError::ref().
SBError SBPlatform::SetLocateModuleCallback | ( | lldb::SBPlatformLocateModuleCallback | callback, |
void * | callback_baton | ||
) |
Set a callback as an implementation for locating module in order to implement own module cache system.
For example, to leverage distributed build system, to bypass pulling files from remote platform, or to search symbol files from symbol servers. The target will call this callback to get a module file and a symbol file, and it will fallback to the LLDB implementation when this callback failed or returned non-existent file. This callback can set either module_file_spec or symbol_file_spec, or both module_file_spec and symbol_file_spec. The callback will be cleared if nullptr or None is set.
Definition at line 698 of file SBPlatform.cpp.
References error(), GetSP(), LLDB_INSTRUMENT_VA, and lldb::SBFileSpec::ref().
void SBPlatform::SetSDKRoot | ( | const char * | sysroot | ) |
Definition at line 492 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
|
protected |
Definition at line 352 of file SBPlatform.cpp.
References m_opaque_sp.
Referenced by lldb::SBDebugger::GetPlatformAtIndex(), and lldb::SBDebugger::GetSelectedPlatform().
bool SBPlatform::SetWorkingDirectory | ( | const char * | path | ) |
Definition at line 365 of file SBPlatform.cpp.
References GetSP(), and LLDB_INSTRUMENT_VA.
|
friend |
Definition at line 194 of file SBPlatform.h.
|
friend |
Definition at line 195 of file SBPlatform.h.
|
protected |
Definition at line 205 of file SBPlatform.h.
Referenced by Clear(), GetHostPlatform(), lldb::SBTarget::GetPlatform(), GetSP(), operator=(), SBPlatform(), and SetSP().