pub struct FaStr {
ptr: *const u8,
len_hash: LenHash,
}
Fields§
§ptr: *const u8
§len_hash: LenHash
Implementations§
source§impl FaStr
impl FaStr
pub unsafe fn new(addr: *const u8, len: usize) -> Self
pub fn as_ptr(&self) -> *const u8
pub fn as_bytes(&self) -> &[u8] ⓘ
pub fn as_str(&self) -> &str
pub fn raw(&self) -> u32
sourcepub(crate) unsafe fn copy_in_child(&self) -> Self
pub(crate) unsafe fn copy_in_child(&self) -> Self
Returns a copy of this FaStr
pointing to the same data.
§Safety
This aliases the memory location pointed to by this FaStr
, and
therefore is subject to the same invariants as FaStr::new
— the
memory area must live as long as the returned FaStr
does. In practice
this is safe to call when the caller knows that the Dictionary
bump
arena that self
points into will live as long as the dictionary in
which the returned FaStr
will be stored — such as when the FaStr
’s
dictionary is kept alive by a parent reference from a child dictionary
in which the new FaStr
will be used.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FaStr
impl RefUnwindSafe for FaStr
impl !Send for FaStr
impl !Sync for FaStr
impl Unpin for FaStr
impl UnwindSafe for FaStr
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