use dyn_clone::DynClone;
trait MyTrait: DynClone {
fn recite(&self);
}
impl MyTrait for String {
fn recite(&self) {
println!("{} ♫", self);
}
}
fn main() {
let line = "The slithy structs did gyre and gimble the namespace";
let x: Box<dyn MyTrait> = Box::new(String::from(line));
x.recite();
let x2 = dyn_clone::clone_box(&*x);
x2.recite();
}