Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.37 KB | None | 0 0
  1. trait Trait {}
  2.  
  3. type Foo = dyn Trait;
  4.  
  5. struct Bar {
  6. baz: Vec<Box<Foo>>,
  7. }
  8.  
  9. impl Bar {
  10. pub fn buzz(&self) -> &[&Foo] {
  11. unsafe {
  12. //std::slice::from_raw_parts(self.baz.as_ptr() as *const _, self.baz.len())
  13. &*(self.baz.as_ptr() as *const Vec<&Foo>)
  14. }
  15. }
  16. }
  17.  
  18. fn main() {
  19. let bar = Bar { baz: vec![] };
  20. for _ in bar.buzz() {
  21. println!(".");
  22. }
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement