pub unsafe trait TrivialClone: Clone { }๐ฌThis is a nightly-only experimental API. (
trivial_clone)Expand description
Indicates that the Clone implementation is identical to copying the value.
This is used for some optimizations in the standard library, which specializes
on this trait to select faster implementations of functions such as
clone_from_slice. It is automatically implemented
when using #[derive(Clone, Copy)].
Note that this trait does not imply that the type is Copy, because e.g.
core::ops::Range<i32> could soundly implement this trait.
ยงSafety
Clone::clone must be equivalent to copying the value, otherwise calling functions
such as slice::clone_from_slice can have undefined behaviour.
Dyn Compatibilityยง
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.