Using a HashSet to canonicalize objects in Rust
问题 As an educational exercise, I'm looking at porting cvs-fast-export to Rust. Its basic mode of operation is to parse a number of CVS master files into a intermediate form, and then to analyse the intermediate form with the goal of transforming it into a git fast-export stream. One of the things that is done when parsing is to convert common parts of the intermediate form into a canonical representation. A motivating example is commit authors. A CVS repository may have hundreds of thousands of