.class public final Lcom/google/common/collect/Sets; .super Ljava/lang/Object; .source "Sets.java" # annotations .annotation build Lcom/google/common/annotations/GwtCompatible; emulated = true .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/google/common/collect/Sets$PowerSet;, Lcom/google/common/collect/Sets$SubSet;, Lcom/google/common/collect/Sets$CartesianSet;, Lcom/google/common/collect/Sets$FilteredSortedSet;, Lcom/google/common/collect/Sets$FilteredSet;, Lcom/google/common/collect/Sets$SetView;, Lcom/google/common/collect/Sets$SetFromMap;, Lcom/google/common/collect/Sets$ImprovedAbstractSet; } .end annotation # direct methods .method private constructor ()V .locals 0 .prologue .line 66 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static cartesianProduct(Ljava/util/List;)Ljava/util/Set; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/List", "<+", "Ljava/util/Set", "<+TB;>;>;)", "Ljava/util/Set", "<", "Ljava/util/List", ";>;" } .end annotation .prologue .line 1029 invoke-static {p0}, Lcom/google/common/collect/Sets$CartesianSet;->create(Ljava/util/List;)Ljava/util/Set; move-result-object v0 return-object v0 .end method .method public static varargs cartesianProduct([Ljava/util/Set;)Ljava/util/Set; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "([", "Ljava/util/Set", "<+TB;>;)", "Ljava/util/Set", "<", "Ljava/util/List", ";>;" } .end annotation .prologue .line 1089 invoke-static {p0}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; move-result-object v0 invoke-static {v0}, Lcom/google/common/collect/Sets;->cartesianProduct(Ljava/util/List;)Ljava/util/Set; move-result-object v0 return-object v0 .end method .method public static complementOf(Ljava/util/Collection;)Ljava/util/EnumSet; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { ";>(", "Ljava/util/Collection", ";)", "Ljava/util/EnumSet", ";" } .end annotation .prologue .line 448 instance-of v0, p0, Ljava/util/EnumSet; if-eqz v0, :cond_0 .line 449 check-cast p0, Ljava/util/EnumSet; invoke-static {p0}, Ljava/util/EnumSet;->complementOf(Ljava/util/EnumSet;)Ljava/util/EnumSet; move-result-object v0 .line 454 :goto_0 return-object v0 .line 451 :cond_0 invoke-interface {p0}, Ljava/util/Collection;->isEmpty()Z move-result v0 if-nez v0, :cond_1 const/4 v0, 0x1 :goto_1 const-string v1, "collection is empty; use the other version of this method" invoke-static {v0, v1}, Lcom/google/common/base/Preconditions;->checkArgument(ZLjava/lang/Object;)V .line 453 invoke-interface {p0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator; move-result-object v0 invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/Enum; invoke-virtual {v0}, Ljava/lang/Enum;->getDeclaringClass()Ljava/lang/Class; move-result-object v0 .line 454 invoke-static {p0, v0}, Lcom/google/common/collect/Sets;->makeComplementByHand(Ljava/util/Collection;Ljava/lang/Class;)Ljava/util/EnumSet; move-result-object v0 goto :goto_0 .line 451 :cond_1 const/4 v0, 0x0 goto :goto_1 .end method .method public static complementOf(Ljava/util/Collection;Ljava/lang/Class;)Ljava/util/EnumSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { ";>(", "Ljava/util/Collection", ";", "Ljava/lang/Class", ";)", "Ljava/util/EnumSet", ";" } .end annotation .prologue .line 471 invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; .line 472 instance-of v0, p0, Ljava/util/EnumSet; if-eqz v0, :cond_0 check-cast p0, Ljava/util/EnumSet; invoke-static {p0}, Ljava/util/EnumSet;->complementOf(Ljava/util/EnumSet;)Ljava/util/EnumSet; move-result-object v0 :goto_0 return-object v0 :cond_0 invoke-static {p0, p1}, Lcom/google/common/collect/Sets;->makeComplementByHand(Ljava/util/Collection;Ljava/lang/Class;)Ljava/util/EnumSet; move-result-object v0 goto :goto_0 .end method .method public static difference(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", ";", "Ljava/util/Set", "<*>;)", "Lcom/google/common/collect/Sets$SetView", ";" } .end annotation .prologue .line 774 const-string v0, "set1" invoke-static {p0, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 775 const-string v0, "set2" invoke-static {p1, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 777 invoke-static {p1}, Lcom/google/common/base/Predicates;->in(Ljava/util/Collection;)Lcom/google/common/base/Predicate; move-result-object v0 invoke-static {v0}, Lcom/google/common/base/Predicates;->not(Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate; move-result-object v0 .line 778 new-instance v1, Lcom/google/common/collect/Sets$3; invoke-direct {v1, p0, v0, p1}, Lcom/google/common/collect/Sets$3;->(Ljava/util/Set;Lcom/google/common/base/Predicate;Ljava/util/Set;)V return-object v1 .end method .method static equalsImpl(Ljava/util/Set;Ljava/lang/Object;)Z .locals 4 .param p1 # Ljava/lang/Object; .annotation runtime Ljavax/annotation/Nullable; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", "<*>;", "Ljava/lang/Object;", ")Z" } .end annotation .prologue const/4 v0, 0x1 const/4 v1, 0x0 .line 1328 if-ne p0, p1, :cond_1 move v1, v0 .line 1342 :cond_0 :goto_0 return v1 .line 1331 :cond_1 instance-of v2, p1, Ljava/util/Set; if-eqz v2, :cond_0 .line 1332 check-cast p1, Ljava/util/Set; .line 1335 :try_start_0 invoke-interface {p0}, Ljava/util/Set;->size()I move-result v2 invoke-interface {p1}, Ljava/util/Set;->size()I move-result v3 if-ne v2, v3, :cond_2 invoke-interface {p0, p1}, Ljava/util/Set;->containsAll(Ljava/util/Collection;)Z :try_end_0 .catch Ljava/lang/NullPointerException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_0 move-result v2 if-eqz v2, :cond_2 :goto_1 move v1, v0 goto :goto_0 :cond_2 move v0, v1 goto :goto_1 .line 1338 :catch_0 move-exception v0 goto :goto_0 .line 1336 :catch_1 move-exception v0 goto :goto_0 .end method .method public static filter(Ljava/util/Set;Lcom/google/common/base/Predicate;)Ljava/util/Set; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", ";", "Lcom/google/common/base/Predicate", "<-TE;>;)", "Ljava/util/Set", ";" } .end annotation .prologue .line 844 instance-of v0, p0, Ljava/util/SortedSet; if-eqz v0, :cond_0 .line 845 check-cast p0, Ljava/util/SortedSet; invoke-static {p0, p1}, Lcom/google/common/collect/Sets;->filter(Ljava/util/SortedSet;Lcom/google/common/base/Predicate;)Ljava/util/SortedSet; move-result-object v0 .line 857 :goto_0 return-object v0 .line 847 :cond_0 instance-of v0, p0, Lcom/google/common/collect/Sets$FilteredSet; if-eqz v0, :cond_1 .line 850 check-cast p0, Lcom/google/common/collect/Sets$FilteredSet; .line 851 iget-object v0, p0, Lcom/google/common/collect/Sets$FilteredSet;->predicate:Lcom/google/common/base/Predicate; invoke-static {v0, p1}, Lcom/google/common/base/Predicates;->and(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate; move-result-object v2 .line 853 new-instance v1, Lcom/google/common/collect/Sets$FilteredSet; iget-object v0, p0, Lcom/google/common/collect/Sets$FilteredSet;->unfiltered:Ljava/util/Collection; check-cast v0, Ljava/util/Set; invoke-direct {v1, v0, v2}, Lcom/google/common/collect/Sets$FilteredSet;->(Ljava/util/Set;Lcom/google/common/base/Predicate;)V move-object v0, v1 goto :goto_0 .line 857 :cond_1 new-instance v2, Lcom/google/common/collect/Sets$FilteredSet; invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/util/Set; invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 check-cast v1, Lcom/google/common/base/Predicate; invoke-direct {v2, v0, v1}, Lcom/google/common/collect/Sets$FilteredSet;->(Ljava/util/Set;Lcom/google/common/base/Predicate;)V move-object v0, v2 goto :goto_0 .end method .method public static filter(Ljava/util/SortedSet;Lcom/google/common/base/Predicate;)Ljava/util/SortedSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/SortedSet", ";", "Lcom/google/common/base/Predicate", "<-TE;>;)", "Ljava/util/SortedSet", ";" } .end annotation .prologue .line 907 invoke-static {p0, p1}, Lcom/google/common/collect/Platform;->setsFilterSortedSet(Ljava/util/SortedSet;Lcom/google/common/base/Predicate;)Ljava/util/SortedSet; move-result-object v0 return-object v0 .end method .method static filterSortedIgnoreNavigable(Ljava/util/SortedSet;Lcom/google/common/base/Predicate;)Ljava/util/SortedSet; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/SortedSet", ";", "Lcom/google/common/base/Predicate", "<-TE;>;)", "Ljava/util/SortedSet", ";" } .end annotation .prologue .line 912 instance-of v0, p0, Lcom/google/common/collect/Sets$FilteredSet; if-eqz v0, :cond_0 .line 915 check-cast p0, Lcom/google/common/collect/Sets$FilteredSet; .line 916 iget-object v0, p0, Lcom/google/common/collect/Sets$FilteredSet;->predicate:Lcom/google/common/base/Predicate; invoke-static {v0, p1}, Lcom/google/common/base/Predicates;->and(Lcom/google/common/base/Predicate;Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate; move-result-object v2 .line 918 new-instance v1, Lcom/google/common/collect/Sets$FilteredSortedSet; iget-object v0, p0, Lcom/google/common/collect/Sets$FilteredSet;->unfiltered:Ljava/util/Collection; check-cast v0, Ljava/util/SortedSet; invoke-direct {v1, v0, v2}, Lcom/google/common/collect/Sets$FilteredSortedSet;->(Ljava/util/SortedSet;Lcom/google/common/base/Predicate;)V move-object v0, v1 .line 922 :goto_0 return-object v0 :cond_0 new-instance v2, Lcom/google/common/collect/Sets$FilteredSortedSet; invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/util/SortedSet; invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 check-cast v1, Lcom/google/common/base/Predicate; invoke-direct {v2, v0, v1}, Lcom/google/common/collect/Sets$FilteredSortedSet;->(Ljava/util/SortedSet;Lcom/google/common/base/Predicate;)V move-object v0, v2 goto :goto_0 .end method .method static hashCodeImpl(Ljava/util/Set;)I .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", "<*>;)I" } .end annotation .prologue const/4 v1, 0x0 .line 1314 .line 1315 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object v3 move v0, v1 :goto_0 invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_1 invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 .line 1316 if-eqz v2, :cond_0 invoke-virtual {v2}, Ljava/lang/Object;->hashCode()I move-result v2 :goto_1 add-int/2addr v0, v2 .line 1318 xor-int/lit8 v0, v0, -0x1 xor-int/lit8 v0, v0, -0x1 .line 1320 goto :goto_0 :cond_0 move v2, v1 .line 1316 goto :goto_1 .line 1321 :cond_1 return v0 .end method .method public static varargs immutableEnumSet(Ljava/lang/Enum;[Ljava/lang/Enum;)Lcom/google/common/collect/ImmutableSet; .locals 1 .annotation build Lcom/google/common/annotations/GwtCompatible; serializable = true .end annotation .annotation system Ldalvik/annotation/Signature; value = { ";>(TE;[TE;)", "Lcom/google/common/collect/ImmutableSet", ";" } .end annotation .prologue .line 99 invoke-static {p0, p1}, Ljava/util/EnumSet;->of(Ljava/lang/Enum;[Ljava/lang/Enum;)Ljava/util/EnumSet; move-result-object v0 invoke-static {v0}, Lcom/google/common/collect/ImmutableEnumSet;->asImmutable(Ljava/util/EnumSet;)Lcom/google/common/collect/ImmutableSet; move-result-object v0 return-object v0 .end method .method public static immutableEnumSet(Ljava/lang/Iterable;)Lcom/google/common/collect/ImmutableSet; .locals 2 .annotation build Lcom/google/common/annotations/GwtCompatible; serializable = true .end annotation .annotation system Ldalvik/annotation/Signature; value = { ";>(", "Ljava/lang/Iterable", ";)", "Lcom/google/common/collect/ImmutableSet", ";" } .end annotation .prologue .line 117 instance-of v0, p0, Lcom/google/common/collect/ImmutableEnumSet; if-eqz v0, :cond_0 .line 118 check-cast p0, Lcom/google/common/collect/ImmutableEnumSet; .line 133 :goto_0 return-object p0 .line 119 :cond_0 instance-of v0, p0, Ljava/util/Collection; if-eqz v0, :cond_2 .line 120 check-cast p0, Ljava/util/Collection; .line 121 invoke-interface {p0}, Ljava/util/Collection;->isEmpty()Z move-result v0 if-eqz v0, :cond_1 .line 122 invoke-static {}, Lcom/google/common/collect/ImmutableSet;->of()Lcom/google/common/collect/ImmutableSet; move-result-object p0 goto :goto_0 .line 124 :cond_1 invoke-static {p0}, Ljava/util/EnumSet;->copyOf(Ljava/util/Collection;)Ljava/util/EnumSet; move-result-object v0 invoke-static {v0}, Lcom/google/common/collect/ImmutableEnumSet;->asImmutable(Ljava/util/EnumSet;)Lcom/google/common/collect/ImmutableSet; move-result-object p0 goto :goto_0 .line 127 :cond_2 invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object v1 .line 128 invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_3 .line 129 invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/Enum; invoke-static {v0}, Ljava/util/EnumSet;->of(Ljava/lang/Enum;)Ljava/util/EnumSet; move-result-object v0 .line 130 invoke-static {v0, v1}, Lcom/google/common/collect/Iterators;->addAll(Ljava/util/Collection;Ljava/util/Iterator;)Z .line 131 invoke-static {v0}, Lcom/google/common/collect/ImmutableEnumSet;->asImmutable(Ljava/util/EnumSet;)Lcom/google/common/collect/ImmutableSet; move-result-object p0 goto :goto_0 .line 133 :cond_3 invoke-static {}, Lcom/google/common/collect/ImmutableSet;->of()Lcom/google/common/collect/ImmutableSet; move-result-object p0 goto :goto_0 .end method .method public static intersection(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", ";", "Ljava/util/Set", "<*>;)", "Lcom/google/common/collect/Sets$SetView", ";" } .end annotation .prologue .line 737 const-string v0, "set1" invoke-static {p0, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 738 const-string v0, "set2" invoke-static {p1, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 740 invoke-static {p1}, Lcom/google/common/base/Predicates;->in(Ljava/util/Collection;)Lcom/google/common/base/Predicate; move-result-object v0 .line 741 new-instance v1, Lcom/google/common/collect/Sets$2; invoke-direct {v1, p0, v0, p1}, Lcom/google/common/collect/Sets$2;->(Ljava/util/Set;Lcom/google/common/base/Predicate;Ljava/util/Set;)V return-object v1 .end method .method private static makeComplementByHand(Ljava/util/Collection;Ljava/lang/Class;)Ljava/util/EnumSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { ";>(", "Ljava/util/Collection", ";", "Ljava/lang/Class", ";)", "Ljava/util/EnumSet", ";" } .end annotation .prologue .line 479 invoke-static {p1}, Ljava/util/EnumSet;->allOf(Ljava/lang/Class;)Ljava/util/EnumSet; move-result-object v0 .line 480 invoke-virtual {v0, p0}, Ljava/util/EnumSet;->removeAll(Ljava/util/Collection;)Z .line 481 return-object v0 .end method .method public static newConcurrentHashSet()Ljava/util/Set; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Set", ";" } .end annotation .prologue .line 255 new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;->()V invoke-static {v0}, Lcom/google/common/collect/Sets;->newSetFromMap(Ljava/util/Map;)Ljava/util/Set; move-result-object v0 return-object v0 .end method .method public static newConcurrentHashSet(Ljava/lang/Iterable;)Ljava/util/Set; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable", "<+TE;>;)", "Ljava/util/Set", ";" } .end annotation .prologue .line 274 invoke-static {}, Lcom/google/common/collect/Sets;->newConcurrentHashSet()Ljava/util/Set; move-result-object v0 .line 275 invoke-static {v0, p0}, Lcom/google/common/collect/Iterables;->addAll(Ljava/util/Collection;Ljava/lang/Iterable;)Z .line 276 return-object v0 .end method .method public static newCopyOnWriteArraySet()Ljava/util/concurrent/CopyOnWriteArraySet; .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; value = "CopyOnWriteArraySet" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/concurrent/CopyOnWriteArraySet", ";" } .end annotation .prologue .line 410 new-instance v0, Ljava/util/concurrent/CopyOnWriteArraySet; invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArraySet;->()V return-object v0 .end method .method public static newCopyOnWriteArraySet(Ljava/lang/Iterable;)Ljava/util/concurrent/CopyOnWriteArraySet; .locals 2 .annotation build Lcom/google/common/annotations/GwtIncompatible; value = "CopyOnWriteArraySet" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable", "<+TE;>;)", "Ljava/util/concurrent/CopyOnWriteArraySet", ";" } .end annotation .prologue .line 425 instance-of v0, p0, Ljava/util/Collection; if-eqz v0, :cond_0 invoke-static {p0}, Lcom/google/common/collect/Collections2;->cast(Ljava/lang/Iterable;)Ljava/util/Collection; move-result-object v0 .line 428 :goto_0 new-instance v1, Ljava/util/concurrent/CopyOnWriteArraySet; invoke-direct {v1, v0}, Ljava/util/concurrent/CopyOnWriteArraySet;->(Ljava/util/Collection;)V return-object v1 .line 425 :cond_0 invoke-static {p0}, Lcom/google/common/collect/Lists;->newArrayList(Ljava/lang/Iterable;)Ljava/util/ArrayList; move-result-object v0 goto :goto_0 .end method .method public static newEnumSet(Ljava/lang/Iterable;Ljava/lang/Class;)Ljava/util/EnumSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { ";>(", "Ljava/lang/Iterable", ";", "Ljava/lang/Class", ";)", "Ljava/util/EnumSet", ";" } .end annotation .prologue .line 146 invoke-static {p1}, Ljava/util/EnumSet;->noneOf(Ljava/lang/Class;)Ljava/util/EnumSet; move-result-object v0 .line 147 invoke-static {v0, p0}, Lcom/google/common/collect/Iterables;->addAll(Ljava/util/Collection;Ljava/lang/Iterable;)Z .line 148 return-object v0 .end method .method public static newHashSet()Ljava/util/HashSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/HashSet", ";" } .end annotation .prologue .line 165 new-instance v0, Ljava/util/HashSet; invoke-direct {v0}, Ljava/util/HashSet;->()V return-object v0 .end method .method public static newHashSet(Ljava/lang/Iterable;)Ljava/util/HashSet; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable", "<+TE;>;)", "Ljava/util/HashSet", ";" } .end annotation .prologue .line 219 instance-of v0, p0, Ljava/util/Collection; if-eqz v0, :cond_0 new-instance v0, Ljava/util/HashSet; invoke-static {p0}, Lcom/google/common/collect/Collections2;->cast(Ljava/lang/Iterable;)Ljava/util/Collection; move-result-object v1 invoke-direct {v0, v1}, Ljava/util/HashSet;->(Ljava/util/Collection;)V :goto_0 return-object v0 :cond_0 invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object v0 invoke-static {v0}, Lcom/google/common/collect/Sets;->newHashSet(Ljava/util/Iterator;)Ljava/util/HashSet; move-result-object v0 goto :goto_0 .end method .method public static newHashSet(Ljava/util/Iterator;)Ljava/util/HashSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Iterator", "<+TE;>;)", "Ljava/util/HashSet", ";" } .end annotation .prologue .line 238 invoke-static {}, Lcom/google/common/collect/Sets;->newHashSet()Ljava/util/HashSet; move-result-object v0 .line 239 invoke-static {v0, p0}, Lcom/google/common/collect/Iterators;->addAll(Ljava/util/Collection;Ljava/util/Iterator;)Z .line 240 return-object v0 .end method .method public static varargs newHashSet([Ljava/lang/Object;)Ljava/util/HashSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "([TE;)", "Ljava/util/HashSet", ";" } .end annotation .prologue .line 183 array-length v0, p0 invoke-static {v0}, Lcom/google/common/collect/Sets;->newHashSetWithExpectedSize(I)Ljava/util/HashSet; move-result-object v0 .line 184 invoke-static {v0, p0}, Ljava/util/Collections;->addAll(Ljava/util/Collection;[Ljava/lang/Object;)Z .line 185 return-object v0 .end method .method public static newHashSetWithExpectedSize(I)Ljava/util/HashSet; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(I)", "Ljava/util/HashSet", ";" } .end annotation .prologue .line 202 new-instance v0, Ljava/util/HashSet; invoke-static {p0}, Lcom/google/common/collect/Maps;->capacity(I)I move-result v1 invoke-direct {v0, v1}, Ljava/util/HashSet;->(I)V return-object v0 .end method .method public static newIdentityHashSet()Ljava/util/Set; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Set", ";" } .end annotation .prologue .line 396 invoke-static {}, Lcom/google/common/collect/Maps;->newIdentityHashMap()Ljava/util/IdentityHashMap; move-result-object v0 invoke-static {v0}, Lcom/google/common/collect/Sets;->newSetFromMap(Ljava/util/Map;)Ljava/util/Set; move-result-object v0 return-object v0 .end method .method public static newLinkedHashSet()Ljava/util/LinkedHashSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/LinkedHashSet", ";" } .end annotation .prologue .line 290 new-instance v0, Ljava/util/LinkedHashSet; invoke-direct {v0}, Ljava/util/LinkedHashSet;->()V return-object v0 .end method .method public static newLinkedHashSet(Ljava/lang/Iterable;)Ljava/util/LinkedHashSet; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable", "<+TE;>;)", "Ljava/util/LinkedHashSet", ";" } .end annotation .prologue .line 325 instance-of v0, p0, Ljava/util/Collection; if-eqz v0, :cond_0 .line 326 new-instance v0, Ljava/util/LinkedHashSet; invoke-static {p0}, Lcom/google/common/collect/Collections2;->cast(Ljava/lang/Iterable;)Ljava/util/Collection; move-result-object v1 invoke-direct {v0, v1}, Ljava/util/LinkedHashSet;->(Ljava/util/Collection;)V .line 330 :goto_0 return-object v0 .line 328 :cond_0 invoke-static {}, Lcom/google/common/collect/Sets;->newLinkedHashSet()Ljava/util/LinkedHashSet; move-result-object v0 .line 329 invoke-static {v0, p0}, Lcom/google/common/collect/Iterables;->addAll(Ljava/util/Collection;Ljava/lang/Iterable;)Z goto :goto_0 .end method .method public static newLinkedHashSetWithExpectedSize(I)Ljava/util/LinkedHashSet; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(I)", "Ljava/util/LinkedHashSet", ";" } .end annotation .prologue .line 309 new-instance v0, Ljava/util/LinkedHashSet; invoke-static {p0}, Lcom/google/common/collect/Maps;->capacity(I)I move-result v1 invoke-direct {v0, v1}, Ljava/util/LinkedHashSet;->(I)V return-object v0 .end method .method public static newSetFromMap(Ljava/util/Map;)Ljava/util/Set; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Map", ";)", "Ljava/util/Set", ";" } .end annotation .prologue .line 516 new-instance v0, Lcom/google/common/collect/Sets$SetFromMap; invoke-direct {v0, p0}, Lcom/google/common/collect/Sets$SetFromMap;->(Ljava/util/Map;)V return-object v0 .end method .method public static newTreeSet()Ljava/util/TreeSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/TreeSet", ";" } .end annotation .prologue .line 345 new-instance v0, Ljava/util/TreeSet; invoke-direct {v0}, Ljava/util/TreeSet;->()V return-object v0 .end method .method public static newTreeSet(Ljava/lang/Iterable;)Ljava/util/TreeSet; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable", "<+TE;>;)", "Ljava/util/TreeSet", ";" } .end annotation .prologue .line 365 invoke-static {}, Lcom/google/common/collect/Sets;->newTreeSet()Ljava/util/TreeSet; move-result-object v0 .line 366 invoke-static {v0, p0}, Lcom/google/common/collect/Iterables;->addAll(Ljava/util/Collection;Ljava/lang/Iterable;)Z .line 367 return-object v0 .end method .method public static newTreeSet(Ljava/util/Comparator;)Ljava/util/TreeSet; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Comparator", "<-TE;>;)", "Ljava/util/TreeSet", ";" } .end annotation .prologue .line 382 new-instance v1, Ljava/util/TreeSet; invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/util/Comparator; invoke-direct {v1, v0}, Ljava/util/TreeSet;->(Ljava/util/Comparator;)V return-object v1 .end method .method public static powerSet(Ljava/util/Set;)Ljava/util/Set; .locals 1 .annotation build Lcom/google/common/annotations/GwtCompatible; serializable = false .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", ";)", "Ljava/util/Set", "<", "Ljava/util/Set", ";>;" } .end annotation .prologue .line 1203 new-instance v0, Lcom/google/common/collect/Sets$PowerSet; invoke-direct {v0, p0}, Lcom/google/common/collect/Sets$PowerSet;->(Ljava/util/Set;)V return-object v0 .end method .method static removeAllImpl(Ljava/util/Set;Ljava/util/Collection;)Z .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", "<*>;", "Ljava/util/Collection", "<*>;)Z" } .end annotation .prologue .line 1357 invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; .line 1358 instance-of v0, p1, Lcom/google/common/collect/Multiset; if-eqz v0, :cond_0 .line 1359 check-cast p1, Lcom/google/common/collect/Multiset; invoke-interface {p1}, Lcom/google/common/collect/Multiset;->elementSet()Ljava/util/Set; move-result-object p1 .line 1368 :cond_0 instance-of v0, p1, Ljava/util/Set; if-eqz v0, :cond_1 invoke-interface {p1}, Ljava/util/Collection;->size()I move-result v0 invoke-interface {p0}, Ljava/util/Set;->size()I move-result v1 if-le v0, v1, :cond_1 .line 1369 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object v0 invoke-static {v0, p1}, Lcom/google/common/collect/Iterators;->removeAll(Ljava/util/Iterator;Ljava/util/Collection;)Z move-result v0 .line 1371 :goto_0 return v0 :cond_1 invoke-interface {p1}, Ljava/util/Collection;->iterator()Ljava/util/Iterator; move-result-object v0 invoke-static {p0, v0}, Lcom/google/common/collect/Sets;->removeAllImpl(Ljava/util/Set;Ljava/util/Iterator;)Z move-result v0 goto :goto_0 .end method .method static removeAllImpl(Ljava/util/Set;Ljava/util/Iterator;)Z .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", "<*>;", "Ljava/util/Iterator", "<*>;)Z" } .end annotation .prologue .line 1349 const/4 v0, 0x0 .line 1350 :goto_0 invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_0 .line 1351 invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 invoke-interface {p0, v1}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z move-result v1 or-int/2addr v0, v1 goto :goto_0 .line 1353 :cond_0 return v0 .end method .method public static symmetricDifference(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", "<+TE;>;", "Ljava/util/Set", "<+TE;>;)", "Lcom/google/common/collect/Sets$SetView", ";" } .end annotation .prologue .line 808 const-string v0, "set1" invoke-static {p0, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 809 const-string v0, "set2" invoke-static {p1, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 812 invoke-static {p0, p1}, Lcom/google/common/collect/Sets;->union(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; move-result-object v0 invoke-static {p0, p1}, Lcom/google/common/collect/Sets;->intersection(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; move-result-object v1 invoke-static {v0, v1}, Lcom/google/common/collect/Sets;->difference(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; move-result-object v0 return-object v0 .end method .method public static union(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Set", "<+TE;>;", "Ljava/util/Set", "<+TE;>;)", "Lcom/google/common/collect/Sets$SetView", ";" } .end annotation .prologue .line 678 const-string v0, "set1" invoke-static {p0, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 679 const-string v0, "set2" invoke-static {p1, v0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 681 invoke-static {p1, p0}, Lcom/google/common/collect/Sets;->difference(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView; move-result-object v0 .line 683 new-instance v1, Lcom/google/common/collect/Sets$1; invoke-direct {v1, p0, v0, p1}, Lcom/google/common/collect/Sets$1;->(Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)V return-object v1 .end method