@Override
    public int hashCode() {
      final T element = get();

      return element == null ? 0 : element.hashCode();
    }
We need this special weak reference class because we store the listeners in a set and we need
set-comparability.
java/zylib/src/main/java/com/google/security/zynamics/zylib/general/ListenerProvider.java