Trait std::ops::Deref1.0.0 [] [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'.


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 {

fn main() {
    let x = DerefExample { value: 'a' };
    assert_eq!('a', *x);

Associated Types

The resulting type after dereferencing

Required Methods

The method called to dereference a value