use crate::indices;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AnalyzeDetail {
#[serde(
rename = "charfilters",
default,
skip_serializing_if = "Option::is_none"
)]
pub charfilters: Option<Vec<indices::analyze::CharFilterDetail>>,
#[serde(rename = "tokenizer", default, skip_serializing_if = "Option::is_none")]
pub tokenizer: Option<indices::analyze::TokenDetail>,
#[serde(rename = "custom_analyzer")]
pub custom_analyzer: bool,
#[serde(rename = "analyzer", default, skip_serializing_if = "Option::is_none")]
pub analyzer: Option<indices::analyze::AnalyzerDetail>,
#[serde(
rename = "tokenfilters",
default,
skip_serializing_if = "Option::is_none"
)]
pub tokenfilters: Option<Vec<indices::analyze::TokenDetail>>,
}
impl AnalyzeDetail {
pub fn new(custom_analyzer: bool) -> AnalyzeDetail {
AnalyzeDetail {
charfilters: None,
tokenizer: None,
custom_analyzer,
analyzer: None,
tokenfilters: None,
}
}
}