mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2024-12-24 16:12:29 -06:00
59 lines
2.7 KiB
Java
59 lines
2.7 KiB
Java
package kotlin.io;
|
|
|
|
import androidx.exifinterface.media.ExifInterface;
|
|
import java.io.Closeable;
|
|
import kotlin.Metadata;
|
|
import kotlin.internal.PlatformImplementationsKt;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.InlineMarker;
|
|
import kotlin.jvm.internal.Intrinsics;
|
|
|
|
/* compiled from: Closeable.kt */
|
|
@Metadata(d1 = {"\u0000\u001c\n\u0000\n\u0002\u0010\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0003\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\u0002\u001a\u0018\u0010\u0000\u001a\u00020\u0001*\u0004\u0018\u00010\u00022\b\u0010\u0003\u001a\u0004\u0018\u00010\u0004H\u0001\u001aH\u0010\u0005\u001a\u0002H\u0006\"\n\b\u0000\u0010\u0007*\u0004\u0018\u00010\u0002\"\u0004\b\u0001\u0010\u0006*\u0002H\u00072\u0012\u0010\b\u001a\u000e\u0012\u0004\u0012\u0002H\u0007\u0012\u0004\u0012\u0002H\u00060\tH\u0087\bø\u0001\u0000\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0001 \u0001¢\u0006\u0002\u0010\n\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u000b"}, d2 = {"closeFinally", "", "Ljava/io/Closeable;", "cause", "", "use", "R", ExifInterface.GPS_DIRECTION_TRUE, "block", "Lkotlin/Function1;", "(Ljava/io/Closeable;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;", "kotlin-stdlib"}, k = 2, mv = {1, 9, 0}, xi = 48)
|
|
/* loaded from: classes3.dex */
|
|
public final class CloseableKt {
|
|
private static final <T extends Closeable, R> R use(T t, Function1<? super T, ? extends R> block) {
|
|
Intrinsics.checkNotNullParameter(block, "block");
|
|
try {
|
|
R invoke = block.invoke(t);
|
|
InlineMarker.finallyStart(1);
|
|
if (PlatformImplementationsKt.apiVersionIsAtLeast(1, 1, 0)) {
|
|
closeFinally(t, null);
|
|
} else if (t != null) {
|
|
t.close();
|
|
}
|
|
InlineMarker.finallyEnd(1);
|
|
return invoke;
|
|
} catch (Throwable th) {
|
|
try {
|
|
throw th;
|
|
} catch (Throwable th2) {
|
|
InlineMarker.finallyStart(1);
|
|
if (PlatformImplementationsKt.apiVersionIsAtLeast(1, 1, 0)) {
|
|
closeFinally(t, th);
|
|
} else if (t != null) {
|
|
try {
|
|
t.close();
|
|
} catch (Throwable unused) {
|
|
}
|
|
}
|
|
InlineMarker.finallyEnd(1);
|
|
throw th2;
|
|
}
|
|
}
|
|
}
|
|
|
|
public static final void closeFinally(Closeable closeable, Throwable th) {
|
|
if (closeable != null) {
|
|
if (th == null) {
|
|
closeable.close();
|
|
return;
|
|
}
|
|
try {
|
|
closeable.close();
|
|
} catch (Throwable th2) {
|
|
kotlin.ExceptionsKt.addSuppressed(th, th2);
|
|
}
|
|
}
|
|
}
|
|
}
|