pub struct IndexSnapshot;Expand description
Snapshot I/O for an HnswIndex.
All multi-byte integers are stored as little-endian u64 / u32.
Floating-point values are stored as little-endian f32.
Implementations§
Source§impl IndexSnapshot
impl IndexSnapshot
Sourcepub fn save<W: Write>(
index: &HnswIndex,
writer: &mut W,
) -> Result<usize, VectorError>
pub fn save<W: Write>( index: &HnswIndex, writer: &mut W, ) -> Result<usize, VectorError>
Serialize index into writer.
Returns the total number of bytes written.
Sourcepub fn load<R: Read>(reader: &mut R) -> Result<HnswIndex, VectorError>
pub fn load<R: Read>(reader: &mut R) -> Result<HnswIndex, VectorError>
Deserialize an HnswIndex from reader.
Sourcepub fn save_to_file(
index: &HnswIndex,
path: &Path,
) -> Result<usize, VectorError>
pub fn save_to_file( index: &HnswIndex, path: &Path, ) -> Result<usize, VectorError>
Persist index to a file at path.
The file is created (or truncated) atomically via a temporary sibling file.
Sourcepub fn load_from_file(path: &Path) -> Result<HnswIndex, VectorError>
pub fn load_from_file(path: &Path) -> Result<HnswIndex, VectorError>
Load an index from a file at path.
Auto Trait Implementations§
impl Freeze for IndexSnapshot
impl RefUnwindSafe for IndexSnapshot
impl Send for IndexSnapshot
impl Sync for IndexSnapshot
impl Unpin for IndexSnapshot
impl UnsafeUnpin for IndexSnapshot
impl UnwindSafe for IndexSnapshot
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<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.