Resources
Learning Materials
- The rkyv book covers the motivation, architecture, and major features of rkyv
- The rkyv discord is a great place to get help with specific issues and meet other people using rkyv
Documentation
- rkyv, the core library
- rkyv_dyn, which adds trait object support to rkyv
- rkyv_typename, a type naming library
Benchmarks
- The rust serialization benchmark is a shootout style benchmark comparing many rust serialization solutions. It includes special benchmarks for zero-copy serialization solutions like rkyv.
Sister Crates
- bytecheck, which rkyv uses for validation
- ptr_meta, which rkyv uses for pointer manipulation
- rend, which rkyv uses for endian-agnostic features
Example
use ;
let value = Test ;
let mut serializer = default;
serializer.serialize_value.unwrap;
let bytes = serializer.into_serializer.into_inner;
let archived = unsafe ;
assert_eq!;
assert_eq!;
assert_eq!;
let deserialized: Test = archived.deserialize.unwrap
assert_eq!;
Thanks
Thanks to all the sponsors that keep development sustainable. Special thanks to the following sponsors for going above and beyond supporting rkyv: