File: unique_ptr_to_opaque.rs

package info (click to toggle)
rust-cxx 1.0.141-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,632 kB
  • sloc: cpp: 1,573; javascript: 124; sh: 11; makefile: 8
file content (23 lines) | stat: -rw-r--r-- 374 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mod outside {
    #[repr(C)]
    pub struct C {
        pub a: u8,
    }
    unsafe impl cxx::ExternType for C {
        type Id = cxx::type_id!("C");
        type Kind = cxx::kind::Opaque;
    }
}

#[cxx::bridge]
mod ffi {
    extern "C++" {
        type C = crate::outside::C;
    }

    impl UniquePtr<C> {}
}

fn main() {
    cxx::UniquePtr::new(outside::C { a: 4 });
}