pub struct HnswParams {
pub m: usize,
pub m0: usize,
pub ef_construction: usize,
pub ef_search: usize,
pub seed: u64,
}Expand description
Tuneable parameters.
Fields§
§m: usizeMax bidirectional links per node at every level above 0.
m0: usizeMax bidirectional links per node at level 0.
ef_construction: usizeSearch beam width during insertion.
ef_search: usizeDefault search beam width for queries. The query API can override this per call.
seed: u64Random seed for layer assignment. Stored for
reproducibility; the xorshift64 PRNG below is
deterministic for a given seed.
Trait Implementations§
Source§impl Clone for HnswParams
impl Clone for HnswParams
Source§fn clone(&self) -> HnswParams
fn clone(&self) -> HnswParams
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HnswParams
impl Debug for HnswParams
Source§impl Default for HnswParams
impl Default for HnswParams
Source§impl<'de> Deserialize<'de> for HnswParams
impl<'de> Deserialize<'de> for HnswParams
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 Serialize for HnswParams
impl Serialize for HnswParams
impl Copy for HnswParams
Auto Trait Implementations§
impl Freeze for HnswParams
impl RefUnwindSafe for HnswParams
impl Send for HnswParams
impl Sync for HnswParams
impl Unpin for HnswParams
impl UnsafeUnpin for HnswParams
impl UnwindSafe for HnswParams
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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<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.