Crate azul_peek_poke[][src]

Expand description

Fast binary serialization and deserialization for types with a known maximum size.

Binary Encoding Scheme

Usage

Comparison to bincode

Traits

A trait for values that provide deserialization from buffers of bytes.

A trait for values that provide serialization into buffers of bytes.

Functions

Add T::max_size() “red zone” (padding of zeroes) to the end of the vec of bytes. This allows deserialization to assert that at least T::max_size() bytes exist at all times.

Peek helper for constructing a T by Default initialized stack allocation.

Peek inplace a T from a slice of bytes, returning a slice of the remaining bytes. src must contain at least T::max_size() bytes.

Peek helper for constructing a T by Copying into an uninitialized stack allocation.

Poke helper to insert a serialized version of src at the beginning for dst.

Poke helper to append a serialized version of src to the end of dst.

Remove the “red zone” (padding of zeroes) from the end of the vec of bytes. This is effectively the inverse of ensure_red_zone, with the caveat that space reserved for the red zone is not un-reserved. Callers are repsonsible for making sure the vec actually has a red zone, otherwise data bytes can get stripped instead.

Derive Macros