LLDB mainline
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
StringExtractorGDBRemote Class Reference

#include <StringExtractorGDBRemote.h>

Inheritance diagram for StringExtractorGDBRemote:
Inheritance graph
[legend]

Public Types

enum  ServerPacketType {
  eServerPacketType_nack = 0 , eServerPacketType_ack , eServerPacketType_invalid , eServerPacketType_unimplemented ,
  eServerPacketType_interrupt , eServerPacketType_A , eServerPacketType_qfProcessInfo , eServerPacketType_qsProcessInfo ,
  eServerPacketType_qC , eServerPacketType_qEcho , eServerPacketType_qGroupName , eServerPacketType_qHostInfo ,
  eServerPacketType_qLaunchGDBServer , eServerPacketType_qQueryGDBServer , eServerPacketType_qKillSpawnedProcess , eServerPacketType_qLaunchSuccess ,
  eServerPacketType_qModuleInfo , eServerPacketType_qProcessInfoPID , eServerPacketType_qSpeedTest , eServerPacketType_qUserName ,
  eServerPacketType_qGetWorkingDir , eServerPacketType_qFileLoadAddress , eServerPacketType_QEnvironment , eServerPacketType_QEnableErrorStrings ,
  eServerPacketType_QLaunchArch , eServerPacketType_QSetDisableASLR , eServerPacketType_QSetDetachOnError , eServerPacketType_QSetSTDIN ,
  eServerPacketType_QSetSTDOUT , eServerPacketType_QSetSTDERR , eServerPacketType_QSetWorkingDir , eServerPacketType_QStartNoAckMode ,
  eServerPacketType_qPathComplete , eServerPacketType_qPlatform_shell , eServerPacketType_qPlatform_mkdir , eServerPacketType_qPlatform_chmod ,
  eServerPacketType_vFile_open , eServerPacketType_vFile_close , eServerPacketType_vFile_pread , eServerPacketType_vFile_pwrite ,
  eServerPacketType_vFile_size , eServerPacketType_vFile_mode , eServerPacketType_vFile_exists , eServerPacketType_vFile_md5 ,
  eServerPacketType_vFile_fstat , eServerPacketType_vFile_stat , eServerPacketType_vFile_symlink , eServerPacketType_vFile_unlink ,
  eServerPacketType_QEnvironmentHexEncoded , eServerPacketType_QListThreadsInStopReply , eServerPacketType_QPassSignals , eServerPacketType_QRestoreRegisterState ,
  eServerPacketType_QSaveRegisterState , eServerPacketType_QSetLogging , eServerPacketType_QSetMaxPacketSize , eServerPacketType_QSetMaxPayloadSize ,
  eServerPacketType_QSetEnableAsyncProfiling , eServerPacketType_QSyncThreadState , eServerPacketType_QThreadSuffixSupported , eServerPacketType_jThreadsInfo ,
  eServerPacketType_qsThreadInfo , eServerPacketType_qfThreadInfo , eServerPacketType_qGetPid , eServerPacketType_qGetProfileData ,
  eServerPacketType_qGDBServerVersion , eServerPacketType_qMemoryRegionInfo , eServerPacketType_qMemoryRegionInfoSupported , eServerPacketType_qProcessInfo ,
  eServerPacketType_qRcmd , eServerPacketType_qRegisterInfo , eServerPacketType_qShlibInfoAddr , eServerPacketType_qStepPacketSupported ,
  eServerPacketType_qSupported , eServerPacketType_qSyncThreadStateSupported , eServerPacketType_qThreadExtraInfo , eServerPacketType_qThreadStopInfo ,
  eServerPacketType_qVAttachOrWaitSupported , eServerPacketType_qWatchpointSupportInfo , eServerPacketType_qWatchpointSupportInfoSupported , eServerPacketType_qXfer ,
  eServerPacketType_jSignalsInfo , eServerPacketType_jModulesInfo , eServerPacketType_vAttach , eServerPacketType_vAttachWait ,
  eServerPacketType_vAttachOrWait , eServerPacketType_vAttachName , eServerPacketType_vCont , eServerPacketType_vCont_actions ,
  eServerPacketType_vKill , eServerPacketType_vRun , eServerPacketType_stop_reason , eServerPacketType_c ,
  eServerPacketType_C , eServerPacketType_D , eServerPacketType_g , eServerPacketType_G ,
  eServerPacketType_H , eServerPacketType_I , eServerPacketType_k , eServerPacketType_m ,
  eServerPacketType_M , eServerPacketType_p , eServerPacketType_P , eServerPacketType_s ,
  eServerPacketType_S , eServerPacketType_T , eServerPacketType_x , eServerPacketType_X ,
  eServerPacketType_Z , eServerPacketType_z , eServerPacketType__M , eServerPacketType__m ,
  eServerPacketType_notify , eServerPacketType_jLLDBTraceSupported , eServerPacketType_jLLDBTraceStart , eServerPacketType_jLLDBTraceStop ,
  eServerPacketType_jLLDBTraceGetState , eServerPacketType_jLLDBTraceGetBinaryData , eServerPacketType_qMemTags , eServerPacketType_QMemTags ,
  eServerPacketType_qLLDBSaveCore , eServerPacketType_QSetIgnoredExceptions , eServerPacketType_QNonStop , eServerPacketType_vStopped ,
  eServerPacketType_vCtrlC , eServerPacketType_vStdio
}
 
enum  ResponseType {
  eUnsupported = 0 , eAck , eNack , eError ,
  eOK , eResponse
}
 
typedef bool(* ResponseValidatorCallback) (void *baton, const StringExtractorGDBRemote &response)
 
- Public Types inherited from StringExtractor
enum  { BigEndian = 0 , LittleEndian = 1 }
 

Public Member Functions

 StringExtractorGDBRemote ()=default
 
 StringExtractorGDBRemote (llvm::StringRef str)
 
 StringExtractorGDBRemote (const char *cstr)
 
bool ValidateResponse () const
 
void CopyResponseValidator (const StringExtractorGDBRemote &rhs)
 
void SetResponseValidator (ResponseValidatorCallback callback, void *baton)
 
void SetResponseValidatorToOKErrorNotSupported ()
 
void SetResponseValidatorToASCIIHexBytes ()
 
void SetResponseValidatorToJSON ()
 
ServerPacketType GetServerPacketType () const
 
ResponseType GetResponseType () const
 
bool IsOKResponse () const
 
bool IsUnsupportedResponse () const
 
bool IsNormalResponse () const
 
bool IsErrorResponse () const
 
uint8_t GetError ()
 
lldb_private::Status GetStatus ()
 
size_t GetEscapedBinaryData (std::string &str)
 
std::optional< std::pair< lldb::pid_t, lldb::tid_t > > GetPidTid (lldb::pid_t default_pid)
 
- Public Member Functions inherited from StringExtractor
 StringExtractor ()
 
 StringExtractor (llvm::StringRef packet_str)
 
 StringExtractor (const char *packet_cstr)
 
virtual ~StringExtractor ()
 
void Reset (llvm::StringRef str)
 
bool IsGood () const
 
uint64_t GetFilePos () const
 
void SetFilePos (uint32_t idx)
 
void Clear ()
 
void SkipSpaces ()
 
llvm::StringRef GetStringRef () const
 
bool Empty ()
 
size_t GetBytesLeft ()
 
char GetChar (char fail_value='\0')
 
char PeekChar (char fail_value='\0')
 
int DecodeHexU8 ()
 
uint8_t GetHexU8 (uint8_t fail_value=0, bool set_eof_on_fail=true)
 
bool GetHexU8Ex (uint8_t &ch, bool set_eof_on_fail=true)
 
bool GetNameColonValue (llvm::StringRef &name, llvm::StringRef &value)
 
int32_t GetS32 (int32_t fail_value, int base=0)
 
uint32_t GetU32 (uint32_t fail_value, int base=0)
 
int64_t GetS64 (int64_t fail_value, int base=0)
 
uint64_t GetU64 (uint64_t fail_value, int base=0)
 
uint32_t GetHexMaxU32 (bool little_endian, uint32_t fail_value)
 
uint64_t GetHexMaxU64 (bool little_endian, uint64_t fail_value)
 
size_t GetHexBytes (llvm::MutableArrayRef< uint8_t > dest, uint8_t fail_fill_value)
 
size_t GetHexBytesAvail (llvm::MutableArrayRef< uint8_t > dest)
 
size_t GetHexByteString (std::string &str)
 
size_t GetHexByteStringFixedLength (std::string &str, uint32_t nibble_length)
 
size_t GetHexByteStringTerminatedBy (std::string &str, char terminator)
 
bool ConsumeFront (const llvm::StringRef &str)
 
const char * Peek ()
 

Static Public Attributes

static constexpr lldb::pid_t AllProcesses = UINT64_MAX
 
static constexpr lldb::tid_t AllThreads = UINT64_MAX
 

Protected Attributes

ResponseValidatorCallback m_validator = nullptr
 
void * m_validator_baton = nullptr
 
- Protected Attributes inherited from StringExtractor
std::string m_packet
 The string in which to extract data.
 
uint64_t m_index = 0
 When extracting data from a packet, this index will march along as things get extracted.
 

Additional Inherited Members

- Protected Member Functions inherited from StringExtractor
bool fail ()
 

Detailed Description

Definition at line 22 of file StringExtractorGDBRemote.h.

Member Typedef Documentation

◆ ResponseValidatorCallback

typedef bool(* StringExtractorGDBRemote::ResponseValidatorCallback) (void *baton, const StringExtractorGDBRemote &response)

Definition at line 24 of file StringExtractorGDBRemote.h.

Member Enumeration Documentation

◆ ResponseType

Enumerator
eUnsupported 
eAck 
eNack 
eError 
eOK 
eResponse 

Definition at line 188 of file StringExtractorGDBRemote.h.

◆ ServerPacketType

Enumerator
eServerPacketType_nack 
eServerPacketType_ack 
eServerPacketType_invalid 
eServerPacketType_unimplemented 
eServerPacketType_interrupt 
eServerPacketType_A 
eServerPacketType_qfProcessInfo 
eServerPacketType_qsProcessInfo 
eServerPacketType_qC 
eServerPacketType_qEcho 
eServerPacketType_qGroupName 
eServerPacketType_qHostInfo 
eServerPacketType_qLaunchGDBServer 
eServerPacketType_qQueryGDBServer 
eServerPacketType_qKillSpawnedProcess 
eServerPacketType_qLaunchSuccess 
eServerPacketType_qModuleInfo 
eServerPacketType_qProcessInfoPID 
eServerPacketType_qSpeedTest 
eServerPacketType_qUserName 
eServerPacketType_qGetWorkingDir 
eServerPacketType_qFileLoadAddress 
eServerPacketType_QEnvironment 
eServerPacketType_QEnableErrorStrings 
eServerPacketType_QLaunchArch 
eServerPacketType_QSetDisableASLR 
eServerPacketType_QSetDetachOnError 
eServerPacketType_QSetSTDIN 
eServerPacketType_QSetSTDOUT 
eServerPacketType_QSetSTDERR 
eServerPacketType_QSetWorkingDir 
eServerPacketType_QStartNoAckMode 
eServerPacketType_qPathComplete 
eServerPacketType_qPlatform_shell 
eServerPacketType_qPlatform_mkdir 
eServerPacketType_qPlatform_chmod 
eServerPacketType_vFile_open 
eServerPacketType_vFile_close 
eServerPacketType_vFile_pread 
eServerPacketType_vFile_pwrite 
eServerPacketType_vFile_size 
eServerPacketType_vFile_mode 
eServerPacketType_vFile_exists 
eServerPacketType_vFile_md5 
eServerPacketType_vFile_fstat 
eServerPacketType_vFile_stat 
eServerPacketType_vFile_symlink 
eServerPacketType_vFile_unlink 
eServerPacketType_QEnvironmentHexEncoded 
eServerPacketType_QListThreadsInStopReply 
eServerPacketType_QPassSignals 
eServerPacketType_QRestoreRegisterState 
eServerPacketType_QSaveRegisterState 
eServerPacketType_QSetLogging 
eServerPacketType_QSetMaxPacketSize 
eServerPacketType_QSetMaxPayloadSize 
eServerPacketType_QSetEnableAsyncProfiling 
eServerPacketType_QSyncThreadState 
eServerPacketType_QThreadSuffixSupported 
eServerPacketType_jThreadsInfo 
eServerPacketType_qsThreadInfo 
eServerPacketType_qfThreadInfo 
eServerPacketType_qGetPid 
eServerPacketType_qGetProfileData 
eServerPacketType_qGDBServerVersion 
eServerPacketType_qMemoryRegionInfo 
eServerPacketType_qMemoryRegionInfoSupported 
eServerPacketType_qProcessInfo 
eServerPacketType_qRcmd 
eServerPacketType_qRegisterInfo 
eServerPacketType_qShlibInfoAddr 
eServerPacketType_qStepPacketSupported 
eServerPacketType_qSupported 
eServerPacketType_qSyncThreadStateSupported 
eServerPacketType_qThreadExtraInfo 
eServerPacketType_qThreadStopInfo 
eServerPacketType_qVAttachOrWaitSupported 
eServerPacketType_qWatchpointSupportInfo 
eServerPacketType_qWatchpointSupportInfoSupported 
eServerPacketType_qXfer 
eServerPacketType_jSignalsInfo 
eServerPacketType_jModulesInfo 
eServerPacketType_vAttach 
eServerPacketType_vAttachWait 
eServerPacketType_vAttachOrWait 
eServerPacketType_vAttachName 
eServerPacketType_vCont 
eServerPacketType_vCont_actions 
eServerPacketType_vKill 
eServerPacketType_vRun 
eServerPacketType_stop_reason 
eServerPacketType_c 
eServerPacketType_C 
eServerPacketType_D 
eServerPacketType_g 
eServerPacketType_G 
eServerPacketType_H 
eServerPacketType_I 
eServerPacketType_k 
eServerPacketType_m 
eServerPacketType_M 
eServerPacketType_p 
eServerPacketType_P 
eServerPacketType_s 
eServerPacketType_S 
eServerPacketType_T 
eServerPacketType_x 
eServerPacketType_X 
eServerPacketType_Z 
eServerPacketType_z 
eServerPacketType__M 
eServerPacketType__m 
eServerPacketType_notify 
eServerPacketType_jLLDBTraceSupported 
eServerPacketType_jLLDBTraceStart 
eServerPacketType_jLLDBTraceStop 
eServerPacketType_jLLDBTraceGetState 
eServerPacketType_jLLDBTraceGetBinaryData 
eServerPacketType_qMemTags 
eServerPacketType_QMemTags 
eServerPacketType_qLLDBSaveCore 
eServerPacketType_QSetIgnoredExceptions 
eServerPacketType_QNonStop 
eServerPacketType_vStopped 
eServerPacketType_vCtrlC 
eServerPacketType_vStdio 

Definition at line 47 of file StringExtractorGDBRemote.h.

Constructor & Destructor Documentation

◆ StringExtractorGDBRemote() [1/3]

StringExtractorGDBRemote::StringExtractorGDBRemote ( )
default

◆ StringExtractorGDBRemote() [2/3]

StringExtractorGDBRemote::StringExtractorGDBRemote ( llvm::StringRef  str)
inline

Definition at line 29 of file StringExtractorGDBRemote.h.

◆ StringExtractorGDBRemote() [3/3]

StringExtractorGDBRemote::StringExtractorGDBRemote ( const char *  cstr)
inline

Definition at line 32 of file StringExtractorGDBRemote.h.

Member Function Documentation

◆ CopyResponseValidator()

void StringExtractorGDBRemote::CopyResponseValidator ( const StringExtractorGDBRemote rhs)

Definition at line 606 of file StringExtractorGDBRemote.cpp.

References m_validator, and m_validator_baton.

◆ GetError()

uint8_t StringExtractorGDBRemote::GetError ( )

◆ GetEscapedBinaryData()

size_t StringExtractorGDBRemote::GetEscapedBinaryData ( std::string &  str)

◆ GetPidTid()

std::optional< std::pair< lldb::pid_t, lldb::tid_t > > StringExtractorGDBRemote::GetPidTid ( lldb::pid_t  default_pid)

◆ GetResponseType()

StringExtractorGDBRemote::ResponseType StringExtractorGDBRemote::GetResponseType ( ) const

◆ GetServerPacketType()

StringExtractorGDBRemote::ServerPacketType StringExtractorGDBRemote::GetServerPacketType ( ) const

Definition at line 58 of file StringExtractorGDBRemote.cpp.

References eServerPacketType__M, eServerPacketType__m, eServerPacketType_A, eServerPacketType_ack, eServerPacketType_c, eServerPacketType_C, eServerPacketType_D, eServerPacketType_g, eServerPacketType_G, eServerPacketType_H, eServerPacketType_I, eServerPacketType_interrupt, eServerPacketType_invalid, eServerPacketType_jLLDBTraceGetBinaryData, eServerPacketType_jLLDBTraceGetState, eServerPacketType_jLLDBTraceStart, eServerPacketType_jLLDBTraceStop, eServerPacketType_jLLDBTraceSupported, eServerPacketType_jModulesInfo, eServerPacketType_jSignalsInfo, eServerPacketType_jThreadsInfo, eServerPacketType_k, eServerPacketType_m, eServerPacketType_M, eServerPacketType_nack, eServerPacketType_notify, eServerPacketType_p, eServerPacketType_P, eServerPacketType_qC, eServerPacketType_qEcho, eServerPacketType_QEnableErrorStrings, eServerPacketType_QEnvironment, eServerPacketType_QEnvironmentHexEncoded, eServerPacketType_qFileLoadAddress, eServerPacketType_qfProcessInfo, eServerPacketType_qfThreadInfo, eServerPacketType_qGDBServerVersion, eServerPacketType_qGetPid, eServerPacketType_qGetProfileData, eServerPacketType_qGetWorkingDir, eServerPacketType_qGroupName, eServerPacketType_qHostInfo, eServerPacketType_qKillSpawnedProcess, eServerPacketType_QLaunchArch, eServerPacketType_qLaunchGDBServer, eServerPacketType_qLaunchSuccess, eServerPacketType_QListThreadsInStopReply, eServerPacketType_qLLDBSaveCore, eServerPacketType_qMemoryRegionInfo, eServerPacketType_qMemoryRegionInfoSupported, eServerPacketType_qMemTags, eServerPacketType_QMemTags, eServerPacketType_qModuleInfo, eServerPacketType_QNonStop, eServerPacketType_QPassSignals, eServerPacketType_qPathComplete, eServerPacketType_qPlatform_chmod, eServerPacketType_qPlatform_mkdir, eServerPacketType_qPlatform_shell, eServerPacketType_qProcessInfo, eServerPacketType_qProcessInfoPID, eServerPacketType_qQueryGDBServer, eServerPacketType_qRcmd, eServerPacketType_qRegisterInfo, eServerPacketType_QRestoreRegisterState, eServerPacketType_QSaveRegisterState, eServerPacketType_QSetDetachOnError, eServerPacketType_QSetDisableASLR, eServerPacketType_QSetEnableAsyncProfiling, eServerPacketType_QSetIgnoredExceptions, eServerPacketType_QSetLogging, eServerPacketType_QSetMaxPacketSize, eServerPacketType_QSetMaxPayloadSize, eServerPacketType_QSetSTDERR, eServerPacketType_QSetSTDIN, eServerPacketType_QSetSTDOUT, eServerPacketType_QSetWorkingDir, eServerPacketType_qShlibInfoAddr, eServerPacketType_qSpeedTest, eServerPacketType_qsProcessInfo, eServerPacketType_QStartNoAckMode, eServerPacketType_qStepPacketSupported, eServerPacketType_qsThreadInfo, eServerPacketType_qSupported, eServerPacketType_QSyncThreadState, eServerPacketType_qSyncThreadStateSupported, eServerPacketType_qThreadExtraInfo, eServerPacketType_qThreadStopInfo, eServerPacketType_QThreadSuffixSupported, eServerPacketType_qUserName, eServerPacketType_qVAttachOrWaitSupported, eServerPacketType_qWatchpointSupportInfo, eServerPacketType_qWatchpointSupportInfoSupported, eServerPacketType_qXfer, eServerPacketType_s, eServerPacketType_S, eServerPacketType_stop_reason, eServerPacketType_T, eServerPacketType_unimplemented, eServerPacketType_vAttach, eServerPacketType_vAttachName, eServerPacketType_vAttachOrWait, eServerPacketType_vAttachWait, eServerPacketType_vCont, eServerPacketType_vCont_actions, eServerPacketType_vCtrlC, eServerPacketType_vFile_close, eServerPacketType_vFile_exists, eServerPacketType_vFile_fstat, eServerPacketType_vFile_md5, eServerPacketType_vFile_mode, eServerPacketType_vFile_open, eServerPacketType_vFile_pread, eServerPacketType_vFile_pwrite, eServerPacketType_vFile_size, eServerPacketType_vFile_stat, eServerPacketType_vFile_symlink, eServerPacketType_vFile_unlink, eServerPacketType_vKill, eServerPacketType_vRun, eServerPacketType_vStdio, eServerPacketType_vStopped, eServerPacketType_x, eServerPacketType_X, eServerPacketType_Z, eServerPacketType_z, StringExtractor::m_packet, PACKET_MATCHES, and PACKET_STARTS_WITH.

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServer::GetPacketAndSendResponse().

◆ GetStatus()

lldb_private::Status StringExtractorGDBRemote::GetStatus ( )

◆ IsErrorResponse()

bool StringExtractorGDBRemote::IsErrorResponse ( ) const

Definition at line 485 of file StringExtractorGDBRemote.cpp.

References eError, GetResponseType(), and StringExtractor::m_packet.

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::AllocateMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoReadMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoWriteMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashDone(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashErase(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetFileLoadAddress(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModuleInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModulesInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetWorkingDir(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::LaunchGDBServer(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::LaunchProcess(), lldb_private::process_gdb_remote::ProcessGDBRemote::SaveCore(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendGDBStoppointTypePacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceGetBinaryData(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceGetState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceStart(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceStop(), and lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceSupported().

◆ IsNormalResponse()

bool StringExtractorGDBRemote::IsNormalResponse ( ) const

Definition at line 481 of file StringExtractorGDBRemote.cpp.

References eResponse, and GetResponseType().

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DecodeProcessInfoResponse(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoReadMemory(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetCurrentProcessAndThreadIDs(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetCurrentProcessInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetDefaultThreadId(), lldb_private::process_gdb_remote::ProcessGDBRemote::GetFileLoadAddress(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetGDBServerVersion(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetGroupName(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetHostInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetQOffsets(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetShlibInfoAddr(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetStopReply(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadPacketSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadStopInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetUserName(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::ReadAllRegisters(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::ReadMemoryTags(), lldb_private::process_gdb_remote::GDBRemoteClientBase::ReadPacketWithOutputSupport(), and lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::ReadRegister().

◆ IsOKResponse()

bool StringExtractorGDBRemote::IsOKResponse ( ) const

Definition at line 473 of file StringExtractorGDBRemote.cpp.

References eOK, and GetResponseType().

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DeallocateMemory(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::Detach(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoWriteMemory(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::EnableErrorStringInPacket(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashDone(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashErase(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetListThreadsInStopReplySupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetLoadedDynamicLibrariesInfosSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetSharedCacheInfoSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetSyncThreadStateSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadExtendedInfoSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadSuffixSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetVAttachOrWaitSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetxPacketSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::KillSpawnedProcess(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::LaunchProcess(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::MaybeEnableCompression(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::QueryNoAckModeSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::RestoreRegisterState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendEnvironmentPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendGDBStoppointTypePacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendLaunchArchPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendLaunchEventDataPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendSetCurrentThreadPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendSignalsToIgnore(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceStart(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceStop(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::ServeSymbolLookups(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SetDetachOnError(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SetDisableASLR(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SetSTDERR(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SetSTDIN(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SetSTDOUT(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SetWorkingDir(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SyncThreadState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::WriteAllRegisters(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::WriteMemoryTags(), and lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::WriteRegister().

◆ IsUnsupportedResponse()

bool StringExtractorGDBRemote::IsUnsupportedResponse ( ) const

Definition at line 477 of file StringExtractorGDBRemote.cpp.

References eUnsupported, and GetResponseType().

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::AllocateMemory(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DeallocateMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoReadMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoWriteMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashDone(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashErase(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetCurrentProcessAndThreadIDs(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetDynamicLoaderProcessStateSupported(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetFileExists(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetFilePermissions(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetFileSize(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModuleInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModulesInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadsInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetThreadStopInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetWorkingDir(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::LaunchProcess(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::RestoreRegisterState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SaveRegisterState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendEnvironmentPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendGDBStoppointTypePacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendLaunchEventDataPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendSetCurrentThreadPacket(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceGetState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceStart(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceStop(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendTraceSupported(), and lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::ServeSymbolLookups().

◆ SetResponseValidator()

void StringExtractorGDBRemote::SetResponseValidator ( ResponseValidatorCallback  callback,
void *  baton 
)

Definition at line 612 of file StringExtractorGDBRemote.cpp.

References m_validator, and m_validator_baton.

◆ SetResponseValidatorToASCIIHexBytes()

void StringExtractorGDBRemote::SetResponseValidatorToASCIIHexBytes ( )

◆ SetResponseValidatorToJSON()

void StringExtractorGDBRemote::SetResponseValidatorToJSON ( )

◆ SetResponseValidatorToOKErrorNotSupported()

void StringExtractorGDBRemote::SetResponseValidatorToOKErrorNotSupported ( )

◆ ValidateResponse()

bool StringExtractorGDBRemote::ValidateResponse ( ) const

Member Data Documentation

◆ AllProcesses

constexpr lldb::pid_t StringExtractorGDBRemote::AllProcesses = UINT64_MAX
staticconstexpr

◆ AllThreads

constexpr lldb::tid_t StringExtractorGDBRemote::AllThreads = UINT64_MAX
staticconstexpr

◆ m_validator

ResponseValidatorCallback StringExtractorGDBRemote::m_validator = nullptr
protected

◆ m_validator_baton

void* StringExtractorGDBRemote::m_validator_baton = nullptr
protected

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