use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Gridpoint12hForecastJsonLd {
#[serde(rename = "@context")]
pub at_context: Box<models::JsonLdContext>,
#[serde(rename = "geometry", deserialize_with = "Option::deserialize")]
pub geometry: 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::Gridpoint12hForecastPeriod>>,
}
impl Gridpoint12hForecastJsonLd {
pub fn new(
at_context: models::JsonLdContext,
geometry: Option<String>,
) -> Gridpoint12hForecastJsonLd {
Gridpoint12hForecastJsonLd {
at_context: Box::new(at_context),
geometry,
units: None,
forecast_generator: None,
generated_at: None,
update_time: None,
valid_times: None,
elevation: None,
periods: None,
}
}
}