opensearch-client 0.3.1

Strongly typed OpenSearch Client
Documentation
/*
 * opensearch-client
 *
 * Rust Client for OpenSearch
 *
 * The version of the OpenAPI document: 3.1.0
 * Contact: alberto.paro@gmail.com
 * Generated by Paro OpenAPI Generator
 */

use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AnalyzeToken {
    #[serde(rename = "start_offset")]
    pub start_offset: u32,
    #[serde(rename = "type")]
    pub r#type: String,
    #[serde(rename = "end_offset")]
    pub end_offset: u32,
    #[serde(rename = "position")]
    pub position: u32,
    #[serde(
        rename = "positionLength",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub position_length: Option<u32>,
    #[serde(rename = "token")]
    pub token: String,
}

impl AnalyzeToken {
    pub fn new(
        start_offset: u32,
        r#type: String,
        end_offset: u32,
        position: u32,
        token: String,
    ) -> AnalyzeToken {
        AnalyzeToken {
            start_offset,
            r#type,
            end_offset,
            position,
            position_length: None,
            token,
        }
    }
}