Mustermann::EqualityMap uses ObjectSpace::WeakMap directly in its implementation. According to the docs for ObjectSpace::WeakMap, that class should not be used directly:
This class is mostly used internally by WeakRef, please use lib/weakref.rb for the public interface.
Of course, it exists and works, but using WeakRef instead looks like the safer option.