Skip to main content

made_client/
ceremony_tree_node.rs

1use made_proto::v1::CeremonyInstanceState;
2
3/// One node in a hierarchy derived from public ceremony lineage.
4#[derive(Clone, Debug)]
5pub struct CeremonyTreeNode {
6    instance: CeremonyInstanceState,
7    children: Vec<CeremonyTreeNode>,
8}
9
10impl CeremonyTreeNode {
11    pub(crate) fn new(instance: CeremonyInstanceState, children: Vec<Self>) -> Self {
12        Self { instance, children }
13    }
14
15    #[must_use]
16    pub fn instance(&self) -> &CeremonyInstanceState {
17        &self.instance
18    }
19
20    #[must_use]
21    pub fn children(&self) -> &[Self] {
22        &self.children
23    }
24}