Advertisement
Guest User

Untitled

a guest
Aug 21st, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.48 KB | None | 0 0
  1. pub trait Fruit {
  2. fn name(&self) -> &'static str;
  3. }
  4.  
  5. pub struct Banana {
  6.  
  7. }
  8.  
  9. impl Fruit for Banana {
  10. fn name(&self) -> &'static str {
  11. "Banana"
  12. }
  13. }
  14.  
  15. fn main() {
  16. use std::sync::Arc;
  17. let banana_arc = Arc::new(Banana{});
  18.  
  19. let stack_banana = Banana{};
  20. let stack_fruit: &dyn Fruit = &stack_banana;
  21. println!("{}", stack_fruit.name());
  22. let banana: &Banana = &banana_arc;
  23. let fruit: &dyn Fruit = banana;
  24.  
  25. println!("{}", fruit.name());
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement