Skip to main content

DerefPure

Trait DerefPure 

Source
pub unsafe trait DerefPure: PointeeSized { }
🔬This is a nightly-only experimental API. (deref_pure_trait #87121)
Expand description

Perma-unstable marker trait. Indicates that the type has a well-behaved Deref (and, if applicable, DerefMut) implementation. This is relied on for soundness of deref patterns.

FIXME(deref_patterns): The precise semantics are undecided; the rough idea is that successive calls to deref/deref_mut without intermediate mutation should be idempotent, in the sense that they return the same value as far as pattern-matching is concerned. Calls to deref/deref_mut must leave the pointer itself likewise unchanged.

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.

Implementors§