ConsoleKt.smali
.class public final Lkotlin/io/ConsoleKt;
.super Ljava/lang/Object;
.source "Console.kt"
# annotations
.annotation system Ldalvik/annotation/SourceDebugExtension;
value = "SMAP\nConsole.kt\nKotlin\n*S Kotlin\n*F\n+ 1 Console.kt\nkotlin/io/ConsoleKt\n*L\n1#1,228:1\n*E\n"
.end annotation
.annotation runtime Lkotlin/Metadata;
bv = {
0x1,
0x0,
0x3
}
d1 = {
"\u0000n\n\u0000\n\u0002\u0010\u0008\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0005\n\u0002\u0010\u0002\n\u0000\n\u0002\u0010\u0000\n\u0002\u0010\u000b\n\u0002\u0010\u0005\n\u0002\u0010\u000c\n\u0002\u0010\u0019\n\u0002\u0010\u0006\n\u0002\u0010\u0007\n\u0002\u0010\t\n\u0002\u0010\n\n\u0002\u0008\u0002\n\u0002\u0010\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0003\u001a\u0013\u0010\t\u001a\u00020\n2\u0008\u0010\u000b\u001a\u0004\u0018\u00010\u000cH\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\rH\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u000eH\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u000fH\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0010H\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0011H\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0012H\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0001H\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0013H\u0087\u0008\u001a\u0011\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0014H\u0087\u0008\u001a\t\u0010\u0015\u001a\u00020\nH\u0087\u0008\u001a\u0013\u0010\u0015\u001a\u00020\n2\u0008\u0010\u000b\u001a\u0004\u0018\u00010\u000cH\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\rH\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u000eH\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u000fH\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0010H\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0011H\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0012H\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0001H\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0013H\u0087\u0008\u001a\u0011\u0010\u0015\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\u0014H\u0087\u0008\u001a\u0008\u0010\u0016\u001a\u0004\u0018\u00010\u0017\u001a\u001a\u0010\u0016\u001a\u0004\u0018\u00010\u00172\u0006\u0010\u0018\u001a\u00020\u00192\u0006\u0010\u0003\u001a\u00020\u0004H\u0000\u001a\u000c\u0010\u001a\u001a\u00020\r*\u00020\u001bH\u0002\u001a\u000c\u0010\u001c\u001a\u00020\n*\u00020\u001dH\u0002\u001a\u0018\u0010\u001e\u001a\u00020\n*\u00020\u001b2\n\u0010\u001f\u001a\u00060 j\u0002`!H\u0002\u001a$\u0010\"\u001a\u00020\r*\u00020\u00042\u0006\u0010#\u001a\u00020$2\u0006\u0010%\u001a\u00020\u001b2\u0006\u0010&\u001a\u00020\rH\u0002\"\u000e\u0010\u0000\u001a\u00020\u0001X\u0082T\u00a2\u0006\u0002\n\u0000\"\u000e\u0010\u0002\u001a\u00020\u0001X\u0082T\u00a2\u0006\u0002\n\u0000\"\u001b\u0010\u0003\u001a\u00020\u00048BX\u0082\u0084\u0002\u00a2\u0006\u000c\n\u0004\u0008\u0007\u0010\u0008\u001a\u0004\u0008\u0005\u0010\u0006\u00a8\u0006\'"
}
d2 = {
"BUFFER_SIZE",
"",
"LINE_SEPARATOR_MAX_LENGTH",
"decoder",
"Ljava/nio/charset/CharsetDecoder;",
"getDecoder",
"()Ljava/nio/charset/CharsetDecoder;",
"decoder$delegate",
"Lkotlin/Lazy;",
"print",
"",
"message",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"println",
"readLine",
"",
"inputStream",
"Ljava/io/InputStream;",
"endsWithLineSeparator",
"Ljava/nio/CharBuffer;",
"flipBack",
"Ljava/nio/Buffer;",
"offloadPrefixTo",
"builder",
"Ljava/lang/StringBuilder;",
"Lkotlin/text/StringBuilder;",
"tryDecode",
"byteBuffer",
"Ljava/nio/ByteBuffer;",
"charBuffer",
"isEndOfStream",
"kotlin-stdlib"
}
k = 0x2
mv = {
0x1,
0x1,
0xf
}
.end annotation
# static fields
.field static final synthetic $$delegatedProperties:[Lkotlin/reflect/KProperty;
.field private static final BUFFER_SIZE:I = 0x20
.field private static final LINE_SEPARATOR_MAX_LENGTH:I = 0x2
.field private static final decoder$delegate:Lkotlin/Lazy;
# direct methods
.method static constructor <clinit>()V
.registers 5
const/4 v0, 0x1
new-array v0, v0, [Lkotlin/reflect/KProperty;
new-instance v1, Lkotlin/jvm/internal/PropertyReference0Impl;
const-class v2, Lkotlin/io/ConsoleKt;
const-string v3, "kotlin-stdlib"
invoke-static {v2, v3}, Lkotlin/jvm/internal/Reflection;->getOrCreateKotlinPackage(Ljava/lang/Class;Ljava/lang/String;)Lkotlin/reflect/KDeclarationContainer;
move-result-object v2
const-string v3, "decoder"
const-string v4, "getDecoder()Ljava/nio/charset/CharsetDecoder;"
invoke-direct {v1, v2, v3, v4}, Lkotlin/jvm/internal/PropertyReference0Impl;-><init>(Lkotlin/reflect/KDeclarationContainer;Ljava/lang/String;Ljava/lang/String;)V
invoke-static {v1}, Lkotlin/jvm/internal/Reflection;->property0(Lkotlin/jvm/internal/PropertyReference0;)Lkotlin/reflect/KProperty0;
move-result-object v1
check-cast v1, Lkotlin/reflect/KProperty;
const/4 v2, 0x0
aput-object v1, v0, v2
sput-object v0, Lkotlin/io/ConsoleKt;->$$delegatedProperties:[Lkotlin/reflect/KProperty;
.line 146
sget-object v0, Lkotlin/io/ConsoleKt$decoder$2;->INSTANCE:Lkotlin/io/ConsoleKt$decoder$2;
check-cast v0, Lkotlin/jvm/functions/Function0;
invoke-static {v0}, Lkotlin/LazyKt;->lazy(Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;
move-result-object v0
sput-object v0, Lkotlin/io/ConsoleKt;->decoder$delegate:Lkotlin/Lazy;
return-void
.end method
.method private static final endsWithLineSeparator(Ljava/nio/CharBuffer;)Z
.registers 4
.param p0, "$this$endsWithLineSeparator" # Ljava/nio/CharBuffer;
.line 211
invoke-virtual {p0}, Ljava/nio/CharBuffer;->position()I
move-result v0
.line 212
.local v0, "p":I
if-lez v0, :cond_12
add-int/lit8 v1, v0, -0x1
invoke-virtual {p0, v1}, Ljava/nio/CharBuffer;->get(I)C
move-result v1
const/16 v2, 0xa
if-ne v1, v2, :cond_12
const/4 v1, 0x1
goto :goto_13
:cond_12
const/4 v1, 0x0
:goto_13
return v1
.end method
.method private static final flipBack(Ljava/nio/Buffer;)V
.registers 2
.param p0, "$this$flipBack" # Ljava/nio/Buffer;
.line 216
invoke-virtual {p0}, Ljava/nio/Buffer;->limit()I
move-result v0
invoke-virtual {p0, v0}, Ljava/nio/Buffer;->position(I)Ljava/nio/Buffer;
.line 217
invoke-virtual {p0}, Ljava/nio/Buffer;->capacity()I
move-result v0
invoke-virtual {p0, v0}, Ljava/nio/Buffer;->limit(I)Ljava/nio/Buffer;
.line 218
return-void
.end method
.method private static final getDecoder()Ljava/nio/charset/CharsetDecoder;
.registers 3
sget-object v0, Lkotlin/io/ConsoleKt;->decoder$delegate:Lkotlin/Lazy;
sget-object v1, Lkotlin/io/ConsoleKt;->$$delegatedProperties:[Lkotlin/reflect/KProperty;
const/4 v2, 0x0
aget-object v1, v1, v2
invoke-interface {v0}, Lkotlin/Lazy;->getValue()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/nio/charset/CharsetDecoder;
return-object v0
.end method
.method private static final offloadPrefixTo(Ljava/nio/CharBuffer;Ljava/lang/StringBuilder;)V
.registers 7
.param p0, "$this$offloadPrefixTo" # Ljava/nio/CharBuffer;
.param p1, "builder" # Ljava/lang/StringBuilder;
.line 222
invoke-virtual {p0}, Ljava/nio/CharBuffer;->flip()Ljava/nio/Buffer;
.line 223
invoke-virtual {p0}, Ljava/nio/CharBuffer;->limit()I
move-result v0
add-int/lit8 v0, v0, -0x1
const/4 v1, 0x0
:goto_a
if-ge v1, v0, :cond_19
move v2, v1
.local v2, "it":I
const/4 v3, 0x0
.line 224
.local v3, "$i$a$-repeat-ConsoleKt$offloadPrefixTo$1":I
invoke-virtual {p0}, Ljava/nio/CharBuffer;->get()C
move-result v4
invoke-virtual {p1, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 225
.end local v2 # "it":I
.end local v3 # "$i$a$-repeat-ConsoleKt$offloadPrefixTo$1":I
nop
.line 223
add-int/lit8 v1, v1, 0x1
goto :goto_a
.line 226
:cond_19
invoke-virtual {p0}, Ljava/nio/CharBuffer;->compact()Ljava/nio/CharBuffer;
.line 227
return-void
.end method
.method private static final print(B)V
.registers 4
.param p0, "message" # B
const/4 v0, 0x0
.line 38
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-static {p0}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/io/PrintStream;->print(Ljava/lang/Object;)V
.line 39
return-void
.end method
.method private static final print(C)V
.registers 3
.param p0, "message" # C
const/4 v0, 0x0
.line 50
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print(C)V
.line 51
return-void
.end method
.method private static final print(D)V
.registers 4
.param p0, "message" # D
const/4 v0, 0x0
.line 68
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0, p1}, Ljava/io/PrintStream;->print(D)V
.line 69
return-void
.end method
.method private static final print(F)V
.registers 3
.param p0, "message" # F
const/4 v0, 0x0
.line 62
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print(F)V
.line 63
return-void
.end method
.method private static final print(I)V
.registers 3
.param p0, "message" # I
const/4 v0, 0x0
.line 26
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print(I)V
.line 27
return-void
.end method
.method private static final print(J)V
.registers 4
.param p0, "message" # J
const/4 v0, 0x0
.line 32
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0, p1}, Ljava/io/PrintStream;->print(J)V
.line 33
return-void
.end method
.method private static final print(Ljava/lang/Object;)V
.registers 3
.param p0, "message" # Ljava/lang/Object;
const/4 v0, 0x0
.line 20
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print(Ljava/lang/Object;)V
.line 21
return-void
.end method
.method private static final print(S)V
.registers 4
.param p0, "message" # S
const/4 v0, 0x0
.line 44
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-static {p0}, Ljava/lang/Short;->valueOf(S)Ljava/lang/Short;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/io/PrintStream;->print(Ljava/lang/Object;)V
.line 45
return-void
.end method
.method private static final print(Z)V
.registers 3
.param p0, "message" # Z
const/4 v0, 0x0
.line 56
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print(Z)V
.line 57
return-void
.end method
.method private static final print([C)V
.registers 3
.param p0, "message" # [C
const/4 v0, 0x0
.line 74
.local v0, "$i$f$print":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print([C)V
.line 75
return-void
.end method
.method private static final println()V
.registers 2
const/4 v0, 0x0
.line 140
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1}, Ljava/io/PrintStream;->println()V
.line 141
return-void
.end method
.method private static final println(B)V
.registers 4
.param p0, "message" # B
const/4 v0, 0x0
.line 98
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-static {p0}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
.line 99
return-void
.end method
.method private static final println(C)V
.registers 3
.param p0, "message" # C
const/4 v0, 0x0
.line 110
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(C)V
.line 111
return-void
.end method
.method private static final println(D)V
.registers 4
.param p0, "message" # D
const/4 v0, 0x0
.line 128
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0, p1}, Ljava/io/PrintStream;->println(D)V
.line 129
return-void
.end method
.method private static final println(F)V
.registers 3
.param p0, "message" # F
const/4 v0, 0x0
.line 122
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(F)V
.line 123
return-void
.end method
.method private static final println(I)V
.registers 3
.param p0, "message" # I
const/4 v0, 0x0
.line 86
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(I)V
.line 87
return-void
.end method
.method private static final println(J)V
.registers 4
.param p0, "message" # J
const/4 v0, 0x0
.line 92
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0, p1}, Ljava/io/PrintStream;->println(J)V
.line 93
return-void
.end method
.method private static final println(Ljava/lang/Object;)V
.registers 3
.param p0, "message" # Ljava/lang/Object;
const/4 v0, 0x0
.line 80
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
.line 81
return-void
.end method
.method private static final println(S)V
.registers 4
.param p0, "message" # S
const/4 v0, 0x0
.line 104
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-static {p0}, Ljava/lang/Short;->valueOf(S)Ljava/lang/Short;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
.line 105
return-void
.end method
.method private static final println(Z)V
.registers 3
.param p0, "message" # Z
const/4 v0, 0x0
.line 116
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Z)V
.line 117
return-void
.end method
.method private static final println([C)V
.registers 3
.param p0, "message" # [C
const/4 v0, 0x0
.line 134
.local v0, "$i$f$println":I
sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream;
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println([C)V
.line 135
return-void
.end method
.method public static final readLine()Ljava/lang/String;
.registers 2
.line 153
sget-object v0, Ljava/lang/System;->in:Ljava/io/InputStream;
const-string v1, "System.`in`"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {}, Lkotlin/io/ConsoleKt;->getDecoder()Ljava/nio/charset/CharsetDecoder;
move-result-object v1
invoke-static {v0, v1}, Lkotlin/io/ConsoleKt;->readLine(Ljava/io/InputStream;Ljava/nio/charset/CharsetDecoder;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static final readLine(Ljava/io/InputStream;Ljava/nio/charset/CharsetDecoder;)Ljava/lang/String;
.registers 13
.param p0, "inputStream" # Ljava/io/InputStream;
.param p1, "decoder" # Ljava/nio/charset/CharsetDecoder;
const-string v0, "inputStream"
invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v0, "decoder"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkParameterIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
.line 156
invoke-virtual {p1}, Ljava/nio/charset/CharsetDecoder;->maxCharsPerByte()F
move-result v0
const/4 v1, 0x1
int-to-float v2, v1
const/4 v3, 0x0
cmpg-float v0, v0, v2
if-gtz v0, :cond_17
const/4 v0, 0x1
goto :goto_18
:cond_17
const/4 v0, 0x0
:goto_18
if-eqz v0, :cond_a4
.line 158
const/16 v0, 0x20
invoke-static {v0}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;
move-result-object v0
.line 159
.local v0, "byteBuffer":Ljava/nio/ByteBuffer;
const/4 v2, 0x4
invoke-static {v2}, Ljava/nio/CharBuffer;->allocate(I)Ljava/nio/CharBuffer;
move-result-object v2
.line 160
.local v2, "charBuffer":Ljava/nio/CharBuffer;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
.line 162
.local v4, "stringBuilder":Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/io/InputStream;->read()I
move-result v5
.line 163
.local v5, "read":I
const/4 v6, -0x1
if-ne v5, v6, :cond_33
const/4 v1, 0x0
return-object v1
.line 164
:cond_33
nop
.line 165
int-to-byte v7, v5
invoke-virtual {v0, v7}, Ljava/nio/ByteBuffer;->put(B)Ljava/nio/ByteBuffer;
.line 166
const-string v7, "byteBuffer"
invoke-static {v0, v7}, Lkotlin/jvm/internal/Intrinsics;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
const-string v7, "charBuffer"
invoke-static {v2, v7}, Lkotlin/jvm/internal/Intrinsics;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {p1, v0, v2, v3}, Lkotlin/io/ConsoleKt;->tryDecode(Ljava/nio/charset/CharsetDecoder;Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Z
move-result v7
if-eqz v7, :cond_59
.line 167
invoke-static {v2}, Lkotlin/io/ConsoleKt;->endsWithLineSeparator(Ljava/nio/CharBuffer;)Z
move-result v7
if-eqz v7, :cond_4f
.line 168
goto :goto_5f
.line 170
:cond_4f
invoke-virtual {v2}, Ljava/nio/CharBuffer;->remaining()I
move-result v7
const/4 v8, 0x2
if-ge v7, v8, :cond_59
.line 171
invoke-static {v2, v4}, Lkotlin/io/ConsoleKt;->offloadPrefixTo(Ljava/nio/CharBuffer;Ljava/lang/StringBuilder;)V
.line 174
:cond_59
invoke-virtual {p0}, Ljava/io/InputStream;->read()I
move-result v5
.line 175
if-ne v5, v6, :cond_33
.line 177
:goto_5f
move-object v6, p1
.local v6, "$this$with":Ljava/nio/charset/CharsetDecoder;
const/4 v7, 0x0
.line 178
.local v7, "$i$a$-with-ConsoleKt$readLine$2":I
invoke-static {v6, v0, v2, v1}, Lkotlin/io/ConsoleKt;->tryDecode(Ljava/nio/charset/CharsetDecoder;Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Z
.line 179
invoke-virtual {v6}, Ljava/nio/charset/CharsetDecoder;->reset()Ljava/nio/charset/CharsetDecoder;
.line 177
.end local v6 # "$this$with":Ljava/nio/charset/CharsetDecoder;
.end local v7 # "$i$a$-with-ConsoleKt$readLine$2":I
nop
.line 182
move-object v1, v2
.local v1, "$this$with":Ljava/nio/CharBuffer;
const/4 v6, 0x0
.line 183
.local v6, "$i$a$-with-ConsoleKt$readLine$3":I
invoke-virtual {v1}, Ljava/nio/CharBuffer;->position()I
move-result v7
.line 184
.local v7, "length":I
if-lez v7, :cond_8a
add-int/lit8 v8, v7, -0x1
invoke-virtual {v1, v8}, Ljava/nio/CharBuffer;->get(I)C
move-result v8
const/16 v9, 0xa
if-ne v8, v9, :cond_8a
.line 185
add-int/lit8 v7, v7, -0x1
.line 186
if-lez v7, :cond_8a
add-int/lit8 v8, v7, -0x1
invoke-virtual {v1, v8}, Ljava/nio/CharBuffer;->get(I)C
move-result v8
const/16 v9, 0xd
if-ne v8, v9, :cond_8a
.line 187
add-int/lit8 v7, v7, -0x1
.line 190
:cond_8a
invoke-virtual {v1}, Ljava/nio/CharBuffer;->flip()Ljava/nio/Buffer;
.line 191
nop
:goto_8e
if-ge v3, v7, :cond_9d
move v8, v3
.local v8, "it":I
const/4 v9, 0x0
.line 192
.local v9, "$i$a$-repeat-ConsoleKt$readLine$3$1":I
invoke-virtual {v1}, Ljava/nio/CharBuffer;->get()C
move-result v10
invoke-virtual {v4, v10}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 193
.end local v8 # "it":I
.end local v9 # "$i$a$-repeat-ConsoleKt$readLine$3$1":I
nop
.line 191
add-int/lit8 v3, v3, 0x1
goto :goto_8e
.line 194
.end local v7 # "length":I
:cond_9d
nop
.line 182
.end local v1 # "$this$with":Ljava/nio/CharBuffer;
.end local v6 # "$i$a$-with-ConsoleKt$readLine$3":I
nop
.line 196
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
return-object v1
.line 156
.end local v0 # "byteBuffer":Ljava/nio/ByteBuffer;
.end local v2 # "charBuffer":Ljava/nio/CharBuffer;
.end local v4 # "stringBuilder":Ljava/lang/StringBuilder;
.end local v5 # "read":I
:cond_a4
const/4 v0, 0x0
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Encodings with multiple chars per byte are not supported"
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
check-cast v0, Ljava/lang/Throwable;
goto :goto_b4
:goto_b3
throw v0
:goto_b4
goto :goto_b3
.end method
.method private static final tryDecode(Ljava/nio/charset/CharsetDecoder;Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Z
.registers 9
.param p0, "$this$tryDecode" # Ljava/nio/charset/CharsetDecoder;
.param p1, "byteBuffer" # Ljava/nio/ByteBuffer;
.param p2, "charBuffer" # Ljava/nio/CharBuffer;
.param p3, "isEndOfStream" # Z
.line 200
invoke-virtual {p2}, Ljava/nio/CharBuffer;->position()I
move-result v0
.line 201
.local v0, "positionBefore":I
invoke-virtual {p1}, Ljava/nio/ByteBuffer;->flip()Ljava/nio/Buffer;
.line 202
invoke-virtual {p0, p1, p2, p3}, Ljava/nio/charset/CharsetDecoder;->decode(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult;
move-result-object v1
.local v1, "$this$with":Ljava/nio/charset/CoderResult;
const/4 v2, 0x0
.line 203
.local v2, "$i$a$-with-ConsoleKt$tryDecode$1":I
invoke-virtual {v1}, Ljava/nio/charset/CoderResult;->isError()Z
move-result v3
if-eqz v3, :cond_15
invoke-virtual {v1}, Ljava/nio/charset/CoderResult;->throwException()V
.line 204
.end local v1 # "$this$with":Ljava/nio/charset/CoderResult;
.end local v2 # "$i$a$-with-ConsoleKt$tryDecode$1":I
:cond_15
nop
.line 202
nop
.line 205
invoke-virtual {p2}, Ljava/nio/CharBuffer;->position()I
move-result v1
if-le v1, v0, :cond_1f
const/4 v1, 0x1
goto :goto_20
:cond_1f
const/4 v1, 0x0
:goto_20
move v2, v1
.local v2, "isDecoded":Z
const/4 v3, 0x0
.line 206
.local v3, "$i$a$-also-ConsoleKt$tryDecode$2":I
if-eqz v2, :cond_28
invoke-virtual {p1}, Ljava/nio/ByteBuffer;->clear()Ljava/nio/Buffer;
goto :goto_2e
:cond_28
move-object v4, p1
check-cast v4, Ljava/nio/Buffer;
invoke-static {v4}, Lkotlin/io/ConsoleKt;->flipBack(Ljava/nio/Buffer;)V
.line 207
.end local v2 # "isDecoded":Z
.end local v3 # "$i$a$-also-ConsoleKt$tryDecode$2":I
:goto_2e
nop
.line 205
return v1
.end method