A deduplicating Container backed by a HashMap.
If two equal items are stored, the second is dropped
and a reference to the first is returned.
Whilst more resource-intensive than SimpleContainer, it can be more memory efficient in scenarios where many
items are equal and equivalent since the duplicates will be dropped.
A trait for creating a mutable reference from the specified value.
The resulting reference can live as long as the Container does.
See Container<T> for creating immutable references.