#[repr(C)]pub struct FfiString {
pub ptr: *const u8,
pub len: usize,
}Expand description
C-compatible string representation: pointer + length.
Caller owns the allocation; use ffi_free_string to free.
Fields§
§ptr: *const u8§len: usizeImplementations§
Source§impl FfiString
impl FfiString
Sourcepub fn from_string(s: String) -> Self
pub fn from_string(s: String) -> Self
Create from Rust string. Caller must call ffi_free_string on the result.
Sourcepub fn from_str(s: &str) -> Self
pub fn from_str(s: &str) -> Self
Create from &str (copies). Caller must call ffi_free_string on the result.
Auto Trait Implementations§
impl !Send for FfiString
impl !Sync for FfiString
impl Freeze for FfiString
impl RefUnwindSafe for FfiString
impl Unpin for FfiString
impl UnsafeUnpin for FfiString
impl UnwindSafe for FfiString
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more