[−][src]Crate safe_bytes
This crate allows reading bytes representation of structs even in presence of padding bytes.
Simply derive SafeBytes
for structures
where all field types are SafeBytes
implementations.
And SafeBytes::safe_bytes
would initialize all padding bytes
before returning &[u8]
.
All primitives implement SafeBytes
as there is no padding bytes.
Additionally some std types implement SafeBytes
.
Note that in order to initialize padding bytes
SafeBytes::safe_bytes
takes mutable reference &mut self
.
And returns shareable reference &[u8]
because not all
bitpatterns may be allowed for the type.
Macros
typed_field | Creates |
Structs
Field | Basic field information. Enough to fill padding bytes between fields. |
TypedField | Field information. Enough to fill padding bytes between fields and inside the fields. |
Traits
PaddingBane | This trait must be implemented in order to fill padding bytes of an object. |
SafeBytes | Trait for types that can initialize their padding in their bytes representation. |
Derive Macros
SafeBytes | Safely implements |