Equivalence.smali
.class public abstract Lcom/google/common/base/Equivalence;
.super Ljava/lang/Object;
.source "Equivalence.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# direct methods
.method protected constructor <init>()V
.registers 1
.prologue
.line 44
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static equals()Lcom/google/common/base/Equivalence;
.registers 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/base/Equivalence",
"<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.prologue
.line 306
sget-object v0, Lcom/google/common/base/Equivalence$Equals;->INSTANCE:Lcom/google/common/base/Equivalence$Equals;
return-object v0
.end method
.method public static identity()Lcom/google/common/base/Equivalence;
.registers 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/base/Equivalence",
"<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.prologue
.line 318
sget-object v0, Lcom/google/common/base/Equivalence$Identity;->INSTANCE:Lcom/google/common/base/Equivalence$Identity;
return-object v0
.end method
# virtual methods
.method protected abstract doEquivalent(Ljava/lang/Object;Ljava/lang/Object;)Z
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;TT;)Z"
}
.end annotation
.end method
.method protected abstract doHash(Ljava/lang/Object;)I
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)I"
}
.end annotation
.end method
.method public final equivalent(Ljava/lang/Object;Ljava/lang/Object;)Z
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;TT;)Z"
}
.end annotation
.prologue
.line 65
if-ne p1, p2, :cond_4
.line 66
const/4 v0, 0x1
.line 71
:goto_3
return v0
.line 68
:cond_4
if-eqz p1, :cond_8
if-nez p2, :cond_a
.line 69
:cond_8
const/4 v0, 0x0
goto :goto_3
.line 71
:cond_a
invoke-virtual {p0, p1, p2}, Lcom/google/common/base/Equivalence;->doEquivalent(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
goto :goto_3
.end method
.method public final equivalentTo(Ljava/lang/Object;)Lcom/google/common/base/o;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)",
"Lcom/google/common/base/o",
"<TT;>;"
}
.end annotation
.prologue
.line 255
new-instance v0, Lcom/google/common/base/Equivalence$EquivalentToPredicate;
invoke-direct {v0, p0, p1}, Lcom/google/common/base/Equivalence$EquivalentToPredicate;-><init>(Lcom/google/common/base/Equivalence;Ljava/lang/Object;)V
return-object v0
.end method
.method public final hash(Ljava/lang/Object;)I
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)I"
}
.end annotation
.prologue
.line 101
if-nez p1, :cond_4
.line 102
const/4 v0, 0x0
.line 104
:goto_3
return v0
:cond_4
invoke-virtual {p0, p1}, Lcom/google/common/base/Equivalence;->doHash(Ljava/lang/Object;)I
move-result v0
goto :goto_3
.end method
.method public final onResultOf(Lcom/google/common/base/g;)Lcom/google/common/base/Equivalence;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<F:",
"Ljava/lang/Object;",
">(",
"Lcom/google/common/base/g",
"<TF;+TT;>;)",
"Lcom/google/common/base/Equivalence",
"<TF;>;"
}
.end annotation
.prologue
.line 140
new-instance v0, Lcom/google/common/base/FunctionalEquivalence;
invoke-direct {v0, p1, p0}, Lcom/google/common/base/FunctionalEquivalence;-><init>(Lcom/google/common/base/g;Lcom/google/common/base/Equivalence;)V
return-object v0
.end method
.method public final pairwise()Lcom/google/common/base/Equivalence;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<S:TT;>()",
"Lcom/google/common/base/Equivalence",
"<",
"Ljava/lang/Iterable",
"<TS;>;>;"
}
.end annotation
.prologue
.line 244
new-instance v0, Lcom/google/common/base/PairwiseEquivalence;
invoke-direct {v0, p0}, Lcom/google/common/base/PairwiseEquivalence;-><init>(Lcom/google/common/base/Equivalence;)V
return-object v0
.end method
.method public final wrap(Ljava/lang/Object;)Lcom/google/common/base/Equivalence$Wrapper;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<S:TT;>(TS;)",
"Lcom/google/common/base/Equivalence$Wrapper",
"<TS;>;"
}
.end annotation
.prologue
.line 151
new-instance v0, Lcom/google/common/base/Equivalence$Wrapper;
const/4 v1, 0x0
invoke-direct {v0, p0, p1, v1}, Lcom/google/common/base/Equivalence$Wrapper;-><init>(Lcom/google/common/base/Equivalence;Ljava/lang/Object;Lcom/google/common/base/Equivalence$1;)V
return-object v0
.end method