| // check-pass | |
| use std::ops::Deref; | |
| trait MyTrait { | |
| fn do_something(&self); | |
| fn as_str(&self) -> &str; | |
| } | |
| impl Deref for dyn MyTrait { | |
| type Target = str; | |
| fn deref(&self) -> &Self::Target { | |
| self.as_str() | |
| } | |
| } | |
| fn trait_object_does_something(t: &dyn MyTrait) { | |
| t.do_something() | |
| } | |
| fn main() {} |