Skip to main content

opensearch_client/ml/
filter.rs

1/*
2 * opensearch-client
3 *
4 * Rust Client for OpenSearch
5 *
6 * The version of the OpenAPI document: 3.1.0
7 * Contact: alberto.paro@gmail.com
8 * Generated by Paro OpenAPI Generator
9 */
10
11use crate::ml;
12use serde::{Deserialize, Serialize};
13
14/// Filter
15/// The filter element.
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
18pub struct Filter {
19    /// Term to match the query.
20    #[serde(rename = "term", default, skip_serializing_if = "Option::is_none")]
21    pub term: Option<Box<ml::Term>>,
22    /// Match query.
23    #[serde(rename = "match", default, skip_serializing_if = "Option::is_none")]
24    pub r#match: Option<ml::Match>,
25    /// The filter range.
26    #[serde(rename = "range", default, skip_serializing_if = "Option::is_none")]
27    pub range: Option<ml::Range>,
28    /// The exists filter.
29    #[serde(rename = "exists", default, skip_serializing_if = "Option::is_none")]
30    pub exists: Option<ml::Exists>,
31    /// Term to match the query.
32    #[serde(rename = "terms", default, skip_serializing_if = "Option::is_none")]
33    pub terms: Option<Box<ml::Term>>,
34    /// The nested filter.
35    #[serde(rename = "nested", default, skip_serializing_if = "Option::is_none")]
36    pub nested: Option<ml::Nested>,
37}
38
39impl Filter {
40    /// The filter element.
41    pub fn new() -> Filter {
42        Filter {
43            term: None,
44            r#match: None,
45            range: None,
46            exists: None,
47            terms: None,
48            nested: None,
49        }
50    }
51}