#[repr(C)]pub struct RelayStr {
pub data: *mut c_char,
pub len: usize,
pub owned: bool,
}
Expand description
A length-prefixed UTF-8 string.
As opposed to C strings, this string is not null-terminated. If the string is owned, indicated
by the owned
flag, the owner must call the free
function on this string. The convention is:
- When obtained as instance through return values, always free the string.
- When obtained as pointer through field access, never free the string.
Fields§
§data: *mut c_char
Pointer to the UTF-8 encoded string data.
len: usize
The length of the string pointed to by data
.
owned: bool
Indicates that the string is owned and must be freed.
Trait Implementations§
impl Send for RelayStr
impl Sync for RelayStr
Auto Trait Implementations§
impl Freeze for RelayStr
impl RefUnwindSafe for RelayStr
impl Unpin for RelayStr
impl UnwindSafe for RelayStr
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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