pub enum FilterCondition {
Show 17 variants
Eq(String, MetadataValue),
Ne(String, MetadataValue),
Gt(String, MetadataValue),
Gte(String, MetadataValue),
Lt(String, MetadataValue),
Lte(String, MetadataValue),
In(String, Vec<MetadataValue>),
NotIn(String, Vec<MetadataValue>),
Exists(String),
NotExists(String),
Contains(String, String),
StartsWith(String, String),
EndsWith(String, String),
Regex(String, String),
And(Vec<FilterCondition>),
Or(Vec<FilterCondition>),
Not(Box<FilterCondition>),
}
Expand description
Filter conditions for querying vectors
Variants§
Eq(String, MetadataValue)
Equality filter: field == value
Ne(String, MetadataValue)
Not equal filter: field != value
Gt(String, MetadataValue)
Greater than filter: field > value
Gte(String, MetadataValue)
Greater than or equal filter: field >= value
Lt(String, MetadataValue)
Less than filter: field < value
Lte(String, MetadataValue)
Less than or equal filter: field <= value
In(String, Vec<MetadataValue>)
In filter: field in [values]
NotIn(String, Vec<MetadataValue>)
Not in filter: field not in [values]
Exists(String)
Exists filter: field exists
NotExists(String)
Not exists filter: field does not exist
Contains(String, String)
Text contains filter: field contains substring
StartsWith(String, String)
Text starts with filter: field starts with prefix
EndsWith(String, String)
Text ends with filter: field ends with suffix
Regex(String, String)
Regex match filter: field matches regex
And(Vec<FilterCondition>)
Logical AND: all conditions must be true
Or(Vec<FilterCondition>)
Logical OR: at least one condition must be true
Not(Box<FilterCondition>)
Logical NOT: condition must be false
Implementations§
Source§impl FilterCondition
impl FilterCondition
Sourcepub fn eq(
field: impl Into<String>,
value: impl Into<MetadataValue>,
) -> FilterCondition
pub fn eq( field: impl Into<String>, value: impl Into<MetadataValue>, ) -> FilterCondition
Create an equality filter
Sourcepub fn ne(
field: impl Into<String>,
value: impl Into<MetadataValue>,
) -> FilterCondition
pub fn ne( field: impl Into<String>, value: impl Into<MetadataValue>, ) -> FilterCondition
Create a not equal filter
Sourcepub fn gt(
field: impl Into<String>,
value: impl Into<MetadataValue>,
) -> FilterCondition
pub fn gt( field: impl Into<String>, value: impl Into<MetadataValue>, ) -> FilterCondition
Create a greater than filter
Sourcepub fn lt(
field: impl Into<String>,
value: impl Into<MetadataValue>,
) -> FilterCondition
pub fn lt( field: impl Into<String>, value: impl Into<MetadataValue>, ) -> FilterCondition
Create a less than filter
Sourcepub fn in_values(
field: impl Into<String>,
values: Vec<impl Into<MetadataValue>>,
) -> FilterCondition
pub fn in_values( field: impl Into<String>, values: Vec<impl Into<MetadataValue>>, ) -> FilterCondition
Create an in filter
Sourcepub fn and(conditions: Vec<FilterCondition>) -> FilterCondition
pub fn and(conditions: Vec<FilterCondition>) -> FilterCondition
Create an AND filter
Sourcepub fn or(conditions: Vec<FilterCondition>) -> FilterCondition
pub fn or(conditions: Vec<FilterCondition>) -> FilterCondition
Create an OR filter
Sourcepub fn not(condition: FilterCondition) -> FilterCondition
pub fn not(condition: FilterCondition) -> FilterCondition
Create a NOT filter
Sourcepub fn exists(field: impl Into<String>) -> FilterCondition
pub fn exists(field: impl Into<String>) -> FilterCondition
Create an exists filter
Trait Implementations§
Source§impl Clone for FilterCondition
impl Clone for FilterCondition
Source§fn clone(&self) -> FilterCondition
fn clone(&self) -> FilterCondition
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for FilterCondition
impl Debug for FilterCondition
Source§impl<'de> Deserialize<'de> for FilterCondition
impl<'de> Deserialize<'de> for FilterCondition
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<FilterCondition, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<FilterCondition, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for FilterCondition
impl PartialEq for FilterCondition
Source§impl Serialize for FilterCondition
impl Serialize for FilterCondition
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for FilterCondition
Auto Trait Implementations§
impl Freeze for FilterCondition
impl RefUnwindSafe for FilterCondition
impl Send for FilterCondition
impl Sync for FilterCondition
impl Unpin for FilterCondition
impl UnwindSafe for FilterCondition
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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