[−][src]Struct sled::IVec
A buffer that may either be inline or remote and protected by an Arc
Implementations
impl IVec
[src]
pub fn subslice(&self, slice_offset: usize, len: usize) -> Self
[src]
Create a subslice of this IVec
that shares
the same backing data and reference counter.
Panics
Panics if self.len() - offset >= len
.
Examples
let iv = IVec::from(vec![1]); let subslice = iv.subslice(0, 1); assert_eq!(&subslice, &[1]); let subslice = subslice.subslice(0, 1); assert_eq!(&subslice, &[1]); let subslice = subslice.subslice(1, 0); assert_eq!(&subslice, &[]); let subslice = subslice.subslice(0, 0); assert_eq!(&subslice, &[]); let iv2 = IVec::from(vec![1, 2, 3]); let subslice = iv2.subslice(3, 0); assert_eq!(&subslice, &[]); let subslice = iv2.subslice(2, 1); assert_eq!(&subslice, &[3]); let subslice = iv2.subslice(1, 2); assert_eq!(&subslice, &[2, 3]); let subslice = iv2.subslice(0, 3); assert_eq!(&subslice, &[1, 2, 3]); let subslice = subslice.subslice(1, 2); assert_eq!(&subslice, &[2, 3]); let subslice = subslice.subslice(1, 1); assert_eq!(&subslice, &[3]); let subslice = subslice.subslice(1, 0); assert_eq!(&subslice, &[]);
Trait Implementations
impl AsMut<[u8]> for IVec
[src]
impl AsRef<[u8]> for IVec
[src]
impl Borrow<[u8]> for IVec
[src]
impl<'_> Borrow<[u8]> for &'_ IVec
[src]
impl Clone for IVec
[src]
impl Debug for IVec
[src]
impl Default for IVec
[src]
impl Deref for IVec
[src]
impl DerefMut for IVec
[src]
impl Eq for IVec
[src]
impl<'_> From<&'_ [u8; 0]> for IVec
[src]
impl<'_> From<&'_ [u8; 1]> for IVec
[src]
impl<'_> From<&'_ [u8; 10]> for IVec
[src]
impl<'_> From<&'_ [u8; 11]> for IVec
[src]
impl<'_> From<&'_ [u8; 12]> for IVec
[src]
impl<'_> From<&'_ [u8; 13]> for IVec
[src]
impl<'_> From<&'_ [u8; 14]> for IVec
[src]
impl<'_> From<&'_ [u8; 15]> for IVec
[src]
impl<'_> From<&'_ [u8; 16]> for IVec
[src]
impl<'_> From<&'_ [u8; 17]> for IVec
[src]
impl<'_> From<&'_ [u8; 18]> for IVec
[src]
impl<'_> From<&'_ [u8; 19]> for IVec
[src]
impl<'_> From<&'_ [u8; 2]> for IVec
[src]
impl<'_> From<&'_ [u8; 20]> for IVec
[src]
impl<'_> From<&'_ [u8; 21]> for IVec
[src]
impl<'_> From<&'_ [u8; 22]> for IVec
[src]
impl<'_> From<&'_ [u8; 23]> for IVec
[src]
impl<'_> From<&'_ [u8; 24]> for IVec
[src]
impl<'_> From<&'_ [u8; 25]> for IVec
[src]
impl<'_> From<&'_ [u8; 26]> for IVec
[src]
impl<'_> From<&'_ [u8; 27]> for IVec
[src]
impl<'_> From<&'_ [u8; 28]> for IVec
[src]
impl<'_> From<&'_ [u8; 29]> for IVec
[src]
impl<'_> From<&'_ [u8; 3]> for IVec
[src]
impl<'_> From<&'_ [u8; 30]> for IVec
[src]
impl<'_> From<&'_ [u8; 31]> for IVec
[src]
impl<'_> From<&'_ [u8; 32]> for IVec
[src]
impl<'_> From<&'_ [u8; 4]> for IVec
[src]
impl<'_> From<&'_ [u8; 5]> for IVec
[src]
impl<'_> From<&'_ [u8; 6]> for IVec
[src]
impl<'_> From<&'_ [u8; 7]> for IVec
[src]
impl<'_> From<&'_ [u8; 8]> for IVec
[src]
impl<'_> From<&'_ [u8; 9]> for IVec
[src]
impl<'_> From<&'_ [u8]> for IVec
[src]
impl<'_> From<&'_ IVec> for IVec
[src]
impl<'_> From<&'_ str> for IVec
[src]
impl From<Box<[u8], Global>> for IVec
[src]
impl From<Vec<u8>> for IVec
[src]
impl FromIterator<u8> for IVec
[src]
fn from_iter<T>(iter: T) -> Self where
T: IntoIterator<Item = u8>,
[src]
T: IntoIterator<Item = u8>,
impl Hash for IVec
[src]
fn hash<H: Hasher>(&self, state: &mut H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for IVec
[src]
fn cmp(&self, other: &Self) -> Ordering
[src]
#[must_use]fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn clamp(self, min: Self, max: Self) -> Self
[src]
impl PartialEq<[u8]> for IVec
[src]
impl<T: AsRef<[u8]>> PartialEq<T> for IVec
[src]
impl PartialOrd<IVec> for IVec
[src]
Auto Trait Implementations
impl RefUnwindSafe for IVec
impl Send for IVec
impl Sync for IVec
impl Unpin for IVec
impl UnwindSafe for IVec
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
[src]
pub const ALIGN: usize
[src]
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
[src]
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
[src]
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
[src]
pub unsafe fn drop(ptr: usize)
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,