pub struct BTreeMetadataFilter<N, K, L, W, WV, A, AV>{
pub id_filters: Vec<BTreeFieldsFilter<Uuid>>,
pub name_filters: Vec<BTreeFieldsFilter<N>>,
pub kind_filters: Vec<BTreeFieldsFilter<K>>,
pub label_filters: Vec<BTreeFieldsFilter<L>>,
pub weight_filters: Vec<BTreeFieldValuesFilter<W, Domain1D<WV>, WV>>,
pub annotation_filters: Vec<BTreeFieldValuesFilter<A, (), AV>>,
}Expand description
BTree-based metadata filter implementation. Treats annotations as if they were labels and disregards values when filtering.
Fields§
§id_filters: Vec<BTreeFieldsFilter<Uuid>>§name_filters: Vec<BTreeFieldsFilter<N>>§kind_filters: Vec<BTreeFieldsFilter<K>>§label_filters: Vec<BTreeFieldsFilter<L>>§weight_filters: Vec<BTreeFieldValuesFilter<W, Domain1D<WV>, WV>>§annotation_filters: Vec<BTreeFieldValuesFilter<A, (), AV>>Implementations§
Source§impl<N, K, L, W, WV, A, AV> BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Sourcepub fn builder() -> BTreeMetadataFilterBuilder<N, K, L, W, WV, A, AV>
pub fn builder() -> BTreeMetadataFilterBuilder<N, K, L, W, WV, A, AV>
Create an instance of BTreeMetadataFilter using the builder syntax
Trait Implementations§
Source§impl<N, K, L, W, WV, A, AV> Clone for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> Clone for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Source§fn clone(&self) -> BTreeMetadataFilter<N, K, L, W, WV, A, AV>
fn clone(&self) -> BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<N, K, L, W, WV, A, AV> Debug for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> Debug for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Source§impl<N, K, L, W, WV, A, AV> Default for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> Default for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Source§impl<'de, N, K, L, W, WV, A, AV> Deserialize<'de> for BTreeMetadataFilter<N, K, L, W, WV, A, AV>where
N: Field + Deserialize<'de>,
K: Field + Deserialize<'de>,
L: Field + Deserialize<'de>,
W: Field + Deserialize<'de>,
WV: WeightValue + Deserialize<'de>,
A: Field + Deserialize<'de>,
AV: AnnotationValue + Deserialize<'de>,
BTreeMetadataFilter<N, K, L, W, WV, A, AV>: Default,
impl<'de, N, K, L, W, WV, A, AV> Deserialize<'de> for BTreeMetadataFilter<N, K, L, W, WV, A, AV>where
N: Field + Deserialize<'de>,
K: Field + Deserialize<'de>,
L: Field + Deserialize<'de>,
W: Field + Deserialize<'de>,
WV: WeightValue + Deserialize<'de>,
A: Field + Deserialize<'de>,
AV: AnnotationValue + Deserialize<'de>,
BTreeMetadataFilter<N, K, L, W, WV, A, AV>: Default,
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<N, K, L, W, WV, A, AV> MetadataFilter<BTreeFieldsFilter<Uuid>, BTreeFieldsFilter<N>, BTreeFieldsFilter<K>, BTreeFieldsFilter<L>, BTreeFieldValuesFilter<W, Domain1D<WV>, WV>, BTreeFieldValuesFilter<A, (), AV>, N, K, L, W, WV, A, AV> for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> MetadataFilter<BTreeFieldsFilter<Uuid>, BTreeFieldsFilter<N>, BTreeFieldsFilter<K>, BTreeFieldsFilter<L>, BTreeFieldValuesFilter<W, Domain1D<WV>, WV>, BTreeFieldValuesFilter<A, (), AV>, N, K, L, W, WV, A, AV> for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Source§fn id_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<Uuid>>where
BTreeFieldsFilter<Uuid>: 'a,
fn id_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<Uuid>>where
BTreeFieldsFilter<Uuid>: 'a,
Filters by ID.
Source§fn name_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<N>>where
BTreeFieldsFilter<N>: 'a,
fn name_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<N>>where
BTreeFieldsFilter<N>: 'a,
Filters by name.
Source§fn kind_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<K>>where
BTreeFieldsFilter<K>: 'a,
fn kind_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<K>>where
BTreeFieldsFilter<K>: 'a,
Filters by kind.
Source§fn label_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<L>>where
BTreeFieldsFilter<L>: 'a,
fn label_filters<'a>(&'a self) -> impl Iterator<Item = &'a BTreeFieldsFilter<L>>where
BTreeFieldsFilter<L>: 'a,
Filters by label.
Source§fn weight_filters<'a>(
&'a self,
) -> impl Iterator<Item = &'a BTreeFieldValuesFilter<W, Domain1D<WV>, WV>>where
BTreeFieldValuesFilter<W, Domain1D<WV>, WV>: 'a,
fn weight_filters<'a>(
&'a self,
) -> impl Iterator<Item = &'a BTreeFieldValuesFilter<W, Domain1D<WV>, WV>>where
BTreeFieldValuesFilter<W, Domain1D<WV>, WV>: 'a,
Filters by weight.
Source§fn annotation_filters<'a>(
&'a self,
) -> impl Iterator<Item = &'a BTreeFieldValuesFilter<A, (), AV>>where
BTreeFieldsFilter<A>: 'a,
fn annotation_filters<'a>(
&'a self,
) -> impl Iterator<Item = &'a BTreeFieldValuesFilter<A, (), AV>>where
BTreeFieldsFilter<A>: 'a,
Filters by annotation.
Source§fn matches_metadata<'a, M: ReadMetadata<'a, N, K, L, W, WV, A, AV>>(
&'a self,
meta: &'a M,
) -> boolwhere
N: 'a,
K: 'a,
L: 'a,
W: 'a,
WV: 'a,
A: 'a,
AV: 'a,
LF: 'a,
WF: 'a,
AF: 'a,
fn matches_metadata<'a, M: ReadMetadata<'a, N, K, L, W, WV, A, AV>>(
&'a self,
meta: &'a M,
) -> boolwhere
N: 'a,
K: 'a,
L: 'a,
W: 'a,
WV: 'a,
A: 'a,
AV: 'a,
LF: 'a,
WF: 'a,
AF: 'a,
Return whether this metadata filter matches the given metadata.
Source§impl<N, K, L, W, WV, A, AV> PartialEq for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> PartialEq for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Source§fn eq(&self, other: &BTreeMetadataFilter<N, K, L, W, WV, A, AV>) -> bool
fn eq(&self, other: &BTreeMetadataFilter<N, K, L, W, WV, A, AV>) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl<N, K, L, W, WV, A, AV> Serialize for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> Serialize for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> StructuralPartialEq for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
Auto Trait Implementations§
impl<N, K, L, W, WV, A, AV> Freeze for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> RefUnwindSafe for BTreeMetadataFilter<N, K, L, W, WV, A, AV>where
WV: RefUnwindSafe,
AV: RefUnwindSafe,
W: RefUnwindSafe,
A: RefUnwindSafe,
N: RefUnwindSafe,
K: RefUnwindSafe,
L: RefUnwindSafe,
impl<N, K, L, W, WV, A, AV> Send for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> Sync for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> Unpin for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> UnsafeUnpin for BTreeMetadataFilter<N, K, L, W, WV, A, AV>
impl<N, K, L, W, WV, A, AV> UnwindSafe for BTreeMetadataFilter<N, K, L, W, WV, A, AV>where
W: RefUnwindSafe,
WV: UnwindSafe + RefUnwindSafe,
A: RefUnwindSafe,
AV: UnwindSafe,
N: RefUnwindSafe,
K: RefUnwindSafe,
L: RefUnwindSafe,
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