CollectionsKt__IterablesKt.smali
.class Lkotlin/collections/CollectionsKt__IterablesKt;
.super Lkotlin/collections/CollectionsKt__CollectionsKt;
.source "Iterables.kt"
# annotations
.annotation runtime Lkotlin/Metadata;
bv = {
0x1,
0x0,
0x3
}
d1 = {
"\u0000:\n\u0000\n\u0002\u0010\u001c\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0010(\n\u0000\n\u0002\u0010\u0008\n\u0002\u0008\u0004\n\u0002\u0010\u001e\n\u0002\u0008\u0003\n\u0002\u0010 \n\u0000\n\u0002\u0010\u000b\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\u001a.\u0010\u0000\u001a\u0008\u0012\u0004\u0012\u0002H\u00020\u0001\"\u0004\u0008\u0000\u0010\u00022\u0014\u0008\u0004\u0010\u0003\u001a\u000e\u0012\n\u0012\u0008\u0012\u0004\u0012\u0002H\u00020\u00050\u0004H\u0087\u0008\u00f8\u0001\u0000\u001a \u0010\u0006\u001a\u00020\u0007\"\u0004\u0008\u0000\u0010\u0002*\u0008\u0012\u0004\u0012\u0002H\u00020\u00012\u0006\u0010\u0008\u001a\u00020\u0007H\u0001\u001a\u001f\u0010\t\u001a\u0004\u0018\u00010\u0007\"\u0004\u0008\u0000\u0010\u0002*\u0008\u0012\u0004\u0012\u0002H\u00020\u0001H\u0001\u00a2\u0006\u0002\u0010\n\u001a\u001e\u0010\u000b\u001a\u0008\u0012\u0004\u0012\u0002H\u00020\u000c\"\u0004\u0008\u0000\u0010\u0002*\u0008\u0012\u0004\u0012\u0002H\u00020\u0001H\u0000\u001a,\u0010\r\u001a\u0008\u0012\u0004\u0012\u0002H\u00020\u000c\"\u0004\u0008\u0000\u0010\u0002*\u0008\u0012\u0004\u0012\u0002H\u00020\u00012\u000c\u0010\u000e\u001a\u0008\u0012\u0004\u0012\u0002H\u00020\u0001H\u0000\u001a\"\u0010\u000f\u001a\u0008\u0012\u0004\u0012\u0002H\u00020\u0010\"\u0004\u0008\u0000\u0010\u0002*\u000e\u0012\n\u0012\u0008\u0012\u0004\u0012\u0002H\u00020\u00010\u0001\u001a\u001d\u0010\u0011\u001a\u00020\u0012\"\u0004\u0008\u0000\u0010\u0002*\u0008\u0012\u0004\u0012\u0002H\u00020\u000cH\u0002\u00a2\u0006\u0002\u0008\u0013\u001a@\u0010\u0014\u001a\u001a\u0012\n\u0012\u0008\u0012\u0004\u0012\u0002H\u00020\u0010\u0012\n\u0012\u0008\u0012\u0004\u0012\u0002H\u00160\u00100\u0015\"\u0004\u0008\u0000\u0010\u0002\"\u0004\u0008\u0001\u0010\u0016*\u0014\u0012\u0010\u0012\u000e\u0012\u0004\u0012\u0002H\u0002\u0012\u0004\u0012\u0002H\u00160\u00150\u0001\u0082\u0002\u0007\n\u0005\u0008\u009920\u0001\u00a8\u0006\u0017"
}
d2 = {
"Iterable",
"",
"T",
"iterator",
"Lkotlin/Function0;",
"",
"collectionSizeOrDefault",
"",
"default",
"collectionSizeOrNull",
"(Ljava/lang/Iterable;)Ljava/lang/Integer;",
"convertToSetForSetOperation",
"",
"convertToSetForSetOperationWith",
"source",
"flatten",
"",
"safeToConvertToSet",
"",
"safeToConvertToSet$CollectionsKt__IterablesKt",
"unzip",
"Lkotlin/Pair;",
"R",
"kotlin-stdlib"
}
k = 0x5
mv = {
0x1,
0x4,
0x0
}
xi = 0x1
xs = "kotlin/collections/CollectionsKt"
.end annotation
# direct methods
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Lkotlin/collections/CollectionsKt__CollectionsKt;-><init>()V
return-void
.end method
.method private static final Iterable(Lkotlin/jvm/functions/Function0;)Ljava/lang/Iterable;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lkotlin/jvm/functions/Function0<",
"+",
"Ljava/util/Iterator<",
"+TT;>;>;)",
"Ljava/lang/Iterable<",
"TT;>;"
}
.end annotation
.line 16
new-instance v0, Lkotlin/collections/CollectionsKt__IterablesKt$Iterable$1;
invoke-direct {v0, p0}, Lkotlin/collections/CollectionsKt__IterablesKt$Iterable$1;-><init>(Lkotlin/jvm/functions/Function0;)V
check-cast v0, Ljava/lang/Iterable;
return-object v0
.end method
.method public static final collectionSizeOrDefault(Ljava/lang/Iterable;I)I
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+TT;>;I)I"
}
.end annotation
const-string v0, "$this$collectionSizeOrDefault"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 39
instance-of v0, p0, Ljava/util/Collection;
if-eqz v0, :cond_f
check-cast p0, Ljava/util/Collection;
invoke-interface {p0}, Ljava/util/Collection;->size()I
move-result p1
:cond_f
return p1
.end method
.method public static final collectionSizeOrNull(Ljava/lang/Iterable;)Ljava/lang/Integer;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+TT;>;)",
"Ljava/lang/Integer;"
}
.end annotation
const-string v0, "$this$collectionSizeOrNull"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 33
instance-of v0, p0, Ljava/util/Collection;
if-eqz v0, :cond_14
check-cast p0, Ljava/util/Collection;
invoke-interface {p0}, Ljava/util/Collection;->size()I
move-result p0
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
goto :goto_15
:cond_14
const/4 p0, 0x0
:goto_15
return-object p0
.end method
.method public static final convertToSetForSetOperation(Ljava/lang/Iterable;)Ljava/util/Collection;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+TT;>;)",
"Ljava/util/Collection<",
"TT;>;"
}
.end annotation
const-string v0, "$this$convertToSetForSetOperation"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 59
instance-of v0, p0, Ljava/util/Set;
if-eqz v0, :cond_c
check-cast p0, Ljava/util/Collection;
goto :goto_28
.line 60
:cond_c
instance-of v0, p0, Ljava/util/Collection;
if-eqz v0, :cond_22
move-object v0, p0
check-cast v0, Ljava/util/Collection;
invoke-static {v0}, Lkotlin/collections/CollectionsKt__IterablesKt;->safeToConvertToSet$CollectionsKt__IterablesKt(Ljava/util/Collection;)Z
move-result v1
if-eqz v1, :cond_20
invoke-static {p0}, Lkotlin/collections/CollectionsKt;->toHashSet(Ljava/lang/Iterable;)Ljava/util/HashSet;
move-result-object p0
check-cast p0, Ljava/util/Collection;
goto :goto_28
:cond_20
move-object p0, v0
goto :goto_28
.line 61
:cond_22
invoke-static {p0}, Lkotlin/collections/CollectionsKt;->toHashSet(Ljava/lang/Iterable;)Ljava/util/HashSet;
move-result-object p0
check-cast p0, Ljava/util/Collection;
:goto_28
return-object p0
.end method
.method public static final convertToSetForSetOperationWith(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/util/Collection;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+TT;>;",
"Ljava/lang/Iterable<",
"+TT;>;)",
"Ljava/util/Collection<",
"TT;>;"
}
.end annotation
const-string v0, "$this$convertToSetForSetOperationWith"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "source"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 47
instance-of v0, p0, Ljava/util/Set;
if-eqz v0, :cond_11
check-cast p0, Ljava/util/Collection;
goto :goto_3d
.line 48
:cond_11
instance-of v0, p0, Ljava/util/Collection;
if-eqz v0, :cond_37
.line 50
instance-of v0, p1, Ljava/util/Collection;
if-eqz v0, :cond_25
check-cast p1, Ljava/util/Collection;
invoke-interface {p1}, Ljava/util/Collection;->size()I
move-result p1
const/4 v0, 0x2
if-ge p1, v0, :cond_25
check-cast p0, Ljava/util/Collection;
goto :goto_3d
.line 51
:cond_25
move-object p1, p0
check-cast p1, Ljava/util/Collection;
invoke-static {p1}, Lkotlin/collections/CollectionsKt__IterablesKt;->safeToConvertToSet$CollectionsKt__IterablesKt(Ljava/util/Collection;)Z
move-result v0
if-eqz v0, :cond_35
invoke-static {p0}, Lkotlin/collections/CollectionsKt;->toHashSet(Ljava/lang/Iterable;)Ljava/util/HashSet;
move-result-object p0
check-cast p0, Ljava/util/Collection;
goto :goto_3d
:cond_35
move-object p0, p1
goto :goto_3d
.line 53
:cond_37
invoke-static {p0}, Lkotlin/collections/CollectionsKt;->toHashSet(Ljava/lang/Iterable;)Ljava/util/HashSet;
move-result-object p0
check-cast p0, Ljava/util/Collection;
:goto_3d
return-object p0
.end method
.method public static final flatten(Ljava/lang/Iterable;)Ljava/util/List;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+",
"Ljava/lang/Iterable<",
"+TT;>;>;)",
"Ljava/util/List<",
"TT;>;"
}
.end annotation
const-string v0, "$this$flatten"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 70
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 71
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_e
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_21
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Iterable;
.line 72
move-object v2, v0
check-cast v2, Ljava/util/Collection;
invoke-static {v2, v1}, Lkotlin/collections/CollectionsKt;->addAll(Ljava/util/Collection;Ljava/lang/Iterable;)Z
goto :goto_e
.line 74
:cond_21
check-cast v0, Ljava/util/List;
return-object v0
.end method
.method private static final safeToConvertToSet$CollectionsKt__IterablesKt(Ljava/util/Collection;)Z
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/util/Collection<",
"+TT;>;)Z"
}
.end annotation
.line 42
invoke-interface {p0}, Ljava/util/Collection;->size()I
move-result v0
const/4 v1, 0x2
if-le v0, v1, :cond_d
instance-of p0, p0, Ljava/util/ArrayList;
if-eqz p0, :cond_d
const/4 p0, 0x1
goto :goto_e
:cond_d
const/4 p0, 0x0
:goto_e
return p0
.end method
.method public static final unzip(Ljava/lang/Iterable;)Lkotlin/Pair;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
"R:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Iterable<",
"+",
"Lkotlin/Pair<",
"+TT;+TR;>;>;)",
"Lkotlin/Pair<",
"Ljava/util/List<",
"TT;>;",
"Ljava/util/List<",
"TR;>;>;"
}
.end annotation
const-string v0, "$this$unzip"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const/16 v0, 0xa
.line 84
invoke-static {p0, v0}, Lkotlin/collections/CollectionsKt;->collectionSizeOrDefault(Ljava/lang/Iterable;I)I
move-result v0
.line 85
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1, v0}, Ljava/util/ArrayList;-><init>(I)V
.line 86
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2, v0}, Ljava/util/ArrayList;-><init>(I)V
.line 87
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_19
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_34
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lkotlin/Pair;
.line 88
invoke-virtual {v0}, Lkotlin/Pair;->getFirst()Ljava/lang/Object;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 89
invoke-virtual {v0}, Lkotlin/Pair;->getSecond()Ljava/lang/Object;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
goto :goto_19
.line 91
:cond_34
invoke-static {v1, v2}, Lkotlin/TuplesKt;->to(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
move-result-object p0
return-object p0
.end method