pub enum ScannEncoding {
AsymmetricHash {
dimensions_per_block: u16,
bits_per_code: u8,
},
BinaryHamming,
}Expand description
Leaf representation used by the segment-local ScaNN payload.
Variants§
AsymmetricHash
Residual asymmetric-hash codes for floating-point embeddings.
BinaryHamming
Exact packed binary embeddings scored with Hamming distance.
Implementations§
Source§impl ScannEncoding
impl ScannEncoding
pub fn row_code_bytes(self, dimension: u32) -> ScannResult<usize>
Sourcepub fn leaf_code_bytes(self, dimension: u32, rows: usize) -> ScannResult<usize>
pub fn leaf_code_bytes(self, dimension: u32, rows: usize) -> ScannResult<usize>
Encoded byte length for one leaf’s corpus-sized code column. AH uses the imported 32-lane FastScan layout for complete blocks and compact row-major packing for the tail.
Trait Implementations§
Source§impl Clone for ScannEncoding
impl Clone for ScannEncoding
Source§fn clone(&self) -> ScannEncoding
fn clone(&self) -> ScannEncoding
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 moreimpl Copy for ScannEncoding
Source§impl Debug for ScannEncoding
impl Debug for ScannEncoding
impl Eq for ScannEncoding
Source§impl PartialEq for ScannEncoding
impl PartialEq for ScannEncoding
impl StructuralPartialEq for ScannEncoding
Auto Trait Implementations§
impl Freeze for ScannEncoding
impl RefUnwindSafe for ScannEncoding
impl Send for ScannEncoding
impl Sync for ScannEncoding
impl Unpin for ScannEncoding
impl UnsafeUnpin for ScannEncoding
impl UnwindSafe for ScannEncoding
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DropFlavorWrapper<T> for T
impl<T> DropFlavorWrapper<T> for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
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 more