logo
pub struct AttributeFilter {
    pub and_all_filters: Option<Vec<AttributeFilter>>,
    pub contains_all: Option<DocumentAttribute>,
    pub contains_any: Option<DocumentAttribute>,
    pub equals_to: Option<DocumentAttribute>,
    pub greater_than: Option<DocumentAttribute>,
    pub greater_than_or_equals: Option<DocumentAttribute>,
    pub less_than: Option<DocumentAttribute>,
    pub less_than_or_equals: Option<DocumentAttribute>,
    pub not_filter: Box<Option<AttributeFilter>>,
    pub or_all_filters: Option<Vec<AttributeFilter>>,
}
Expand description

Provides filtering the query results based on document attributes.

When you use the AndAllFilters or OrAllFilters, filters you can use 2 layers under the first attribute filter. For example, you can use:

<AndAllFilters>

  1. <OrAllFilters>

  2. <EqualTo>

If you use more than 2 layers, you receive a ValidationException exception with the message "AttributeFilter cannot have a depth of more than 2."

Fields

and_all_filters: Option<Vec<AttributeFilter>>

Performs a logical AND operation on all supplied filters.

contains_all: Option<DocumentAttribute>

Returns true when a document contains all of the specified document attributes. This filter is only applicable to StringListValue metadata.

contains_any: Option<DocumentAttribute>

Returns true when a document contains any of the specified document attributes. This filter is only applicable to StringListValue metadata.

equals_to: Option<DocumentAttribute>

Performs an equals operation on two document attributes.

greater_than: Option<DocumentAttribute>

Performs a greater than operation on two document attributes. Use with a document attribute of type Integer or Long.

greater_than_or_equals: Option<DocumentAttribute>

Performs a greater or equals than operation on two document attributes. Use with a document attribute of type Integer or Long.

less_than: Option<DocumentAttribute>

Performs a less than operation on two document attributes. Use with a document attribute of type Integer or Long.

less_than_or_equals: Option<DocumentAttribute>

Performs a less than or equals operation on two document attributes. Use with a document attribute of type Integer or Long.

not_filter: Box<Option<AttributeFilter>>

Performs a logical NOT operation on all supplied filters.

or_all_filters: Option<Vec<AttributeFilter>>

Performs a logical OR operation on all supplied filters.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more