in z3tracer/src/lexer.rs [252:269]
fn make_ident(&mut self, namespace: Option<String>, id: Option<u64>, fresh: bool) -> Ident {
let key = (namespace, id);
let version = if fresh {
let e = self
.ident_versions
.entry(key.clone())
.and_modify(|e| *e += 1)
.or_insert(0);
*e
} else {
self.ident_versions.get(&key).cloned().unwrap_or(0)
};
Ident {
namespace: key.0,
id: key.1,
version,
}
}