servicepoint-binding-c/crates/servicepoint_binding_c/src/c_slice.rs
Vinzenz Schroeter a4d53d0e56 add missing docs
2024-06-03 22:10:52 +02:00

19 lines
549 B
Rust

//! FFI slice helper
#[repr(C)]
/// Represents a span of memory (`&mut [u8]` ) as a struct usable by C code.
///
/// # Safety
///
/// The caller has to make sure that:
///
/// - accesses to the memory pointed to with `start` is never accessed outside `length`
/// - the lifetime of the `CByteSlice` does not outlive the memory it points to, as described in
/// the function returning this type.
pub struct CByteSlice {
/// The start address of the memory
pub start: *mut u8,
/// The amount of memory in bytes
pub length: usize,
}