use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GridpointForecast {
#[serde(rename = "@context", skip_serializing_if = "Option::is_none")]
pub at_context: Option<Box<models::JsonLdContext>>,
#[serde(
rename = "geometry",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub geometry: Option<Option<String>>,
#[serde(rename = "units", skip_serializing_if = "Option::is_none")]
pub units: Option<models::GridpointForecastUnits>,
#[serde(rename = "forecastGenerator", skip_serializing_if = "Option::is_none")]
pub forecast_generator: Option<String>,
#[serde(rename = "generatedAt", skip_serializing_if = "Option::is_none")]
pub generated_at: Option<String>,
#[serde(rename = "updateTime", skip_serializing_if = "Option::is_none")]
pub update_time: Option<String>,
#[serde(rename = "validTimes", skip_serializing_if = "Option::is_none")]
pub valid_times: Option<Box<models::Iso8601Interval>>,
#[serde(rename = "elevation", skip_serializing_if = "Option::is_none")]
pub elevation: Option<Box<models::QuantitativeValue>>,
#[serde(rename = "periods", skip_serializing_if = "Option::is_none")]
pub periods: Option<Vec<models::GridpointForecastPeriod>>,
}
impl GridpointForecast {
pub fn new() -> GridpointForecast {
GridpointForecast {
at_context: None,
geometry: None,
units: None,
forecast_generator: None,
generated_at: None,
update_time: None,
valid_times: None,
elevation: None,
periods: None,
}
}
}