Expand description

Trait object serialization for rkyv.

With rkyv_dyn, trait objects can be serialized with rkyv then the methods can be called without deserializing. All it takes is some macro magic.

See SerializeDyn for an example of how to use rkyv_dyn.


  • nightly: Enables some nightly features, such as likely.
  • strict: Guarantees that types will have the same representations across platforms and compilations. This is already the case in practice, but this feature provides a guarantee.
  • validation: Enables validation support through bytecheck.
  • vtable_cache: Enables local vtable caching to speed up lookups after the first. This requires mutating the archive, which is not possible for all use cases.


pub use validation::CheckDynError;
pub use validation::DynContext;


Validation implementations and helper types.


Registers a new impl with the trait object system.


The archived version of DynMetadata.


A trait object that can be deserialized.

An object-safe version of Deserializer.

An object-safe version of Serializer.

A trait object that can be archived.

Type Definitions

An error that can occur while serializing and deserializing trait objects.

Attribute Macros

Creates archivable trait objects and registers implementations.