pub trait Downcast<T>: Anywhere
T: Any,{
// Provided methods
fn is_type(&self) -> bool { ... }
fn downcast_ref(&self) -> Result<&T, TypeMismatch> { ... }
fn downcast_mut(&mut self) -> Result<&mut T, TypeMismatch> { ... }
fn downcast(self: Box<Self>) -> Result<Box<T>, DowncastError<Box<Self>>> { ... }
fn downcast_rc(self: Rc<Self>) -> Result<Rc<T>, DowncastError<Rc<Self>>> { ... }
}
Provided Methods§
fn is_type(&self) -> bool
fn downcast_ref(&self) -> Result<&T, TypeMismatch>
fn downcast_mut(&mut self) -> Result<&mut T, TypeMismatch>
fn downcast(self: Box<Self>) -> Result<Box<T>, DowncastError<Box<Self>>>
fn downcast_rc(self: Rc<Self>) -> Result<Rc<T>, DowncastError<Rc<Self>>>
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.