File: trait_obj_immutable_self.rs

package info (click to toggle)
rust-auto-impl 1.3.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 556 kB
  • sloc: makefile: 2; sh: 1
file content (19 lines) | stat: -rw-r--r-- 360 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use auto_impl::auto_impl;


#[auto_impl(&, &mut, Box, Rc, Arc)]
trait Trait {
    fn foo(&self);
}

fn assert_impl<T: Trait>() {}

fn main() {
    use std::{rc::Rc, sync::Arc};

    assert_impl::<&dyn Trait>();
    assert_impl::<&mut dyn Trait>();
    assert_impl::<Box<dyn Trait>>();
    assert_impl::<Rc<dyn Trait>>();
    assert_impl::<Arc<dyn Trait>>();
}