Expand description
Overview
This crate aims to fill the gap in Rust’s dynamic traits system by exposing the control over dynamic
virtual function tables to the user in a safe API. Below is a list of capabilities unlocked by
dync.
- Create homogeneous untyped
Vecs that store a single virtual function table for all contained elements. This functionality is enabled by thetraitsfeature. For more details seevec_dyn.
Re-exports
pub use downcast_rs as downcast;pub use index_slice::*;Modules
Utility macros for code generation.
This module defines the function pointers for supported traits from the standard library.
Macros
Applies $fn to an VecCopy mapping valid numeric data types by corresponding generic
parameters. For example, passing an VecCopy containing data of type u8 will cause this
macro to call $fn with type parameter u8 like $fn::<u8>(buffer).
Convert a given container with a dynamic vtable to a concrete type.
Convert a given container type (e.g. VecCopy or SliceDyn) to have a dynamic VTable.
Structs
A generic mutable Copy value reference.
A generic value reference to a Copy type.
Defines a meta struct containing information about a type but not the type itself.
A generic mutable value reference into a buffer.
A generic value reference into a buffer.
Buffer of untyped Copy values.
Enums
Traits
VTable defines a type that represents a virtual function table for some type T.