use std::ops::Deref; impl Deref for MyBox { type Target = T; fn deref(&self) -> &T { &self.0 } } struct MyBox(T); impl MyBox { fn new(x: T) -> MyBox { MyBox(x) } } fn hello(name: &str) { println!("Hello, {}!", name); } // ANCHOR: here fn main() { let m = MyBox::new(String::from("Rust")); hello(&(*m)[..]); } // ANCHOR_END: here