summaryrefslogtreecommitdiff
path: root/vendor/ref-cast/tests/test_custom.rs
blob: 73d9bd69958b1e40c1a0f7211f5f40d68422c9bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#[forbid(unsafe_code)]
mod forbid_unsafe {
    use ref_cast::{ref_cast_custom, RefCastCustom};

    #[derive(RefCastCustom)]
    #[repr(transparent)]
    pub struct Custom(#[allow(dead_code)] str);

    impl Custom {
        #[ref_cast_custom]
        pub fn new(s: &str) -> &Custom;
    }
}

#[test]
fn test_forbid_unsafe() {
    forbid_unsafe::Custom::new("...");
}