pub trait FreshGen<Head: ?Sized, Leaf> { // Required method fn fresh(&mut self, name_hint: &Head) -> Leaf; }
This trait lets us statically dispatch between fresh methods for generic structs.
fresh