pub struct Slice<T>(/* private fields */);Expand description
An implementation of ToId and ToIdSized that encodes external IDs as a slice.
use diskann_benchmark_core::build::ids::{Slice, ToId, ToIdSized};
let slice = Slice::new([10u32, 20, 30].into());
assert_eq!(slice.len(), 3);
assert_eq!(slice.to_id(0).unwrap(), 10);
assert_eq!(slice.to_id(1).unwrap(), 20);
assert_eq!(slice.to_id(2).unwrap(), 30);
assert!(slice.to_id(3).is_err());Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<T> Freeze for Slice<T>
impl<T> RefUnwindSafe for Slice<T>where
T: RefUnwindSafe,
impl<T> Send for Slice<T>where
T: Send,
impl<T> Sync for Slice<T>where
T: Sync,
impl<T> Unpin for Slice<T>
impl<T> UnsafeUnpin for Slice<T>
impl<T> UnwindSafe for Slice<T>where
T: 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