One thing I'm confused about is the "expected" versus "found" sections, since they are visually identical. I think they actually differ in lifetimes, but rust has [not so] helpfully elided them from the diagnostic.
Does anyone have any hints about how to implement this trait?
If I have a HashMap<Name, _>, and I want to look up entries with .get() -- is there anyway to do that by passing in something like a (&str, u8) (that is, I don't want to construct the Name just to see if it exists in the map).
There's a neat trick you can apply here, described in a StackOverflow post. It's not zero-cost, but it does not increase the storage space required by the hashmap and it does not require changing the definition of Name.