ImmutableMultiset.smali
.class public abstract Lcom/google/common/collect/ImmutableMultiset;
.super Lcom/google/common/collect/ImmutableMultisetGwtSerializationDependencies;
.source "ImmutableMultiset.java"
# interfaces
.implements Lcom/google/common/collect/V;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/common/collect/ImmutableMultiset$a;,
Lcom/google/common/collect/ImmutableMultiset$EntrySetSerializedForm;,
Lcom/google/common/collect/ImmutableMultiset$EntrySet;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">",
"Lcom/google/common/collect/ImmutableMultisetGwtSerializationDependencies<",
"TE;>;",
"Lcom/google/common/collect/V<",
"TE;>;"
}
.end annotation
# instance fields
.field private transient asList:Lcom/google/common/collect/ImmutableList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/collect/ImmutableList<",
"TE;>;"
}
.end annotation
.end field
.field private transient entrySet:Lcom/google/common/collect/ImmutableSet;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/collect/ImmutableSet<",
"Lcom/google/common/collect/V$a<",
"TE;>;>;"
}
.end annotation
.end field
# direct methods
.method constructor <init>()V
.registers 1
.line 1
invoke-direct {p0}, Lcom/google/common/collect/ImmutableMultisetGwtSerializationDependencies;-><init>()V
return-void
.end method
.method public static builder()Lcom/google/common/collect/ImmutableMultiset$a;
.registers 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">()",
"Lcom/google/common/collect/ImmutableMultiset$a<",
"TE;>;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$a;
invoke-direct {v0}, Lcom/google/common/collect/ImmutableMultiset$a;-><init>()V
return-object v0
.end method
.method private static varargs copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">([TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$a;
invoke-direct {v0}, Lcom/google/common/collect/ImmutableMultiset$a;-><init>()V
invoke-virtual {v0, p0}, Lcom/google/common/collect/ImmutableMultiset$a;->a([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableMultiset$a;->a()Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method static copyFromEntries(Ljava/util/Collection;)Lcom/google/common/collect/ImmutableMultiset;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(",
"Ljava/util/Collection<",
"+",
"Lcom/google/common/collect/V$a<",
"+TE;>;>;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$a;
invoke-interface {p0}, Ljava/util/Collection;->size()I
move-result v1
invoke-direct {v0, v1}, Lcom/google/common/collect/ImmutableMultiset$a;-><init>(I)V
.line 2
invoke-interface {p0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_d
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_25
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/common/collect/V$a;
.line 3
invoke-interface {v1}, Lcom/google/common/collect/V$a;->getElement()Ljava/lang/Object;
move-result-object v2
invoke-interface {v1}, Lcom/google/common/collect/V$a;->getCount()I
move-result v1
invoke-virtual {v0, v2, v1}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;I)Lcom/google/common/collect/ImmutableMultiset$a;
goto :goto_d
.line 4
:cond_25
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableMultiset$a;->a()Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static copyOf(Ljava/lang/Iterable;)Lcom/google/common/collect/ImmutableMultiset;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+TE;>;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 2
instance-of v0, p0, Lcom/google/common/collect/ImmutableMultiset;
if-eqz v0, :cond_e
.line 3
move-object v0, p0
check-cast v0, Lcom/google/common/collect/ImmutableMultiset;
.line 4
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableCollection;->isPartialView()Z
move-result v1
if-nez v1, :cond_e
return-object v0
.line 5
:cond_e
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$a;
.line 6
invoke-static {p0}, Lcom/google/common/collect/Multisets;->b(Ljava/lang/Iterable;)I
move-result v1
invoke-direct {v0, v1}, Lcom/google/common/collect/ImmutableMultiset$a;-><init>(I)V
.line 7
invoke-virtual {v0, p0}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Iterable;)Lcom/google/common/collect/ImmutableMultiset$a;
.line 8
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableMultiset$a;->a()Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static copyOf(Ljava/util/Iterator;)Lcom/google/common/collect/ImmutableMultiset;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(",
"Ljava/util/Iterator<",
"+TE;>;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 9
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$a;
invoke-direct {v0}, Lcom/google/common/collect/ImmutableMultiset$a;-><init>()V
invoke-virtual {v0, p0}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/util/Iterator;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableMultiset$a;->a()Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static copyOf([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">([TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 1
invoke-static {p0}, Lcom/google/common/collect/ImmutableMultiset;->copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method private createEntrySet()Lcom/google/common/collect/ImmutableSet;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableSet<",
"Lcom/google/common/collect/V$a<",
"TE;>;>;"
}
.end annotation
.line 1
invoke-virtual {p0}, Ljava/util/AbstractCollection;->isEmpty()Z
move-result v0
if-eqz v0, :cond_b
invoke-static {}, Lcom/google/common/collect/ImmutableSet;->of()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
goto :goto_11
:cond_b
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$EntrySet;
const/4 v1, 0x0
invoke-direct {v0, p0, v1}, Lcom/google/common/collect/ImmutableMultiset$EntrySet;-><init>(Lcom/google/common/collect/ImmutableMultiset;Lcom/google/common/collect/E;)V
:goto_11
return-object v0
.end method
.method public static of()Lcom/google/common/collect/ImmutableMultiset;
.registers 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">()",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 1
sget-object v0, Lcom/google/common/collect/RegularImmutableMultiset;->EMPTY:Lcom/google/common/collect/RegularImmutableMultiset;
return-object v0
.end method
.method public static of(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
const/4 v0, 0x1
.line 2
new-array v0, v0, [Ljava/lang/Object;
const/4 v1, 0x0
aput-object p0, v0, v1
invoke-static {v0}, Lcom/google/common/collect/ImmutableMultiset;->copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static of(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(TE;TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
const/4 v0, 0x2
.line 3
new-array v0, v0, [Ljava/lang/Object;
const/4 v1, 0x0
aput-object p0, v0, v1
const/4 p0, 0x1
aput-object p1, v0, p0
invoke-static {v0}, Lcom/google/common/collect/ImmutableMultiset;->copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(TE;TE;TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
const/4 v0, 0x3
.line 4
new-array v0, v0, [Ljava/lang/Object;
const/4 v1, 0x0
aput-object p0, v0, v1
const/4 p0, 0x1
aput-object p1, v0, p0
const/4 p0, 0x2
aput-object p2, v0, p0
invoke-static {v0}, Lcom/google/common/collect/ImmutableMultiset;->copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(TE;TE;TE;TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
const/4 v0, 0x4
.line 5
new-array v0, v0, [Ljava/lang/Object;
const/4 v1, 0x0
aput-object p0, v0, v1
const/4 p0, 0x1
aput-object p1, v0, p0
const/4 p0, 0x2
aput-object p2, v0, p0
const/4 p0, 0x3
aput-object p3, v0, p0
invoke-static {v0}, Lcom/google/common/collect/ImmutableMultiset;->copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(TE;TE;TE;TE;TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
const/4 v0, 0x5
.line 6
new-array v0, v0, [Ljava/lang/Object;
const/4 v1, 0x0
aput-object p0, v0, v1
const/4 p0, 0x1
aput-object p1, v0, p0
const/4 p0, 0x2
aput-object p2, v0, p0
const/4 p0, 0x3
aput-object p3, v0, p0
const/4 p0, 0x4
aput-object p4, v0, p0
invoke-static {v0}, Lcom/google/common/collect/ImmutableMultiset;->copyFromElements([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
.method public static varargs of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset;
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"<E:",
"Ljava/lang/Object;",
">(TE;TE;TE;TE;TE;TE;[TE;)",
"Lcom/google/common/collect/ImmutableMultiset<",
"TE;>;"
}
.end annotation
.line 7
new-instance v0, Lcom/google/common/collect/ImmutableMultiset$a;
invoke-direct {v0}, Lcom/google/common/collect/ImmutableMultiset$a;-><init>()V
invoke-virtual {v0, p0}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0, p1}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0, p2}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0, p3}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0, p4}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0, p5}, Lcom/google/common/collect/ImmutableMultiset$a;->a(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0, p6}, Lcom/google/common/collect/ImmutableMultiset$a;->a([Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMultiset$a;
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableMultiset$a;->a()Lcom/google/common/collect/ImmutableMultiset;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public final add(Ljava/lang/Object;I)I
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(TE;I)I"
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 1
new-instance p1, Ljava/lang/UnsupportedOperationException;
invoke-direct {p1}, Ljava/lang/UnsupportedOperationException;-><init>()V
throw p1
.end method
.method public asList()Lcom/google/common/collect/ImmutableList;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableList<",
"TE;>;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/google/common/collect/ImmutableMultiset;->asList:Lcom/google/common/collect/ImmutableList;
if-nez v0, :cond_a
.line 2
invoke-super {p0}, Lcom/google/common/collect/ImmutableCollection;->asList()Lcom/google/common/collect/ImmutableList;
move-result-object v0
iput-object v0, p0, Lcom/google/common/collect/ImmutableMultiset;->asList:Lcom/google/common/collect/ImmutableList;
:cond_a
return-object v0
.end method
.method public contains(Ljava/lang/Object;)Z
.registers 2
.line 1
invoke-interface {p0, p1}, Lcom/google/common/collect/V;->count(Ljava/lang/Object;)I
move-result p1
if-lez p1, :cond_8
const/4 p1, 0x1
goto :goto_9
:cond_8
const/4 p1, 0x0
:goto_9
return p1
.end method
.method copyIntoArray([Ljava/lang/Object;I)I
.registers 7
.line 1
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->entrySet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableSet;->iterator()Lcom/google/common/collect/ia;
move-result-object v0
:goto_8
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_26
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/common/collect/V$a;
.line 2
invoke-interface {v1}, Lcom/google/common/collect/V$a;->getCount()I
move-result v2
add-int/2addr v2, p2
invoke-interface {v1}, Lcom/google/common/collect/V$a;->getElement()Ljava/lang/Object;
move-result-object v3
invoke-static {p1, p2, v2, v3}, Ljava/util/Arrays;->fill([Ljava/lang/Object;IILjava/lang/Object;)V
.line 3
invoke-interface {v1}, Lcom/google/common/collect/V$a;->getCount()I
move-result v1
add-int/2addr p2, v1
goto :goto_8
:cond_26
return p2
.end method
.method public abstract elementSet()Lcom/google/common/collect/ImmutableSet;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableSet<",
"TE;>;"
}
.end annotation
.end method
.method public bridge synthetic elementSet()Ljava/util/Set;
.registers 2
.line 1
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->elementSet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
return-object v0
.end method
.method public entrySet()Lcom/google/common/collect/ImmutableSet;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableSet<",
"Lcom/google/common/collect/V$a<",
"TE;>;>;"
}
.end annotation
.line 2
iget-object v0, p0, Lcom/google/common/collect/ImmutableMultiset;->entrySet:Lcom/google/common/collect/ImmutableSet;
if-nez v0, :cond_a
.line 3
invoke-direct {p0}, Lcom/google/common/collect/ImmutableMultiset;->createEntrySet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
iput-object v0, p0, Lcom/google/common/collect/ImmutableMultiset;->entrySet:Lcom/google/common/collect/ImmutableSet;
:cond_a
return-object v0
.end method
.method public bridge synthetic entrySet()Ljava/util/Set;
.registers 2
.line 1
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->entrySet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.registers 2
.line 1
invoke-static {p0, p1}, Lcom/google/common/collect/Multisets;->a(Lcom/google/common/collect/V;Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method abstract getEntry(I)Lcom/google/common/collect/V$a;
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)",
"Lcom/google/common/collect/V$a<",
"TE;>;"
}
.end annotation
.end method
.method public hashCode()I
.registers 2
.line 1
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->entrySet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
invoke-static {v0}, Lcom/google/common/collect/da;->a(Ljava/util/Set;)I
move-result v0
return v0
.end method
.method public iterator()Lcom/google/common/collect/ia;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ia<",
"TE;>;"
}
.end annotation
.line 2
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->entrySet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
invoke-virtual {v0}, Lcom/google/common/collect/ImmutableSet;->iterator()Lcom/google/common/collect/ia;
move-result-object v0
.line 3
new-instance v1, Lcom/google/common/collect/E;
invoke-direct {v1, p0, v0}, Lcom/google/common/collect/E;-><init>(Lcom/google/common/collect/ImmutableMultiset;Ljava/util/Iterator;)V
return-object v1
.end method
.method public bridge synthetic iterator()Ljava/util/Iterator;
.registers 2
.line 1
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->iterator()Lcom/google/common/collect/ia;
move-result-object v0
return-object v0
.end method
.method public final remove(Ljava/lang/Object;I)I
.registers 3
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 1
new-instance p1, Ljava/lang/UnsupportedOperationException;
invoke-direct {p1}, Ljava/lang/UnsupportedOperationException;-><init>()V
throw p1
.end method
.method public final setCount(Ljava/lang/Object;I)I
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(TE;I)I"
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 1
new-instance p1, Ljava/lang/UnsupportedOperationException;
invoke-direct {p1}, Ljava/lang/UnsupportedOperationException;-><init>()V
throw p1
.end method
.method public final setCount(Ljava/lang/Object;II)Z
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(TE;II)Z"
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 2
new-instance p1, Ljava/lang/UnsupportedOperationException;
invoke-direct {p1}, Ljava/lang/UnsupportedOperationException;-><init>()V
throw p1
.end method
.method public toString()Ljava/lang/String;
.registers 2
.line 1
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMultiset;->entrySet()Lcom/google/common/collect/ImmutableSet;
move-result-object v0
invoke-virtual {v0}, Ljava/util/AbstractCollection;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method abstract writeReplace()Ljava/lang/Object;
.end method