#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct RackType {
#[serde(rename = "value", skip_serializing_if = "Option::is_none")]
pub value: Option<Value>,
#[serde(rename = "label", skip_serializing_if = "Option::is_none")]
pub label: Option<Label>,
}
impl RackType {
pub fn new() -> RackType {
RackType {
value: None,
label: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Value {
#[serde(rename = "2-post-frame")]
Variant2PostFrame,
#[serde(rename = "4-post-frame")]
Variant4PostFrame,
#[serde(rename = "4-post-cabinet")]
Variant4PostCabinet,
#[serde(rename = "wall-frame")]
WallFrame,
#[serde(rename = "wall-frame-vertical")]
WallFrameVertical,
#[serde(rename = "wall-cabinet")]
WallCabinet,
#[serde(rename = "wall-cabinet-vertical")]
WallCabinetVertical,
#[serde(rename = "other")]
Other,
}
impl Default for Value {
fn default() -> Value {
Self::Variant2PostFrame
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Label {
#[serde(rename = "2-post frame")]
Variant2PostFrame,
#[serde(rename = "4-post frame")]
Variant4PostFrame,
#[serde(rename = "4-post cabinet")]
Variant4PostCabinet,
#[serde(rename = "Wall-mounted frame")]
WallMountedFrame,
#[serde(rename = "Wall-mounted frame (vertical)")]
WallMountedFrameLeftParenthesisVerticalRightParenthesis,
#[serde(rename = "Wall-mounted cabinet")]
WallMountedCabinet,
#[serde(rename = "Wall-mounted cabinet (vertical)")]
WallMountedCabinetLeftParenthesisVerticalRightParenthesis,
#[serde(rename = "Other")]
Other,
}
impl Default for Label {
fn default() -> Label {
Self::Variant2PostFrame
}
}