Documentation ¶
Overview ¶
Package wire defines structs used in the wire format for the remote checker.
Index ¶
- Constants
- type Header
- func (h *Header) CopyIn(cc marshal.CopyContext, addr hostarch.Addr) (int, error)
- func (h *Header) CopyInN(cc marshal.CopyContext, addr hostarch.Addr, limit int) (int, error)
- func (h *Header) CopyOut(cc marshal.CopyContext, addr hostarch.Addr) (int, error)
- func (h *Header) CopyOutN(cc marshal.CopyContext, addr hostarch.Addr, limit int) (int, error)
- func (h *Header) MarshalBytes(dst []byte) []byte
- func (h *Header) MarshalUnsafe(dst []byte) []byte
- func (h *Header) Packed() bool
- func (h *Header) SizeBytes() int
- func (h *Header) UnmarshalBytes(src []byte) []byte
- func (h *Header) UnmarshalUnsafe(src []byte) []byte
- func (h *Header) WriteTo(writer io.Writer) (int64, error)
Constants ¶
View Source
const CurrentVersion = 1
CurrentVersion is the current wire and protocol version.
View Source
const HeaderStructSize = 8
HeaderStructSize size of header struct in bytes.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Header ¶
type Header struct { // HeaderSize is the size of the header in bytes. The payload comes // immediately after the header. The length is needed to allow the header to // expand in the future without breaking remotes that do not yet understand // the new fields. HeaderSize uint16 // MessageType describes the payload. It must be one of the pb.MessageType // values and determine how the payload is interpreted. This is more efficient // than using protobuf.Any because Any uses the full protobuf name to identify // the type. MessageType uint16 // DroppedCount is the number of points that failed to be written and had to // be dropped. It wraps around after max(uint32). DroppedCount uint32 }
Header is used to describe the message being sent to the remote process.
0 --------- 16 ---------- 32 ----------- 64 -----------+ | HeaderSize | MessageType | DroppedCount | Payload... | +---- 16 ----+---- 16 -----+----- 32 -----+------------+
+marshal
func (*Header) MarshalBytes ¶
MarshalBytes implements marshal.Marshallable.MarshalBytes.
func (*Header) MarshalUnsafe ¶
MarshalUnsafe implements marshal.Marshallable.MarshalUnsafe.
func (*Header) UnmarshalBytes ¶
UnmarshalBytes implements marshal.Marshallable.UnmarshalBytes.
func (*Header) UnmarshalUnsafe ¶
UnmarshalUnsafe implements marshal.Marshallable.UnmarshalUnsafe.
Click to show internal directories.
Click to hide internal directories.