[−][src]Module uhyvelib::gdb_parser
An implementation of the server side of the GDB Remote Serial Protocol -- the protocol used by GDB and LLDB to talk to remote targets.
This library attempts to hide many of the protocol warts from server implementations. It is also mildly opinionated, in that it implements certain features itself and requires users of the library to conform. For example, it unconditionally implements the multiprocess and non-stop modes.
Protocol Documentation
Structs
Breakpoint | A descriptor for a breakpoint. The particular implementation technique of the breakpoint, hardware or software, is handled elsewhere. |
Bytecode | Target-specific bytecode. |
FileData | simple wrapper around File contents. TODO: extend, so we can return errors as well. |
MemoryRegion | A descriptor for a region of memory. |
ProcessInfo | A process identifier for LLDBs qfProcessInfo. |
ThreadId | A thread identifier. In the RSP this is just a numeric handle that is passed across the wire. It needn't correspond to any real thread or process id (though obviously it may be more convenient when it does). |
Watchpoint | A descriptor for a watchpoint. The particular semantics of the watchpoint (watching memory for read or write access) are addressed elsewhere. |
Enums
Error | An error as returned by a |
Id | Part of a process id. |
ProcessType | The |
Response | |
StopReason | The possible reasons for a thread to stop. |
VCont | vCont commands |
VContFeature | The name of certain vCont features to be addressed when queried for which are supported. |
Traits
Handler | This trait should be implemented by servers. Methods in the trait
generally default to returning |
Functions
handle_packet | Handle a single packet |