133d722a9Sopenharmony_ciuse crate::rust_slice::RustSlice; 233d722a9Sopenharmony_ciuse core::mem::MaybeUninit; 333d722a9Sopenharmony_ciuse core::ptr::{self, NonNull}; 433d722a9Sopenharmony_ci 533d722a9Sopenharmony_ci#[export_name = "cxxbridge1$slice$new"] 633d722a9Sopenharmony_ciunsafe extern "C" fn slice_new(this: &mut MaybeUninit<RustSlice>, ptr: NonNull<()>, len: usize) { 733d722a9Sopenharmony_ci let this = this.as_mut_ptr(); 833d722a9Sopenharmony_ci let rust_slice = RustSlice::from_raw_parts(ptr, len); 933d722a9Sopenharmony_ci unsafe { ptr::write(this, rust_slice) } 1033d722a9Sopenharmony_ci} 1133d722a9Sopenharmony_ci 1233d722a9Sopenharmony_ci#[export_name = "cxxbridge1$slice$ptr"] 1333d722a9Sopenharmony_ciunsafe extern "C" fn slice_ptr(this: &RustSlice) -> NonNull<()> { 1433d722a9Sopenharmony_ci this.as_non_null_ptr() 1533d722a9Sopenharmony_ci} 1633d722a9Sopenharmony_ci 1733d722a9Sopenharmony_ci#[export_name = "cxxbridge1$slice$len"] 1833d722a9Sopenharmony_ciunsafe extern "C" fn slice_len(this: &RustSlice) -> usize { 1933d722a9Sopenharmony_ci this.len() 2033d722a9Sopenharmony_ci} 21