elasticsearch_dsl/search/params/
terms.rs1use super::*;
2use crate::util::*;
3
4#[derive(Clone, PartialEq, Serialize, Default)]
6pub struct Terms(Vec<Term>);
7
8impl std::fmt::Debug for Terms {
9 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
10 self.0.fmt(f)
11 }
12}
13
14impl<T> From<T> for Terms
15where
16 T: IntoIterator,
17 T::Item: serde::Serialize,
18{
19 fn from(value: T) -> Self {
20 Self(value.into_iter().filter_map(Term::new).collect())
21 }
22}
23
24impl ShouldSkip for Terms {
25 fn should_skip(&self) -> bool {
26 self.0.is_empty()
27 }
28}