@Beta @GwtCompatible final class FunctionalEquivalence<F,T> extends Equivalence<F> implements java.io.Serializable
Equivalence.Equals, Equivalence.Identity, Equivalence.Wrapper<T>
Modifier and Type | Field and Description |
---|---|
private Function<F,? extends T> |
function |
private Equivalence<T> |
resultEquivalence |
private static long |
serialVersionUID |
Constructor and Description |
---|
FunctionalEquivalence(Function<F,? extends T> function,
Equivalence<T> resultEquivalence) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
doEquivalent(F a,
F b)
Returns
true if a and b are considered equivalent. |
protected int |
doHash(F a)
Returns a hash code for non-null object
t . |
boolean |
equals(java.lang.Object obj) |
int |
hashCode() |
java.lang.String |
toString() |
equals, equivalent, equivalentTo, hash, identity, onResultOf, pairwise, wrap
private static final long serialVersionUID
private final Equivalence<T> resultEquivalence
FunctionalEquivalence(Function<F,? extends T> function, Equivalence<T> resultEquivalence)
protected boolean doEquivalent(F a, F b)
Equivalence
true
if a
and b
are considered equivalent.
Called by Equivalence.equivalent(T, T)
. a
and b
are not the same
object and are not nulls.
doEquivalent
in class Equivalence<F>
protected int doHash(F a)
Equivalence
t
.
Called by Equivalence.hash(T)
.
doHash
in class Equivalence<F>
public boolean equals(@Nullable java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object