Neighbors Filters Module

View as Markdown

Rust module: cuvs::neighbors::filters

Source: rust/cuvs/src/neighbors/filters.rs

Shared filter payloads for nearest-neighbor search APIs.

FilterError

1#[derive(Debug, thiserror::Error)]
2#[non_exhaustive]
3pub enum FilterError {
4 /* variants omitted */
5}

Error returned when constructing an invalid filter payload.

Source: rust/cuvs/src/neighbors/filters.rs:15

Bitset

1pub enum Bitset {
2 /* variants omitted */
3}

Marker for a row-level bitset filter.

Source: rust/cuvs/src/neighbors/filters.rs:34

Bitmap

1pub enum Bitmap {
2 /* variants omitted */
3}

Marker for a per-query bitmap filter.

Source: rust/cuvs/src/neighbors/filters.rs:37

Sealed

1pub trait Sealed {
2 /* required methods omitted */
3}

Source: rust/cuvs/src/neighbors/filters.rs:40

FilterKind

1pub trait FilterKind: sealed::Sealed {
2 /* required methods omitted */
3}

Kind of packed filter payload.

This trait is sealed; only [Bitset] and [Bitmap] implement it.

Source: rust/cuvs/src/neighbors/filters.rs:46

Filter

1pub struct Filter<'a, K: FilterKind> {
2 /* private fields */
3}

Packed filter words used to include or exclude rows during search.

Methods

NameSource
newrust/cuvs/src/neighbors/filters.rs:71

new

1pub fn new<T>(filter_words: &'a T) -> Result<Self, FilterError>
2where
3T: AsDlTensor + ?Sized,

Creates a packed filter borrowing filter_words.

Source: rust/cuvs/src/neighbors/filters.rs:71

Source: rust/cuvs/src/neighbors/filters.rs:64