Module dev.mccue.guava.base
Package dev.mccue.guava.base
Class Equivalence.Wrapper<T extends @Nullable Object>
java.lang.Object
dev.mccue.guava.base.Equivalence.Wrapper<T>
- All Implemented Interfaces:
Serializable
- Enclosing class:
- Equivalence<T>
public static final class Equivalence.Wrapper<T extends @Nullable Object>
extends Object
implements Serializable
Wraps an object so that
#equals(Object) and #hashCode() delegate to an
Equivalence.
For example, given an Equivalence for String strings named equiv
that tests equivalence using their lengths:
equiv.wrap("a").equals(equiv.wrap("b")) // true
equiv.wrap("a").equals(equiv.wrap("hello")) // false
Note in particular that an equivalence wrapper is never equal to the object it wraps.
equiv.wrap(obj).equals(obj) // always false
- Since:
- 10.0
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionbooleanReturnstrueifEquivalence#equivalent(Object, Object)applied to the wrapped references istrueand both wrappers use theObject#equals(Object) sameequivalence.get()Returns the (possibly null) reference wrapped by this instance.inthashCode()Returns the result ofEquivalence#hash(Object)applied to the wrapped reference.toString()Returns a string representation for this equivalence wrapper.
-
Method Details
-
get
Returns the (possibly null) reference wrapped by this instance. -
equals
ReturnstrueifEquivalence#equivalent(Object, Object)applied to the wrapped references istrueand both wrappers use theObject#equals(Object) sameequivalence. -
hashCode
public int hashCode()Returns the result ofEquivalence#hash(Object)applied to the wrapped reference. -
toString
Returns a string representation for this equivalence wrapper. The form of this string representation is not specified.
-