/* automatically generated by rust-bindgen 0.65.1 */

#[repr(C)]
pub struct Bridge__bindgen_vtable(::std::os::raw::c_void);
#[doc = " Bridge for cpp"]
#[repr(C)]
#[derive(Debug)]
pub struct Bridge {
    pub vtable_: *const Bridge__bindgen_vtable,
    pub str_: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_Bridge() {
    const UNINIT: ::std::mem::MaybeUninit<Bridge> = ::std::mem::MaybeUninit::uninit();
    let ptr = UNINIT.as_ptr();
    assert_eq!(
        ::std::mem::size_of::<Bridge>(),
        16usize,
        concat!("Size of: ", stringify!(Bridge))
    );
    assert_eq!(
        ::std::mem::align_of::<Bridge>(),
        8usize,
        concat!("Alignment of ", stringify!(Bridge))
    );
    assert_eq!(
        unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(Bridge),
            "::",
            stringify!(str_)
        )
    );
}
extern "C" {
    #[doc = " assign ptr"]
    #[link_name = "\u{1}?pset@Bridge@@QEAAXPEAD@Z"]
    pub fn Bridge_pset(this: *mut Bridge, p: *mut ::std::os::raw::c_char);
}
extern "C" {
    #[doc = " display"]
    #[link_name = "\u{1}?put@Bridge@@QEAAXXZ"]
    pub fn Bridge_put(this: *mut Bridge);
}
extern "C" {
    #[doc = " construct"]
    #[link_name = "\u{1}??0Bridge@@QEAA@XZ"]
    pub fn Bridge_Bridge(this: *mut Bridge);
}
extern "C" {
    #[doc = " construct with ptr"]
    #[link_name = "\u{1}??0Bridge@@QEAA@PEAD@Z"]
    pub fn Bridge_Bridge1(this: *mut Bridge, s: *mut ::std::os::raw::c_char);
}
impl Bridge {
    #[inline]
    pub unsafe fn pset(&mut self, p: *mut ::std::os::raw::c_char) {
        Bridge_pset(self, p)
    }
    #[inline]
    pub unsafe fn put(&mut self) {
        Bridge_put(self)
    }
    #[inline]
    pub unsafe fn new() -> Self {
        let mut __bindgen_tmp = ::std::mem::MaybeUninit::uninit();
        Bridge_Bridge(__bindgen_tmp.as_mut_ptr());
        __bindgen_tmp.assume_init()
    }
    #[inline]
    pub unsafe fn new1(s: *mut ::std::os::raw::c_char) -> Self {
        let mut __bindgen_tmp = ::std::mem::MaybeUninit::uninit();
        Bridge_Bridge1(__bindgen_tmp.as_mut_ptr(), s);
        __bindgen_tmp.assume_init()
    }
}
extern "C" {
    #[doc = " destruct"]
    #[link_name = "\u{1}??_DBridge@@QEAAXXZ"]
    pub fn Bridge_Bridge_destructor(this: *mut Bridge);
}
extern "C" {
    #[doc = " legacy C interface"]
    pub fn bput();
}
