Struct libafl_bolts::ownedref::OwnedSlice
source · pub struct OwnedSlice<'a, T: 'a + Sized> { /* private fields */ }
Expand description
Wrap a slice and convert to a Vec on serialize.
We use a hidden inner enum so the public API can be safe,
unless the user uses the unsafe OwnedSlice::from_raw_parts
Implementations§
source§impl<'a, T> OwnedSlice<'a, T>
impl<'a, T> OwnedSlice<'a, T>
sourcepub unsafe fn from_raw_parts(ptr: *const T, len: usize) -> Self
pub unsafe fn from_raw_parts(ptr: *const T, len: usize) -> Self
Create a new OwnedSlice
from a raw pointer and length
§Safety
The pointer must be valid and point to a map of the size size_of<T>() * len
The contents will be dereferenced in subsequent operations.
Trait Implementations§
source§impl<'a, T: Sized> AsSlice for OwnedSlice<'a, T>
impl<'a, T: Sized> AsSlice for OwnedSlice<'a, T>
source§impl<'a, T: 'a + Clone> Clone for OwnedSlice<'a, T>
impl<'a, T: 'a + Clone> Clone for OwnedSlice<'a, T>
source§impl<'de, 'a, T> Deserialize<'de> for OwnedSlice<'a, T>where
T: Deserialize<'de> + 'a + Sized,
impl<'de, 'a, T> Deserialize<'de> for OwnedSlice<'a, T>where
T: Deserialize<'de> + 'a + Sized,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<'a, T> From<&'a [T]> for OwnedSlice<'a, T>
impl<'a, T> From<&'a [T]> for OwnedSlice<'a, T>
Create a new OwnedSlice
from a reference to a slice
source§impl<'a, T> From<&'a Vec<T>> for OwnedSlice<'a, T>
impl<'a, T> From<&'a Vec<T>> for OwnedSlice<'a, T>
Create a new OwnedSlice
from a vector reference
source§impl<'a, T> From<OwnedMutSlice<'a, T>> for OwnedSlice<'a, T>
impl<'a, T> From<OwnedMutSlice<'a, T>> for OwnedSlice<'a, T>
Create a new OwnedSlice
from a OwnedMutSlice
source§fn from(mut_slice: OwnedMutSlice<'a, T>) -> Self
fn from(mut_slice: OwnedMutSlice<'a, T>) -> Self
Converts to this type from the input type.
source§impl<'a, T> From<OwnedSlice<'a, T>> for Vec<T>where
T: Clone,
impl<'a, T> From<OwnedSlice<'a, T>> for Vec<T>where
T: Clone,
Create a vector from an OwnedMutSlice
, or return the owned vec.
source§fn from(slice: OwnedSlice<'a, T>) -> Self
fn from(slice: OwnedSlice<'a, T>) -> Self
Converts to this type from the input type.
source§impl<'a, T> From<Vec<T>> for OwnedSlice<'a, T>
impl<'a, T> From<Vec<T>> for OwnedSlice<'a, T>
Create a new OwnedSlice
from a vector
source§impl<'a, 'it, T> IntoIterator for &'it OwnedSlice<'a, T>
impl<'a, 'it, T> IntoIterator for &'it OwnedSlice<'a, T>
source§impl<'a, T> IntoOwned for OwnedSlice<'a, T>
impl<'a, T> IntoOwned for OwnedSlice<'a, T>
Auto Trait Implementations§
impl<'a, T> Freeze for OwnedSlice<'a, T>
impl<'a, T> RefUnwindSafe for OwnedSlice<'a, T>where
T: RefUnwindSafe,
impl<'a, T> !Send for OwnedSlice<'a, T>
impl<'a, T> !Sync for OwnedSlice<'a, T>
impl<'a, T> Unpin for OwnedSlice<'a, T>where
T: Unpin,
impl<'a, T> UnwindSafe for OwnedSlice<'a, T>where
T: RefUnwindSafe + UnwindSafe,
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<Tail, T> Prepend<T> for Tail
impl<Tail, T> Prepend<T> for Tail
§type PreprendResult = Tail
type PreprendResult = Tail
The Resulting
TupleList
, of an Prepend::prepend()
call,
including the prepended entry.source§fn prepend(self, value: T) -> (T, <Tail as Prepend<T>>::PreprendResult)
fn prepend(self, value: T) -> (T, <Tail as Prepend<T>>::PreprendResult)
Prepend a value to this tuple, returning a new tuple with prepended value.