Trait core::ops::Deref
[−]
[src]
pub trait Deref { type Target: ?Sized; fn deref(&self) -> &Self::Target; }
The Deref
trait is used to specify the functionality of dereferencing
operations, like *v
.
Deref
also enables 'Deref
coercions'.
Examples
A struct with a single field which is accessible via dereferencing the struct.
use std::ops::Deref; struct DerefExample<T> { value: T } impl<T> Deref for DerefExample<T> { type Target = T; fn deref(&self) -> &T { &self.value } } fn main() { let x = DerefExample { value: 'a' }; assert_eq!('a', *x); }use std::ops::Deref; struct DerefExample<T> { value: T } impl<T> Deref for DerefExample<T> { type Target = T; fn deref(&self) -> &T { &self.value } } fn main() { let x = DerefExample { value: 'a' }; assert_eq!('a', *x); }