crate::ix!();
#[derive(Hash,SaveLoad,AiJsonTemplate,Debug, Clone, PartialEq, Eq, Builder, Getters, Setters, Serialize, Deserialize)]
#[builder(setter(into))]
#[getset(get = "pub", set = "pub")]
pub struct AnnotatedLeafHolderExpansions {
#[builder(default = "\"target\".to_string()")]
#[serde(default)]
target_name: String,
annotated_leaf_holders: Vec<AnnotatedLeafHolderNode>,
}
#[derive(Hash,PartialEq,Eq,SaveLoad,AiJsonTemplate,Serialize,Deserialize,Getters,Setters,Builder,Debug,Clone)]
#[getset(get = "pub", set = "pub")]
pub struct AnnotatedLeafHolderNode {
leaf_holder_name: LeafHolderName,
annotated_leaves: Vec<AnnotatedLeaf>,
}
#[derive(Hash,SaveLoad,AiJsonTemplate,Debug,Clone,PartialEq,Eq,Builder,Getters,Setters,Serialize,Deserialize)]
#[builder(setter(into))]
#[getset(get = "pub", set = "pub")]
pub struct AnnotatedLeaf {
leaf_name: LeafName,
leaf_descriptor: LeafDescriptor,
}