fn new_ident(&mut self, root: &str) -> String {
        let idx = self.ident_map.entry(root.to_string()).or_insert(0);
        *idx += 1;
        format!("{}{}", root, idx)
    }
/// Get a new identifier starting with a root ID (adds a unique suffix)
Get a new identifier starting with a root ID (adds a unique suffix)
Get a new identifier starting with a root ID ( adds a unique suffix )
fn new_ident(&mut self, root: &str) -> String {
        let idx = self.ident_map.entry(root.to_string()).or_insert(0);
        *idx += 1;
        format!("{}{}", root, idx)
    }
fn new_ident ( & mut self , root : & str ) -> String { let idx = self . ident_map . entry ( root . to_string ( ) ) . or_insert ( 0 ) ; * idx += 1 ; format ! ( " " root idx ) }
Get a new identifier starting with a root ID (adds a unique suffix)
Get a new identifier starting with a root ID ( adds a unique suffix )
&mut self
root
&str
&mut self
root
&str