pub trait TreeGen {
    type Acc: AccIndentation;
    type Global: GlobalData;
    // Required method
    fn make(
        &mut self,
        global: &mut Self::Global,
        acc: <Self as TreeGen>::Acc,
        label: Option<String>
    ) -> <<Self as TreeGen>::Acc as Accumulator>::Node;
}