use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Node {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "leaf", skip_serializing_if = "Option::is_none")]
pub leaf: Option<models::Leaf>,
#[serde(rename = "difference", skip_serializing_if = "Option::is_none")]
pub difference: Option<models::UsersetTreeDifference>,
#[serde(rename = "union", skip_serializing_if = "Option::is_none")]
pub union: Option<models::Nodes>,
#[serde(rename = "intersection", skip_serializing_if = "Option::is_none")]
pub intersection: Option<models::Nodes>,
}
impl Node {
pub fn new(name: String) -> Node {
Node {
name,
leaf: None,
difference: None,
union: None,
intersection: None,
}
}
}