Crate firedbg_protocol

source ·
Expand description

FireDBG Event Stream Protocol

The FireDBG Event Stream is serialized according to the SeaStreamer File Format, which by convention has the .ss extension. The Protocol defines the different streams and formats of the messages on top of the file format, and thus they have the .firedbg.ss extension. The file format is not tightly-coupled with the stream protocol, as it is possible to stream to/from a different backend, e.g. Redis.

There are currently 4 streams:

Stream KeyFormatDescription
infoJsonDebuggerInfo: debugger version, debug target, arguments and exit code, etc
fileJsonSourceFile: relative path to the source file
breakpointJsonBreakpoint: breakpoints created and the source location
eventBinaryEvent: function call, function return, etc

Modules

  • Definition of Breakpoint
  • Data structures for Debugger Event
  • Data structures for Debugger Info
  • Definition of SourceFile
  • The representation of Rust Value along with serde and pretty-print facilities

Structs

  • A hash table where the iteration order of the key-value pairs is independent of the hash values of the keys.