Rabbit-R1/switch port/smali/smali_classes3/kotlin/io/FileTreeWalk.smali
2024-05-21 17:08:36 -04:00

502 lines
17 KiB
Smali

.class public final Lkotlin/io/FileTreeWalk;
.super Ljava/lang/Object;
.source "FileTreeWalk.kt"
# interfaces
.implements Lkotlin/sequences/Sequence;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lkotlin/io/FileTreeWalk$DirectoryState;,
Lkotlin/io/FileTreeWalk$FileTreeWalkIterator;,
Lkotlin/io/FileTreeWalk$WalkState;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lkotlin/sequences/Sequence<",
"Ljava/io/File;",
">;"
}
.end annotation
.annotation runtime Lkotlin/Metadata;
d1 = {
"\u0000L\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\u0008\n\u0002\u0008\u0002\n\u0002\u0010(\n\u0002\u0008\u0006\u0018\u00002\u0008\u0012\u0004\u0012\u00020\u00020\u0001:\u0003\u001a\u001b\u001cB\u0019\u0008\u0010\u0012\u0006\u0010\u0003\u001a\u00020\u0002\u0012\u0008\u0008\u0002\u0010\u0004\u001a\u00020\u0005\u00a2\u0006\u0002\u0010\u0006B\u0089\u0001\u0008\u0002\u0012\u0006\u0010\u0003\u001a\u00020\u0002\u0012\u0008\u0008\u0002\u0010\u0004\u001a\u00020\u0005\u0012\u0014\u0010\u0007\u001a\u0010\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\t\u0018\u00010\u0008\u0012\u0014\u0010\n\u001a\u0010\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\u000b\u0018\u00010\u0008\u00128\u0010\u000c\u001a4\u0012\u0013\u0012\u00110\u0002\u00a2\u0006\u000c\u0008\u000e\u0012\u0008\u0008\u000f\u0012\u0004\u0008\u0008(\u0010\u0012\u0013\u0012\u00110\u0011\u00a2\u0006\u000c\u0008\u000e\u0012\u0008\u0008\u000f\u0012\u0004\u0008\u0008(\u0012\u0012\u0004\u0012\u00020\u000b\u0018\u00010\r\u0012\u0008\u0008\u0002\u0010\u0013\u001a\u00020\u0014\u00a2\u0006\u0002\u0010\u0015J\u000f\u0010\u0016\u001a\u0008\u0012\u0004\u0012\u00020\u00020\u0017H\u0096\u0002J\u000e\u0010\u0013\u001a\u00020\u00002\u0006\u0010\u0018\u001a\u00020\u0014J\u001a\u0010\u0007\u001a\u00020\u00002\u0012\u0010\u0019\u001a\u000e\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\t0\u0008J \u0010\u000c\u001a\u00020\u00002\u0018\u0010\u0019\u001a\u0014\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\u0011\u0012\u0004\u0012\u00020\u000b0\rJ\u001a\u0010\n\u001a\u00020\u00002\u0012\u0010\u0019\u001a\u000e\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\u000b0\u0008R\u000e\u0010\u0004\u001a\u00020\u0005X\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u000e\u0010\u0013\u001a\u00020\u0014X\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u001c\u0010\u0007\u001a\u0010\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\t\u0018\u00010\u0008X\u0082\u0004\u00a2\u0006\u0002\n\u0000R@\u0010\u000c\u001a4\u0012\u0013\u0012\u00110\u0002\u00a2\u0006\u000c\u0008\u000e\u0012\u0008\u0008\u000f\u0012\u0004\u0008\u0008(\u0010\u0012\u0013\u0012\u00110\u0011\u00a2\u0006\u000c\u0008\u000e\u0012\u0008\u0008\u000f\u0012\u0004\u0008\u0008(\u0012\u0012\u0004\u0012\u00020\u000b\u0018\u00010\rX\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u001c\u0010\n\u001a\u0010\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020\u000b\u0018\u00010\u0008X\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u000e\u0010\u0003\u001a\u00020\u0002X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u00a8\u0006\u001d"
}
d2 = {
"Lkotlin/io/FileTreeWalk;",
"Lkotlin/sequences/Sequence;",
"Ljava/io/File;",
"start",
"direction",
"Lkotlin/io/FileWalkDirection;",
"(Ljava/io/File;Lkotlin/io/FileWalkDirection;)V",
"onEnter",
"Lkotlin/Function1;",
"",
"onLeave",
"",
"onFail",
"Lkotlin/Function2;",
"Lkotlin/ParameterName;",
"name",
"f",
"Ljava/io/IOException;",
"e",
"maxDepth",
"",
"(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V",
"iterator",
"",
"depth",
"function",
"DirectoryState",
"FileTreeWalkIterator",
"WalkState",
"kotlin-stdlib"
}
k = 0x1
mv = {
0x1,
0x9,
0x0
}
xi = 0x30
.end annotation
# instance fields
.field private final direction:Lkotlin/io/FileWalkDirection;
.field private final maxDepth:I
.field private final onEnter:Lkotlin/jvm/functions/Function1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function1<",
"Ljava/io/File;",
"Ljava/lang/Boolean;",
">;"
}
.end annotation
.end field
.field private final onFail:Lkotlin/jvm/functions/Function2;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function2<",
"Ljava/io/File;",
"Ljava/io/IOException;",
"Lkotlin/Unit;",
">;"
}
.end annotation
.end field
.field private final onLeave:Lkotlin/jvm/functions/Function1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/functions/Function1<",
"Ljava/io/File;",
"Lkotlin/Unit;",
">;"
}
.end annotation
.end field
.field private final start:Ljava/io/File;
# direct methods
.method public constructor <init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;)V
.locals 10
const-string v0, "start"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "direction"
invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
const/4 v4, 0x0
const/4 v5, 0x0
const/4 v6, 0x0
const/4 v7, 0x0
const/16 v8, 0x20
const/4 v9, 0x0
move-object v1, p0
move-object v2, p1
move-object v3, p2
.line 46
invoke-direct/range {v1 .. v9}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
return-void
.end method
.method public synthetic constructor <init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
and-int/lit8 p3, p3, 0x2
if-eqz p3, :cond_0
.line 46
sget-object p2, Lkotlin/io/FileWalkDirection;->TOP_DOWN:Lkotlin/io/FileWalkDirection;
:cond_0
invoke-direct {p0, p1, p2}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;)V
return-void
.end method
.method private constructor <init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/File;",
"Lkotlin/io/FileWalkDirection;",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/io/File;",
"Ljava/lang/Boolean;",
">;",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/io/File;",
"Lkotlin/Unit;",
">;",
"Lkotlin/jvm/functions/Function2<",
"-",
"Ljava/io/File;",
"-",
"Ljava/io/IOException;",
"Lkotlin/Unit;",
">;I)V"
}
.end annotation
.line 37
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lkotlin/io/FileTreeWalk;->start:Ljava/io/File;
iput-object p2, p0, Lkotlin/io/FileTreeWalk;->direction:Lkotlin/io/FileWalkDirection;
iput-object p3, p0, Lkotlin/io/FileTreeWalk;->onEnter:Lkotlin/jvm/functions/Function1;
iput-object p4, p0, Lkotlin/io/FileTreeWalk;->onLeave:Lkotlin/jvm/functions/Function1;
iput-object p5, p0, Lkotlin/io/FileTreeWalk;->onFail:Lkotlin/jvm/functions/Function2;
iput p6, p0, Lkotlin/io/FileTreeWalk;->maxDepth:I
return-void
.end method
.method synthetic constructor <init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 7
and-int/lit8 p8, p7, 0x2
if-eqz p8, :cond_0
.line 39
sget-object p2, Lkotlin/io/FileWalkDirection;->TOP_DOWN:Lkotlin/io/FileWalkDirection;
:cond_0
move-object v2, p2
and-int/lit8 p2, p7, 0x20
if-eqz p2, :cond_1
const p6, 0x7fffffff
:cond_1
move v6, p6
move-object v0, p0
move-object v1, p1
move-object v3, p3
move-object v4, p4
move-object v5, p5
.line 37
invoke-direct/range {v0 .. v6}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V
return-void
.end method
.method public static final synthetic access$getDirection$p(Lkotlin/io/FileTreeWalk;)Lkotlin/io/FileWalkDirection;
.locals 0
.line 37
iget-object p0, p0, Lkotlin/io/FileTreeWalk;->direction:Lkotlin/io/FileWalkDirection;
return-object p0
.end method
.method public static final synthetic access$getMaxDepth$p(Lkotlin/io/FileTreeWalk;)I
.locals 0
.line 37
iget p0, p0, Lkotlin/io/FileTreeWalk;->maxDepth:I
return p0
.end method
.method public static final synthetic access$getOnEnter$p(Lkotlin/io/FileTreeWalk;)Lkotlin/jvm/functions/Function1;
.locals 0
.line 37
iget-object p0, p0, Lkotlin/io/FileTreeWalk;->onEnter:Lkotlin/jvm/functions/Function1;
return-object p0
.end method
.method public static final synthetic access$getOnFail$p(Lkotlin/io/FileTreeWalk;)Lkotlin/jvm/functions/Function2;
.locals 0
.line 37
iget-object p0, p0, Lkotlin/io/FileTreeWalk;->onFail:Lkotlin/jvm/functions/Function2;
return-object p0
.end method
.method public static final synthetic access$getOnLeave$p(Lkotlin/io/FileTreeWalk;)Lkotlin/jvm/functions/Function1;
.locals 0
.line 37
iget-object p0, p0, Lkotlin/io/FileTreeWalk;->onLeave:Lkotlin/jvm/functions/Function1;
return-object p0
.end method
.method public static final synthetic access$getStart$p(Lkotlin/io/FileTreeWalk;)Ljava/io/File;
.locals 0
.line 37
iget-object p0, p0, Lkotlin/io/FileTreeWalk;->start:Ljava/io/File;
return-object p0
.end method
# virtual methods
.method public iterator()Ljava/util/Iterator;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Iterator<",
"Ljava/io/File;",
">;"
}
.end annotation
.line 50
new-instance v0, Lkotlin/io/FileTreeWalk$FileTreeWalkIterator;
invoke-direct {v0, p0}, Lkotlin/io/FileTreeWalk$FileTreeWalkIterator;-><init>(Lkotlin/io/FileTreeWalk;)V
check-cast v0, Ljava/util/Iterator;
return-object v0
.end method
.method public final maxDepth(I)Lkotlin/io/FileTreeWalk;
.locals 8
if-lez p1, :cond_0
.line 250
new-instance v7, Lkotlin/io/FileTreeWalk;
iget-object v1, p0, Lkotlin/io/FileTreeWalk;->start:Ljava/io/File;
iget-object v2, p0, Lkotlin/io/FileTreeWalk;->direction:Lkotlin/io/FileWalkDirection;
iget-object v3, p0, Lkotlin/io/FileTreeWalk;->onEnter:Lkotlin/jvm/functions/Function1;
iget-object v4, p0, Lkotlin/io/FileTreeWalk;->onLeave:Lkotlin/jvm/functions/Function1;
iget-object v5, p0, Lkotlin/io/FileTreeWalk;->onFail:Lkotlin/jvm/functions/Function2;
move-object v0, v7
move v6, p1
invoke-direct/range {v0 .. v6}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V
return-object v7
.line 249
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "depth must be positive, but was "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object p1
const/16 v0, 0x2e
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public final onEnter(Lkotlin/jvm/functions/Function1;)Lkotlin/io/FileTreeWalk;
.locals 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/io/File;",
"Ljava/lang/Boolean;",
">;)",
"Lkotlin/io/FileTreeWalk;"
}
.end annotation
const-string v0, "function"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 220
new-instance v0, Lkotlin/io/FileTreeWalk;
iget-object v2, p0, Lkotlin/io/FileTreeWalk;->start:Ljava/io/File;
iget-object v3, p0, Lkotlin/io/FileTreeWalk;->direction:Lkotlin/io/FileWalkDirection;
iget-object v5, p0, Lkotlin/io/FileTreeWalk;->onLeave:Lkotlin/jvm/functions/Function1;
iget-object v6, p0, Lkotlin/io/FileTreeWalk;->onFail:Lkotlin/jvm/functions/Function2;
iget v7, p0, Lkotlin/io/FileTreeWalk;->maxDepth:I
move-object v1, v0
move-object v4, p1
invoke-direct/range {v1 .. v7}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V
return-object v0
.end method
.method public final onFail(Lkotlin/jvm/functions/Function2;)Lkotlin/io/FileTreeWalk;
.locals 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/jvm/functions/Function2<",
"-",
"Ljava/io/File;",
"-",
"Ljava/io/IOException;",
"Lkotlin/Unit;",
">;)",
"Lkotlin/io/FileTreeWalk;"
}
.end annotation
const-string v0, "function"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 236
new-instance v0, Lkotlin/io/FileTreeWalk;
iget-object v2, p0, Lkotlin/io/FileTreeWalk;->start:Ljava/io/File;
iget-object v3, p0, Lkotlin/io/FileTreeWalk;->direction:Lkotlin/io/FileWalkDirection;
iget-object v4, p0, Lkotlin/io/FileTreeWalk;->onEnter:Lkotlin/jvm/functions/Function1;
iget-object v5, p0, Lkotlin/io/FileTreeWalk;->onLeave:Lkotlin/jvm/functions/Function1;
iget v7, p0, Lkotlin/io/FileTreeWalk;->maxDepth:I
move-object v1, v0
move-object v6, p1
invoke-direct/range {v1 .. v7}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V
return-object v0
.end method
.method public final onLeave(Lkotlin/jvm/functions/Function1;)Lkotlin/io/FileTreeWalk;
.locals 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lkotlin/jvm/functions/Function1<",
"-",
"Ljava/io/File;",
"Lkotlin/Unit;",
">;)",
"Lkotlin/io/FileTreeWalk;"
}
.end annotation
const-string v0, "function"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 227
new-instance v0, Lkotlin/io/FileTreeWalk;
iget-object v2, p0, Lkotlin/io/FileTreeWalk;->start:Ljava/io/File;
iget-object v3, p0, Lkotlin/io/FileTreeWalk;->direction:Lkotlin/io/FileWalkDirection;
iget-object v4, p0, Lkotlin/io/FileTreeWalk;->onEnter:Lkotlin/jvm/functions/Function1;
iget-object v6, p0, Lkotlin/io/FileTreeWalk;->onFail:Lkotlin/jvm/functions/Function2;
iget v7, p0, Lkotlin/io/FileTreeWalk;->maxDepth:I
move-object v1, v0
move-object v5, p1
invoke-direct/range {v1 .. v7}, Lkotlin/io/FileTreeWalk;-><init>(Ljava/io/File;Lkotlin/io/FileWalkDirection;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;I)V
return-object v0
.end method