Crate blaze_pk

source ·
Expand description

Rust implementation of the Blaze packet system

See README for usage

Modules

Macros

Macro for generating decoding for a field and tag
Macro for defining component enums for packet identification
Macro for generating encoding for a field with with a tag and field
Macro for generating group structures prefixing the struct with (2) indicates that when encoding a byte value of two should be placed at the start.
Macro for generating structures that can be encoded and decoded from bytes (DONT USE THIS FOR GROUPS USE tdf_group because they require extra bytes)

Structs

Structure for packets that have been read where the contents are not know and are encoded as a vector of bytes.
Structure for a packet created by ourselves where the data contents are already known and not encoded
Structure of packet header which comes before the packet content and describes it.
Structure for storing functions related to creation of packets
Structure for reading over a vec of bytes using a cursor.
Tag for a Tdf value. This contains the String tag for naming the field and then the type of the field
Structure for Tdf maps these are maps that are created from two Vec so they retain insertion order but are slow for lookups. This implementation guarantees the lengths of both lists are the same
Iterator implementation for the TdfMap for iterating over the entries in the Map

Enums

Errors for when decoding packet structures
Enum for errors that could occur when dealing with packets (encoding and decoding)
The different types of packets

Constants

Traits

Trait for implementing things that can be decoded from a Reader and encoded to a byte Vec
Trait implemented by types that can be map keys
Trait for implementing packet target details

Functions

Type Definitions

Result type for returning a value or Packet Error
Encoding structure for Codec values tagged with a string tag these are encoded as the tag then the value