ADD week 5
This commit is contained in:
@ -0,0 +1,15 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import kotlin.Metadata;
|
||||
import kotlin.coroutines.Continuation;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: AndroidXConsumer.kt */
|
||||
@Metadata(d1 = {"\u0000\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u001a\u001c\u0010\u0000\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003¨\u0006\u0004"}, d2 = {"asAndroidXConsumer", "Landroidx/core/util/Consumer;", "T", "Lkotlin/coroutines/Continuation;", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class AndroidXConsumerKt {
|
||||
public static final <T> Consumer<T> asAndroidXConsumer(Continuation<? super T> continuation) {
|
||||
Intrinsics.checkNotNullParameter(continuation, "<this>");
|
||||
return new AndroidXContinuationConsumer(continuation);
|
||||
}
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Result;
|
||||
import kotlin.coroutines.Continuation;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: AndroidXConsumer.kt */
|
||||
@Metadata(d1 = {"\u0000&\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0010\u000e\n\u0000\b\u0002\u0018\u0000*\u0004\b\u0000\u0010\u00012\b\u0012\u0004\u0012\u0002H\u00010\u00022\u00020\u0003B\u0013\u0012\f\u0010\u0004\u001a\b\u0012\u0004\u0012\u00028\u00000\u0005¢\u0006\u0002\u0010\u0006J\u0015\u0010\u0007\u001a\u00020\b2\u0006\u0010\t\u001a\u00028\u0000H\u0016¢\u0006\u0002\u0010\nJ\b\u0010\u000b\u001a\u00020\fH\u0016R\u0014\u0010\u0004\u001a\b\u0012\u0004\u0012\u00028\u00000\u0005X\u0082\u0004¢\u0006\u0002\n\u0000¨\u0006\r"}, d2 = {"Landroidx/core/util/AndroidXContinuationConsumer;", "T", "Landroidx/core/util/Consumer;", "Ljava/util/concurrent/atomic/AtomicBoolean;", "continuation", "Lkotlin/coroutines/Continuation;", "(Lkotlin/coroutines/Continuation;)V", "accept", "", "value", "(Ljava/lang/Object;)V", "toString", "", "core-ktx_release"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
final class AndroidXContinuationConsumer<T> extends AtomicBoolean implements Consumer<T> {
|
||||
private final Continuation<T> continuation;
|
||||
|
||||
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
||||
/* JADX WARN: Multi-variable type inference failed */
|
||||
public AndroidXContinuationConsumer(Continuation<? super T> continuation) {
|
||||
super(false);
|
||||
Intrinsics.checkNotNullParameter(continuation, "continuation");
|
||||
this.continuation = continuation;
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Consumer
|
||||
public void accept(T value) {
|
||||
if (compareAndSet(false, true)) {
|
||||
Continuation<T> continuation = this.continuation;
|
||||
Result.Companion companion = Result.INSTANCE;
|
||||
continuation.resumeWith(Result.m288constructorimpl(value));
|
||||
}
|
||||
}
|
||||
|
||||
@Override // java.util.concurrent.atomic.AtomicBoolean
|
||||
public String toString() {
|
||||
return "ContinuationConsumer(resultAccepted = " + get() + ')';
|
||||
}
|
||||
}
|
135
02-Easy5/E5/sources/androidx/core/util/AtomicFile.java
Normal file
135
02-Easy5/E5/sources/androidx/core/util/AtomicFile.java
Normal file
@ -0,0 +1,135 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.Log;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class AtomicFile {
|
||||
private static final String LOG_TAG = "AtomicFile";
|
||||
private final File mBaseName;
|
||||
private final File mLegacyBackupName;
|
||||
private final File mNewName;
|
||||
|
||||
public File getBaseFile() {
|
||||
return this.mBaseName;
|
||||
}
|
||||
|
||||
public AtomicFile(File file) {
|
||||
this.mBaseName = file;
|
||||
this.mNewName = new File(file.getPath() + ".new");
|
||||
this.mLegacyBackupName = new File(file.getPath() + ".bak");
|
||||
}
|
||||
|
||||
public void delete() {
|
||||
this.mBaseName.delete();
|
||||
this.mNewName.delete();
|
||||
this.mLegacyBackupName.delete();
|
||||
}
|
||||
|
||||
public FileOutputStream startWrite() throws IOException {
|
||||
if (this.mLegacyBackupName.exists()) {
|
||||
rename(this.mLegacyBackupName, this.mBaseName);
|
||||
}
|
||||
try {
|
||||
return new FileOutputStream(this.mNewName);
|
||||
} catch (FileNotFoundException unused) {
|
||||
if (!this.mNewName.getParentFile().mkdirs()) {
|
||||
throw new IOException("Failed to create directory for " + this.mNewName);
|
||||
}
|
||||
try {
|
||||
return new FileOutputStream(this.mNewName);
|
||||
} catch (FileNotFoundException e) {
|
||||
throw new IOException("Failed to create new file " + this.mNewName, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void finishWrite(FileOutputStream fileOutputStream) {
|
||||
if (fileOutputStream == null) {
|
||||
return;
|
||||
}
|
||||
if (!sync(fileOutputStream)) {
|
||||
Log.e(LOG_TAG, "Failed to sync file output stream");
|
||||
}
|
||||
try {
|
||||
fileOutputStream.close();
|
||||
} catch (IOException e) {
|
||||
Log.e(LOG_TAG, "Failed to close file output stream", e);
|
||||
}
|
||||
rename(this.mNewName, this.mBaseName);
|
||||
}
|
||||
|
||||
public void failWrite(FileOutputStream fileOutputStream) {
|
||||
if (fileOutputStream == null) {
|
||||
return;
|
||||
}
|
||||
if (!sync(fileOutputStream)) {
|
||||
Log.e(LOG_TAG, "Failed to sync file output stream");
|
||||
}
|
||||
try {
|
||||
fileOutputStream.close();
|
||||
} catch (IOException e) {
|
||||
Log.e(LOG_TAG, "Failed to close file output stream", e);
|
||||
}
|
||||
if (this.mNewName.delete()) {
|
||||
return;
|
||||
}
|
||||
Log.e(LOG_TAG, "Failed to delete new file " + this.mNewName);
|
||||
}
|
||||
|
||||
public FileInputStream openRead() throws FileNotFoundException {
|
||||
if (this.mLegacyBackupName.exists()) {
|
||||
rename(this.mLegacyBackupName, this.mBaseName);
|
||||
}
|
||||
if (this.mNewName.exists() && this.mBaseName.exists() && !this.mNewName.delete()) {
|
||||
Log.e(LOG_TAG, "Failed to delete outdated new file " + this.mNewName);
|
||||
}
|
||||
return new FileInputStream(this.mBaseName);
|
||||
}
|
||||
|
||||
public byte[] readFully() throws IOException {
|
||||
FileInputStream openRead = openRead();
|
||||
try {
|
||||
byte[] bArr = new byte[openRead.available()];
|
||||
int i = 0;
|
||||
while (true) {
|
||||
int read = openRead.read(bArr, i, bArr.length - i);
|
||||
if (read <= 0) {
|
||||
return bArr;
|
||||
}
|
||||
i += read;
|
||||
int available = openRead.available();
|
||||
if (available > bArr.length - i) {
|
||||
byte[] bArr2 = new byte[available + i];
|
||||
System.arraycopy(bArr, 0, bArr2, 0, i);
|
||||
bArr = bArr2;
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
openRead.close();
|
||||
}
|
||||
}
|
||||
|
||||
private static boolean sync(FileOutputStream fileOutputStream) {
|
||||
try {
|
||||
fileOutputStream.getFD().sync();
|
||||
return true;
|
||||
} catch (IOException unused) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private static void rename(File file, File file2) {
|
||||
if (file2.isDirectory() && !file2.delete()) {
|
||||
Log.e(LOG_TAG, "Failed to delete file which is a directory " + file2);
|
||||
}
|
||||
if (file.renameTo(file2)) {
|
||||
return;
|
||||
}
|
||||
Log.e(LOG_TAG, "Failed to rename " + file + " to " + file2);
|
||||
}
|
||||
}
|
85
02-Easy5/E5/sources/androidx/core/util/AtomicFileKt.java
Normal file
85
02-Easy5/E5/sources/androidx/core/util/AtomicFileKt.java
Normal file
@ -0,0 +1,85 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import java.io.FileOutputStream;
|
||||
import java.nio.charset.Charset;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function1;
|
||||
import kotlin.jvm.internal.InlineMarker;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
import kotlin.text.Charsets;
|
||||
|
||||
/* compiled from: AtomicFile.kt */
|
||||
@Metadata(d1 = {"\u0000.\n\u0000\n\u0002\u0010\u0012\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0007\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u0087\b\u001a\u0016\u0010\u0003\u001a\u00020\u0004*\u00020\u00022\b\b\u0002\u0010\u0005\u001a\u00020\u0006H\u0007\u001a3\u0010\u0007\u001a\u00020\b*\u00020\u00022!\u0010\t\u001a\u001d\u0012\u0013\u0012\u00110\u000b¢\u0006\f\b\f\u0012\b\b\r\u0012\u0004\b\b(\u000e\u0012\u0004\u0012\u00020\b0\nH\u0087\bø\u0001\u0000\u001a\u0014\u0010\u000f\u001a\u00020\b*\u00020\u00022\u0006\u0010\u0010\u001a\u00020\u0001H\u0007\u001a\u001e\u0010\u0011\u001a\u00020\b*\u00020\u00022\u0006\u0010\u0012\u001a\u00020\u00042\b\b\u0002\u0010\u0005\u001a\u00020\u0006H\u0007\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u0013"}, d2 = {"readBytes", "", "Landroid/util/AtomicFile;", "readText", "", "charset", "Ljava/nio/charset/Charset;", "tryWrite", "", "block", "Lkotlin/Function1;", "Ljava/io/FileOutputStream;", "Lkotlin/ParameterName;", "name", "out", "writeBytes", "array", "writeText", "text", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class AtomicFileKt {
|
||||
public static final void tryWrite(android.util.AtomicFile atomicFile, Function1<? super FileOutputStream, Unit> block) {
|
||||
Intrinsics.checkNotNullParameter(atomicFile, "<this>");
|
||||
Intrinsics.checkNotNullParameter(block, "block");
|
||||
FileOutputStream stream = atomicFile.startWrite();
|
||||
try {
|
||||
Intrinsics.checkNotNullExpressionValue(stream, "stream");
|
||||
block.invoke(stream);
|
||||
InlineMarker.finallyStart(1);
|
||||
atomicFile.finishWrite(stream);
|
||||
InlineMarker.finallyEnd(1);
|
||||
} catch (Throwable th) {
|
||||
InlineMarker.finallyStart(1);
|
||||
atomicFile.failWrite(stream);
|
||||
InlineMarker.finallyEnd(1);
|
||||
throw th;
|
||||
}
|
||||
}
|
||||
|
||||
public static /* synthetic */ void writeText$default(android.util.AtomicFile atomicFile, String str, Charset charset, int i, Object obj) {
|
||||
if ((i & 2) != 0) {
|
||||
charset = Charsets.UTF_8;
|
||||
}
|
||||
writeText(atomicFile, str, charset);
|
||||
}
|
||||
|
||||
public static final void writeText(android.util.AtomicFile atomicFile, String text, Charset charset) {
|
||||
Intrinsics.checkNotNullParameter(atomicFile, "<this>");
|
||||
Intrinsics.checkNotNullParameter(text, "text");
|
||||
Intrinsics.checkNotNullParameter(charset, "charset");
|
||||
byte[] bytes = text.getBytes(charset);
|
||||
Intrinsics.checkNotNullExpressionValue(bytes, "this as java.lang.String).getBytes(charset)");
|
||||
writeBytes(atomicFile, bytes);
|
||||
}
|
||||
|
||||
public static final byte[] readBytes(android.util.AtomicFile atomicFile) {
|
||||
Intrinsics.checkNotNullParameter(atomicFile, "<this>");
|
||||
byte[] readFully = atomicFile.readFully();
|
||||
Intrinsics.checkNotNullExpressionValue(readFully, "readFully()");
|
||||
return readFully;
|
||||
}
|
||||
|
||||
public static /* synthetic */ String readText$default(android.util.AtomicFile atomicFile, Charset charset, int i, Object obj) {
|
||||
if ((i & 1) != 0) {
|
||||
charset = Charsets.UTF_8;
|
||||
}
|
||||
return readText(atomicFile, charset);
|
||||
}
|
||||
|
||||
public static final String readText(android.util.AtomicFile atomicFile, Charset charset) {
|
||||
Intrinsics.checkNotNullParameter(atomicFile, "<this>");
|
||||
Intrinsics.checkNotNullParameter(charset, "charset");
|
||||
byte[] readFully = atomicFile.readFully();
|
||||
Intrinsics.checkNotNullExpressionValue(readFully, "readFully()");
|
||||
return new String(readFully, charset);
|
||||
}
|
||||
|
||||
public static final void writeBytes(android.util.AtomicFile atomicFile, byte[] array) {
|
||||
Intrinsics.checkNotNullParameter(atomicFile, "<this>");
|
||||
Intrinsics.checkNotNullParameter(array, "array");
|
||||
FileOutputStream stream = atomicFile.startWrite();
|
||||
try {
|
||||
Intrinsics.checkNotNullExpressionValue(stream, "stream");
|
||||
stream.write(array);
|
||||
atomicFile.finishWrite(stream);
|
||||
} catch (Throwable th) {
|
||||
atomicFile.failWrite(stream);
|
||||
throw th;
|
||||
}
|
||||
}
|
||||
}
|
6
02-Easy5/E5/sources/androidx/core/util/Consumer.java
Normal file
6
02-Easy5/E5/sources/androidx/core/util/Consumer.java
Normal file
@ -0,0 +1,6 @@
|
||||
package androidx.core.util;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public interface Consumer<T> {
|
||||
void accept(T t);
|
||||
}
|
15
02-Easy5/E5/sources/androidx/core/util/ConsumerKt.java
Normal file
15
02-Easy5/E5/sources/androidx/core/util/ConsumerKt.java
Normal file
@ -0,0 +1,15 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import kotlin.Metadata;
|
||||
import kotlin.coroutines.Continuation;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Consumer.kt */
|
||||
@Metadata(d1 = {"\u0000\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u001a\u001e\u0010\u0000\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0007¨\u0006\u0004"}, d2 = {"asConsumer", "Ljava/util/function/Consumer;", "T", "Lkotlin/coroutines/Continuation;", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class ConsumerKt {
|
||||
public static final <T> java.util.function.Consumer<T> asConsumer(Continuation<? super T> continuation) {
|
||||
Intrinsics.checkNotNullParameter(continuation, "<this>");
|
||||
return HalfKt$$ExternalSyntheticApiModelOutline0.m150m((Object) new ContinuationConsumer(continuation));
|
||||
}
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Result;
|
||||
import kotlin.coroutines.Continuation;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Consumer.kt */
|
||||
@Metadata(d1 = {"\u0000&\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0010\u000e\n\u0000\b\u0003\u0018\u0000*\u0004\b\u0000\u0010\u00012\b\u0012\u0004\u0012\u0002H\u00010\u00022\u00020\u0003B\u0013\u0012\f\u0010\u0004\u001a\b\u0012\u0004\u0012\u00028\u00000\u0005¢\u0006\u0002\u0010\u0006J\u0015\u0010\u0007\u001a\u00020\b2\u0006\u0010\t\u001a\u00028\u0000H\u0016¢\u0006\u0002\u0010\nJ\b\u0010\u000b\u001a\u00020\fH\u0016R\u0014\u0010\u0004\u001a\b\u0012\u0004\u0012\u00028\u00000\u0005X\u0082\u0004¢\u0006\u0002\n\u0000¨\u0006\r"}, d2 = {"Landroidx/core/util/ContinuationConsumer;", "T", "Ljava/util/function/Consumer;", "Ljava/util/concurrent/atomic/AtomicBoolean;", "continuation", "Lkotlin/coroutines/Continuation;", "(Lkotlin/coroutines/Continuation;)V", "accept", "", "value", "(Ljava/lang/Object;)V", "toString", "", "core-ktx_release"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
final class ContinuationConsumer<T> extends AtomicBoolean implements java.util.function.Consumer<T> {
|
||||
private final Continuation<T> continuation;
|
||||
|
||||
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
||||
/* JADX WARN: Multi-variable type inference failed */
|
||||
public ContinuationConsumer(Continuation<? super T> continuation) {
|
||||
super(false);
|
||||
Intrinsics.checkNotNullParameter(continuation, "continuation");
|
||||
this.continuation = continuation;
|
||||
}
|
||||
|
||||
@Override // java.util.function.Consumer
|
||||
public void accept(T value) {
|
||||
if (compareAndSet(false, true)) {
|
||||
Continuation<T> continuation = this.continuation;
|
||||
Result.Companion companion = Result.INSTANCE;
|
||||
continuation.resumeWith(Result.m288constructorimpl(value));
|
||||
}
|
||||
}
|
||||
|
||||
@Override // java.util.concurrent.atomic.AtomicBoolean
|
||||
public String toString() {
|
||||
return "ContinuationConsumer(resultAccepted = " + get() + ')';
|
||||
}
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Result;
|
||||
import kotlin.Unit;
|
||||
import kotlin.coroutines.Continuation;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Runnable.kt */
|
||||
@Metadata(d1 = {"\u0000 \n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0010\u000e\n\u0000\b\u0002\u0018\u00002\u00020\u00012\u00020\u0002B\u0013\u0012\f\u0010\u0003\u001a\b\u0012\u0004\u0012\u00020\u00050\u0004¢\u0006\u0002\u0010\u0006J\b\u0010\u0007\u001a\u00020\u0005H\u0016J\b\u0010\b\u001a\u00020\tH\u0016R\u0014\u0010\u0003\u001a\b\u0012\u0004\u0012\u00020\u00050\u0004X\u0082\u0004¢\u0006\u0002\n\u0000¨\u0006\n"}, d2 = {"Landroidx/core/util/ContinuationRunnable;", "Ljava/lang/Runnable;", "Ljava/util/concurrent/atomic/AtomicBoolean;", "continuation", "Lkotlin/coroutines/Continuation;", "", "(Lkotlin/coroutines/Continuation;)V", "run", "toString", "", "core-ktx_release"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
final class ContinuationRunnable extends AtomicBoolean implements Runnable {
|
||||
private final Continuation<Unit> continuation;
|
||||
|
||||
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
||||
/* JADX WARN: Multi-variable type inference failed */
|
||||
public ContinuationRunnable(Continuation<? super Unit> continuation) {
|
||||
super(false);
|
||||
Intrinsics.checkNotNullParameter(continuation, "continuation");
|
||||
this.continuation = continuation;
|
||||
}
|
||||
|
||||
@Override // java.lang.Runnable
|
||||
public void run() {
|
||||
if (compareAndSet(false, true)) {
|
||||
Continuation<Unit> continuation = this.continuation;
|
||||
Result.Companion companion = Result.INSTANCE;
|
||||
continuation.resumeWith(Result.m288constructorimpl(Unit.INSTANCE));
|
||||
}
|
||||
}
|
||||
|
||||
@Override // java.util.concurrent.atomic.AtomicBoolean
|
||||
public String toString() {
|
||||
return "ContinuationRunnable(ran = " + get() + ')';
|
||||
}
|
||||
}
|
22
02-Easy5/E5/sources/androidx/core/util/DebugUtils.java
Normal file
22
02-Easy5/E5/sources/androidx/core/util/DebugUtils.java
Normal file
@ -0,0 +1,22 @@
|
||||
package androidx.core.util;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class DebugUtils {
|
||||
public static void buildShortClassTag(Object obj, StringBuilder sb) {
|
||||
int lastIndexOf;
|
||||
if (obj == null) {
|
||||
sb.append("null");
|
||||
return;
|
||||
}
|
||||
String simpleName = obj.getClass().getSimpleName();
|
||||
if ((simpleName == null || simpleName.length() <= 0) && (lastIndexOf = (simpleName = obj.getClass().getName()).lastIndexOf(46)) > 0) {
|
||||
simpleName = simpleName.substring(lastIndexOf + 1);
|
||||
}
|
||||
sb.append(simpleName);
|
||||
sb.append('{');
|
||||
sb.append(Integer.toHexString(System.identityHashCode(obj)));
|
||||
}
|
||||
|
||||
private DebugUtils() {
|
||||
}
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.content.ClipData;
|
||||
import android.graphics.Insets;
|
||||
import android.view.ContentInfo;
|
||||
import android.view.PointerIcon;
|
||||
import android.view.WindowInsets;
|
||||
import android.view.WindowInsetsAnimation;
|
||||
import android.view.WindowInsetsController;
|
||||
import android.view.animation.Interpolator;
|
||||
|
||||
/* compiled from: D8$$SyntheticClass */
|
||||
/* loaded from: classes.dex */
|
||||
public final /* synthetic */ class HalfKt$$ExternalSyntheticApiModelOutline0 {
|
||||
public static /* synthetic */ ContentInfo.Builder m(ClipData clipData, int i) {
|
||||
return new ContentInfo.Builder(clipData, i);
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* synthetic */ ContentInfo.Builder m140m(ContentInfo contentInfo) {
|
||||
return new ContentInfo.Builder(contentInfo);
|
||||
}
|
||||
|
||||
public static /* bridge */ /* synthetic */ ContentInfo m(Object obj) {
|
||||
return (ContentInfo) obj;
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* bridge */ /* synthetic */ PointerIcon m142m(Object obj) {
|
||||
return (PointerIcon) obj;
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* synthetic */ WindowInsets.Builder m143m() {
|
||||
return new WindowInsets.Builder();
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* synthetic */ WindowInsets.Builder m144m(WindowInsets windowInsets) {
|
||||
return new WindowInsets.Builder(windowInsets);
|
||||
}
|
||||
|
||||
public static /* synthetic */ WindowInsetsAnimation.Bounds m(Insets insets, Insets insets2) {
|
||||
return new WindowInsetsAnimation.Bounds(insets, insets2);
|
||||
}
|
||||
|
||||
public static /* synthetic */ WindowInsetsAnimation m(int i, Interpolator interpolator, long j) {
|
||||
return new WindowInsetsAnimation(i, interpolator, j);
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* bridge */ /* synthetic */ WindowInsetsAnimation m147m(Object obj) {
|
||||
return (WindowInsetsAnimation) obj;
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* bridge */ /* synthetic */ WindowInsetsController.OnControllableInsetsChangedListener m148m(Object obj) {
|
||||
return (WindowInsetsController.OnControllableInsetsChangedListener) obj;
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* bridge */ /* synthetic */ java.util.function.Consumer m150m(Object obj) {
|
||||
return (java.util.function.Consumer) obj;
|
||||
}
|
||||
|
||||
/* renamed from: m, reason: collision with other method in class */
|
||||
public static /* synthetic */ void m151m() {
|
||||
}
|
||||
|
||||
/* renamed from: m$1, reason: collision with other method in class */
|
||||
public static /* synthetic */ void m156m$1() {
|
||||
}
|
||||
}
|
39
02-Easy5/E5/sources/androidx/core/util/HalfKt.java
Normal file
39
02-Easy5/E5/sources/androidx/core/util/HalfKt.java
Normal file
@ -0,0 +1,39 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.Half;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Half.kt */
|
||||
@Metadata(d1 = {"\u0000\u0018\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u0006\n\u0002\u0010\u0007\n\u0002\u0010\n\n\u0002\u0010\u000e\n\u0000\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u0087\b\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0003H\u0087\b\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0004H\u0087\b\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0005H\u0087\b¨\u0006\u0006"}, d2 = {"toHalf", "Landroid/util/Half;", "", "", "", "", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class HalfKt {
|
||||
public static final Half toHalf(short s) {
|
||||
Half valueOf;
|
||||
valueOf = Half.valueOf(s);
|
||||
Intrinsics.checkNotNullExpressionValue(valueOf, "valueOf(this)");
|
||||
return valueOf;
|
||||
}
|
||||
|
||||
public static final Half toHalf(float f) {
|
||||
Half valueOf;
|
||||
valueOf = Half.valueOf(f);
|
||||
Intrinsics.checkNotNullExpressionValue(valueOf, "valueOf(this)");
|
||||
return valueOf;
|
||||
}
|
||||
|
||||
public static final Half toHalf(String str) {
|
||||
Half valueOf;
|
||||
Intrinsics.checkNotNullParameter(str, "<this>");
|
||||
valueOf = Half.valueOf(str);
|
||||
Intrinsics.checkNotNullExpressionValue(valueOf, "valueOf(this)");
|
||||
return valueOf;
|
||||
}
|
||||
|
||||
public static final Half toHalf(double d) {
|
||||
Half valueOf;
|
||||
valueOf = Half.valueOf((float) d);
|
||||
Intrinsics.checkNotNullExpressionValue(valueOf, "valueOf(this)");
|
||||
return valueOf;
|
||||
}
|
||||
}
|
45
02-Easy5/E5/sources/androidx/core/util/LogWriter.java
Normal file
45
02-Easy5/E5/sources/androidx/core/util/LogWriter.java
Normal file
@ -0,0 +1,45 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.Log;
|
||||
import java.io.Writer;
|
||||
|
||||
@Deprecated
|
||||
/* loaded from: classes.dex */
|
||||
public class LogWriter extends Writer {
|
||||
private StringBuilder mBuilder = new StringBuilder(128);
|
||||
private final String mTag;
|
||||
|
||||
public LogWriter(String str) {
|
||||
this.mTag = str;
|
||||
}
|
||||
|
||||
@Override // java.io.Writer, java.io.Closeable, java.lang.AutoCloseable
|
||||
public void close() {
|
||||
flushBuilder();
|
||||
}
|
||||
|
||||
@Override // java.io.Writer, java.io.Flushable
|
||||
public void flush() {
|
||||
flushBuilder();
|
||||
}
|
||||
|
||||
@Override // java.io.Writer
|
||||
public void write(char[] cArr, int i, int i2) {
|
||||
for (int i3 = 0; i3 < i2; i3++) {
|
||||
char c = cArr[i + i3];
|
||||
if (c == '\n') {
|
||||
flushBuilder();
|
||||
} else {
|
||||
this.mBuilder.append(c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void flushBuilder() {
|
||||
if (this.mBuilder.length() > 0) {
|
||||
Log.d(this.mTag, this.mBuilder.toString());
|
||||
StringBuilder sb = this.mBuilder;
|
||||
sb.delete(0, sb.length());
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,45 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.LongSparseArray;
|
||||
import java.util.Iterator;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.jvm.internal.markers.KMappedMarker;
|
||||
|
||||
/* JADX INFO: Add missing generic type declarations: [T] */
|
||||
/* compiled from: LongSparseArray.kt */
|
||||
@Metadata(d1 = {"\u0000\u001b\n\u0000\n\u0002\u0010(\n\u0000\n\u0002\u0010\b\n\u0002\b\u0005\n\u0002\u0010\u000b\n\u0002\b\u0004*\u0001\u0000\b\n\u0018\u00002\b\u0012\u0004\u0012\u00028\u00000\u0001J\t\u0010\b\u001a\u00020\tH\u0097\u0002J\u0016\u0010\n\u001a\n \u000b*\u0004\u0018\u00018\u00008\u0000H\u0097\u0002¢\u0006\u0002\u0010\fR\u001a\u0010\u0002\u001a\u00020\u0003X\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u0004\u0010\u0005\"\u0004\b\u0006\u0010\u0007¨\u0006\r"}, d2 = {"androidx/core/util/LongSparseArrayKt$valueIterator$1", "", "index", "", "getIndex", "()I", "setIndex", "(I)V", "hasNext", "", "next", "kotlin.jvm.PlatformType", "()Ljava/lang/Object;", "core-ktx_release"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class LongSparseArrayKt$valueIterator$1<T> implements Iterator<T>, KMappedMarker {
|
||||
final /* synthetic */ LongSparseArray<T> $this_valueIterator;
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public void remove() {
|
||||
throw new UnsupportedOperationException("Operation is not supported for read-only collection");
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
LongSparseArrayKt$valueIterator$1(LongSparseArray<T> longSparseArray) {
|
||||
this.$this_valueIterator = longSparseArray;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < this.$this_valueIterator.size();
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public T next() {
|
||||
LongSparseArray<T> longSparseArray = this.$this_valueIterator;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return longSparseArray.valueAt(i);
|
||||
}
|
||||
}
|
133
02-Easy5/E5/sources/androidx/core/util/LongSparseArrayKt.java
Normal file
133
02-Easy5/E5/sources/androidx/core/util/LongSparseArrayKt.java
Normal file
@ -0,0 +1,133 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.LongSparseArray;
|
||||
import java.util.Iterator;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.collections.LongIterator;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: LongSparseArray.kt */
|
||||
@Metadata(d1 = {"\u0000F\n\u0000\n\u0002\u0010\b\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\t\n\u0002\b\u0005\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\b\n\u0002\u0010(\n\u0000\u001a!\u0010\u0006\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\tH\u0087\n\u001a!\u0010\n\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\tH\u0087\b\u001a&\u0010\u000b\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\f\u001a\u0002H\u0002H\u0087\b¢\u0006\u0002\u0010\r\u001aT\u0010\u000e\u001a\u00020\u000f\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u000326\u0010\u0010\u001a2\u0012\u0013\u0012\u00110\t¢\u0006\f\b\u0012\u0012\b\b\u0013\u0012\u0004\b\b(\b\u0012\u0013\u0012\u0011H\u0002¢\u0006\f\b\u0012\u0012\b\b\u0013\u0012\u0004\b\b(\f\u0012\u0004\u0012\u00020\u000f0\u0011H\u0087\bø\u0001\u0000\u001a.\u0010\u0014\u001a\u0002H\u0002\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\t2\u0006\u0010\u0015\u001a\u0002H\u0002H\u0087\b¢\u0006\u0002\u0010\u0016\u001a7\u0010\u0017\u001a\u0002H\u0002\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\t2\f\u0010\u0015\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0018H\u0087\bø\u0001\u0000¢\u0006\u0002\u0010\u0019\u001a\u0019\u0010\u001a\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0087\b\u001a\u0019\u0010\u001b\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0087\b\u001a\u0018\u0010\u001c\u001a\u00020\u001d\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0007\u001a-\u0010\u001e\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0003\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\f\u0010\u001f\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0087\u0002\u001a&\u0010 \u001a\u00020\u000f\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\f\u0010\u001f\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0007\u001a-\u0010!\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\t2\u0006\u0010\f\u001a\u0002H\u0002H\u0007¢\u0006\u0002\u0010\"\u001a.\u0010#\u001a\u00020\u000f\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\t2\u0006\u0010\f\u001a\u0002H\u0002H\u0087\n¢\u0006\u0002\u0010$\u001a\u001e\u0010%\u001a\b\u0012\u0004\u0012\u0002H\u00020&\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0007\"\"\u0010\u0000\u001a\u00020\u0001\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00038Ç\u0002¢\u0006\u0006\u001a\u0004\b\u0004\u0010\u0005\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006'"}, d2 = {"size", "", "T", "Landroid/util/LongSparseArray;", "getSize", "(Landroid/util/LongSparseArray;)I", "contains", "", "key", "", "containsKey", "containsValue", "value", "(Landroid/util/LongSparseArray;Ljava/lang/Object;)Z", "forEach", "", "action", "Lkotlin/Function2;", "Lkotlin/ParameterName;", "name", "getOrDefault", "defaultValue", "(Landroid/util/LongSparseArray;JLjava/lang/Object;)Ljava/lang/Object;", "getOrElse", "Lkotlin/Function0;", "(Landroid/util/LongSparseArray;JLkotlin/jvm/functions/Function0;)Ljava/lang/Object;", "isEmpty", "isNotEmpty", "keyIterator", "Lkotlin/collections/LongIterator;", "plus", "other", "putAll", "remove", "(Landroid/util/LongSparseArray;JLjava/lang/Object;)Z", "set", "(Landroid/util/LongSparseArray;JLjava/lang/Object;)V", "valueIterator", "", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class LongSparseArrayKt {
|
||||
public static final <T> int getSize(LongSparseArray<T> longSparseArray) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return longSparseArray.size();
|
||||
}
|
||||
|
||||
public static final <T> boolean contains(LongSparseArray<T> longSparseArray, long j) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return longSparseArray.indexOfKey(j) >= 0;
|
||||
}
|
||||
|
||||
public static final <T> void set(LongSparseArray<T> longSparseArray, long j, T t) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
longSparseArray.put(j, t);
|
||||
}
|
||||
|
||||
public static final <T> LongSparseArray<T> plus(LongSparseArray<T> longSparseArray, LongSparseArray<T> other) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
LongSparseArray<T> longSparseArray2 = new LongSparseArray<>(longSparseArray.size() + other.size());
|
||||
putAll(longSparseArray2, longSparseArray);
|
||||
putAll(longSparseArray2, other);
|
||||
return longSparseArray2;
|
||||
}
|
||||
|
||||
public static final <T> boolean containsKey(LongSparseArray<T> longSparseArray, long j) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return longSparseArray.indexOfKey(j) >= 0;
|
||||
}
|
||||
|
||||
public static final <T> boolean containsValue(LongSparseArray<T> longSparseArray, T t) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return longSparseArray.indexOfValue(t) >= 0;
|
||||
}
|
||||
|
||||
public static final <T> T getOrDefault(LongSparseArray<T> longSparseArray, long j, T t) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
T t2 = longSparseArray.get(j);
|
||||
return t2 == null ? t : t2;
|
||||
}
|
||||
|
||||
public static final <T> T getOrElse(LongSparseArray<T> longSparseArray, long j, Function0<? extends T> defaultValue) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(defaultValue, "defaultValue");
|
||||
T t = longSparseArray.get(j);
|
||||
return t == null ? defaultValue.invoke() : t;
|
||||
}
|
||||
|
||||
public static final <T> boolean isEmpty(LongSparseArray<T> longSparseArray) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return longSparseArray.size() == 0;
|
||||
}
|
||||
|
||||
public static final <T> boolean isNotEmpty(LongSparseArray<T> longSparseArray) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return longSparseArray.size() != 0;
|
||||
}
|
||||
|
||||
public static final <T> boolean remove(LongSparseArray<T> longSparseArray, long j, T t) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
int indexOfKey = longSparseArray.indexOfKey(j);
|
||||
if (indexOfKey < 0 || !Intrinsics.areEqual(t, longSparseArray.valueAt(indexOfKey))) {
|
||||
return false;
|
||||
}
|
||||
longSparseArray.removeAt(indexOfKey);
|
||||
return true;
|
||||
}
|
||||
|
||||
public static final <T> void forEach(LongSparseArray<T> longSparseArray, Function2<? super Long, ? super T, Unit> action) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(action, "action");
|
||||
int size = longSparseArray.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
action.invoke(Long.valueOf(longSparseArray.keyAt(i)), longSparseArray.valueAt(i));
|
||||
}
|
||||
}
|
||||
|
||||
public static final <T> LongIterator keyIterator(final LongSparseArray<T> longSparseArray) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return new LongIterator() { // from class: androidx.core.util.LongSparseArrayKt$keyIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < longSparseArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.LongIterator
|
||||
public long nextLong() {
|
||||
LongSparseArray<T> longSparseArray2 = longSparseArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return longSparseArray2.keyAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final <T> Iterator<T> valueIterator(LongSparseArray<T> longSparseArray) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
return new LongSparseArrayKt$valueIterator$1(longSparseArray);
|
||||
}
|
||||
|
||||
public static final <T> void putAll(LongSparseArray<T> longSparseArray, LongSparseArray<T> other) {
|
||||
Intrinsics.checkNotNullParameter(longSparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
int size = other.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
longSparseArray.put(other.keyAt(i), other.valueAt(i));
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,48 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.LruCache;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function1;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.functions.Function4;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* JADX INFO: Add missing generic type declarations: [V, K] */
|
||||
/* compiled from: LruCache.kt */
|
||||
@Metadata(d1 = {"\u0000#\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0010\u0002\n\u0000\n\u0002\u0010\u000b\n\u0002\b\u0004\n\u0002\u0010\b\n\u0002\b\u0003*\u0001\u0000\b\n\u0018\u00002\u000e\u0012\u0004\u0012\u00028\u0000\u0012\u0004\u0012\u00028\u00010\u0001J\u0017\u0010\u0002\u001a\u0004\u0018\u00018\u00012\u0006\u0010\u0003\u001a\u00028\u0000H\u0014¢\u0006\u0002\u0010\u0004J/\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0007\u001a\u00020\b2\u0006\u0010\u0003\u001a\u00028\u00002\u0006\u0010\t\u001a\u00028\u00012\b\u0010\n\u001a\u0004\u0018\u00018\u0001H\u0014¢\u0006\u0002\u0010\u000bJ\u001d\u0010\f\u001a\u00020\r2\u0006\u0010\u0003\u001a\u00028\u00002\u0006\u0010\u000e\u001a\u00028\u0001H\u0014¢\u0006\u0002\u0010\u000f¨\u0006\u0010"}, d2 = {"androidx/core/util/LruCacheKt$lruCache$4", "Landroid/util/LruCache;", "create", "key", "(Ljava/lang/Object;)Ljava/lang/Object;", "entryRemoved", "", "evicted", "", "oldValue", "newValue", "(ZLjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V", "sizeOf", "", "value", "(Ljava/lang/Object;Ljava/lang/Object;)I", "core-ktx_release"}, k = 1, mv = {1, 7, 1}, xi = 176)
|
||||
/* loaded from: classes.dex */
|
||||
public final class LruCacheKt$lruCache$4<K, V> extends LruCache<K, V> {
|
||||
final /* synthetic */ Function1<K, V> $create;
|
||||
final /* synthetic */ Function4<Boolean, K, V, V, Unit> $onEntryRemoved;
|
||||
final /* synthetic */ Function2<K, V, Integer> $sizeOf;
|
||||
|
||||
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
||||
/* JADX WARN: Multi-variable type inference failed */
|
||||
public LruCacheKt$lruCache$4(int i, Function2<? super K, ? super V, Integer> function2, Function1<? super K, ? extends V> function1, Function4<? super Boolean, ? super K, ? super V, ? super V, Unit> function4) {
|
||||
super(i);
|
||||
this.$sizeOf = function2;
|
||||
this.$create = function1;
|
||||
this.$onEntryRemoved = function4;
|
||||
}
|
||||
|
||||
@Override // android.util.LruCache
|
||||
protected int sizeOf(K key, V value) {
|
||||
Intrinsics.checkNotNullParameter(key, "key");
|
||||
Intrinsics.checkNotNullParameter(value, "value");
|
||||
return this.$sizeOf.invoke(key, value).intValue();
|
||||
}
|
||||
|
||||
@Override // android.util.LruCache
|
||||
protected V create(K key) {
|
||||
Intrinsics.checkNotNullParameter(key, "key");
|
||||
return this.$create.invoke(key);
|
||||
}
|
||||
|
||||
@Override // android.util.LruCache
|
||||
protected void entryRemoved(boolean evicted, K key, V oldValue, V newValue) {
|
||||
Intrinsics.checkNotNullParameter(key, "key");
|
||||
Intrinsics.checkNotNullParameter(oldValue, "oldValue");
|
||||
this.$onEntryRemoved.invoke(Boolean.valueOf(evicted), key, oldValue, newValue);
|
||||
}
|
||||
}
|
69
02-Easy5/E5/sources/androidx/core/util/LruCacheKt.java
Normal file
69
02-Easy5/E5/sources/androidx/core/util/LruCacheKt.java
Normal file
@ -0,0 +1,69 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.LruCache;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function1;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.functions.Function4;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: LruCache.kt */
|
||||
@Metadata(d1 = {"\u0000:\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0000\n\u0000\n\u0002\u0010\b\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u000b\n\u0002\b\u0003\n\u0002\u0010\u0002\n\u0000\u001aû\u0001\u0010\u0000\u001a\u000e\u0012\u0004\u0012\u0002H\u0002\u0012\u0004\u0012\u0002H\u00030\u0001\"\b\b\u0000\u0010\u0002*\u00020\u0004\"\b\b\u0001\u0010\u0003*\u00020\u00042\u0006\u0010\u0005\u001a\u00020\u000628\b\u0006\u0010\u0007\u001a2\u0012\u0013\u0012\u0011H\u0002¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\u000b\u0012\u0013\u0012\u0011H\u0003¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\f\u0012\u0004\u0012\u00020\u00060\b2%\b\u0006\u0010\r\u001a\u001f\u0012\u0013\u0012\u0011H\u0002¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\u000b\u0012\u0006\u0012\u0004\u0018\u0001H\u00030\u000e2d\b\u0006\u0010\u000f\u001a^\u0012\u0013\u0012\u00110\u0011¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\u0012\u0012\u0013\u0012\u0011H\u0002¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\u000b\u0012\u0013\u0012\u0011H\u0003¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\u0013\u0012\u0015\u0012\u0013\u0018\u0001H\u0003¢\u0006\f\b\t\u0012\b\b\n\u0012\u0004\b\b(\u0014\u0012\u0004\u0012\u00020\u00150\u0010H\u0086\bø\u0001\u0000\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u0016"}, d2 = {"lruCache", "Landroid/util/LruCache;", "K", "V", "", "maxSize", "", "sizeOf", "Lkotlin/Function2;", "Lkotlin/ParameterName;", "name", "key", "value", "create", "Lkotlin/Function1;", "onEntryRemoved", "Lkotlin/Function4;", "", "evicted", "oldValue", "newValue", "", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class LruCacheKt {
|
||||
public static /* synthetic */ LruCache lruCache$default(int i, Function2 sizeOf, Function1 create, Function4 onEntryRemoved, int i2, Object obj) {
|
||||
if ((i2 & 2) != 0) {
|
||||
sizeOf = new Function2<K, V, Integer>() { // from class: androidx.core.util.LruCacheKt$lruCache$1
|
||||
/* JADX WARN: Can't rename method to resolve collision */
|
||||
@Override // kotlin.jvm.functions.Function2
|
||||
public final Integer invoke(K k, V v) {
|
||||
Intrinsics.checkNotNullParameter(k, "<anonymous parameter 0>");
|
||||
Intrinsics.checkNotNullParameter(v, "<anonymous parameter 1>");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* JADX WARN: Multi-variable type inference failed */
|
||||
@Override // kotlin.jvm.functions.Function2
|
||||
public /* bridge */ /* synthetic */ Integer invoke(Object obj2, Object obj3) {
|
||||
return invoke((LruCacheKt$lruCache$1<K, V>) obj2, obj3);
|
||||
}
|
||||
};
|
||||
}
|
||||
if ((i2 & 4) != 0) {
|
||||
create = new Function1<K, V>() { // from class: androidx.core.util.LruCacheKt$lruCache$2
|
||||
@Override // kotlin.jvm.functions.Function1
|
||||
public final V invoke(K it) {
|
||||
Intrinsics.checkNotNullParameter(it, "it");
|
||||
return null;
|
||||
}
|
||||
};
|
||||
}
|
||||
if ((i2 & 8) != 0) {
|
||||
onEntryRemoved = new Function4<Boolean, K, V, V, Unit>() { // from class: androidx.core.util.LruCacheKt$lruCache$3
|
||||
public final void invoke(boolean z, K k, V v, V v2) {
|
||||
Intrinsics.checkNotNullParameter(k, "<anonymous parameter 1>");
|
||||
Intrinsics.checkNotNullParameter(v, "<anonymous parameter 2>");
|
||||
}
|
||||
|
||||
/* JADX WARN: Multi-variable type inference failed */
|
||||
@Override // kotlin.jvm.functions.Function4
|
||||
public /* bridge */ /* synthetic */ Unit invoke(Boolean bool, Object obj2, Object obj3, Object obj4) {
|
||||
invoke(bool.booleanValue(), (boolean) obj2, obj3, obj4);
|
||||
return Unit.INSTANCE;
|
||||
}
|
||||
};
|
||||
}
|
||||
Intrinsics.checkNotNullParameter(sizeOf, "sizeOf");
|
||||
Intrinsics.checkNotNullParameter(create, "create");
|
||||
Intrinsics.checkNotNullParameter(onEntryRemoved, "onEntryRemoved");
|
||||
return new LruCacheKt$lruCache$4(i, sizeOf, create, onEntryRemoved);
|
||||
}
|
||||
|
||||
public static final <K, V> LruCache<K, V> lruCache(int i, Function2<? super K, ? super V, Integer> sizeOf, Function1<? super K, ? extends V> create, Function4<? super Boolean, ? super K, ? super V, ? super V, Unit> onEntryRemoved) {
|
||||
Intrinsics.checkNotNullParameter(sizeOf, "sizeOf");
|
||||
Intrinsics.checkNotNullParameter(create, "create");
|
||||
Intrinsics.checkNotNullParameter(onEntryRemoved, "onEntryRemoved");
|
||||
return new LruCacheKt$lruCache$4(i, sizeOf, create, onEntryRemoved);
|
||||
}
|
||||
}
|
53
02-Easy5/E5/sources/androidx/core/util/ObjectsCompat.java
Normal file
53
02-Easy5/E5/sources/androidx/core/util/ObjectsCompat.java
Normal file
@ -0,0 +1,53 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class ObjectsCompat {
|
||||
private ObjectsCompat() {
|
||||
}
|
||||
|
||||
public static boolean equals(Object obj, Object obj2) {
|
||||
return Api19Impl.equals(obj, obj2);
|
||||
}
|
||||
|
||||
public static int hashCode(Object obj) {
|
||||
if (obj != null) {
|
||||
return obj.hashCode();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public static int hash(Object... objArr) {
|
||||
return Api19Impl.hash(objArr);
|
||||
}
|
||||
|
||||
public static String toString(Object obj, String str) {
|
||||
return obj != null ? obj.toString() : str;
|
||||
}
|
||||
|
||||
public static <T> T requireNonNull(T t) {
|
||||
t.getClass();
|
||||
return t;
|
||||
}
|
||||
|
||||
public static <T> T requireNonNull(T t, String str) {
|
||||
if (t != null) {
|
||||
return t;
|
||||
}
|
||||
throw new NullPointerException(str);
|
||||
}
|
||||
|
||||
static class Api19Impl {
|
||||
private Api19Impl() {
|
||||
}
|
||||
|
||||
static boolean equals(Object obj, Object obj2) {
|
||||
return Objects.equals(obj, obj2);
|
||||
}
|
||||
|
||||
static int hash(Object... objArr) {
|
||||
return Objects.hash(objArr);
|
||||
}
|
||||
}
|
||||
}
|
35
02-Easy5/E5/sources/androidx/core/util/Pair.java
Normal file
35
02-Easy5/E5/sources/androidx/core/util/Pair.java
Normal file
@ -0,0 +1,35 @@
|
||||
package androidx.core.util;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class Pair<F, S> {
|
||||
public final F first;
|
||||
public final S second;
|
||||
|
||||
public Pair(F f, S s) {
|
||||
this.first = f;
|
||||
this.second = s;
|
||||
}
|
||||
|
||||
public boolean equals(Object obj) {
|
||||
if (!(obj instanceof Pair)) {
|
||||
return false;
|
||||
}
|
||||
Pair pair = (Pair) obj;
|
||||
return ObjectsCompat.equals(pair.first, this.first) && ObjectsCompat.equals(pair.second, this.second);
|
||||
}
|
||||
|
||||
public int hashCode() {
|
||||
F f = this.first;
|
||||
int hashCode = f == null ? 0 : f.hashCode();
|
||||
S s = this.second;
|
||||
return hashCode ^ (s != null ? s.hashCode() : 0);
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
return "Pair{" + this.first + " " + this.second + "}";
|
||||
}
|
||||
|
||||
public static <A, B> Pair<A, B> create(A a, B b) {
|
||||
return new Pair<>(a, b);
|
||||
}
|
||||
}
|
49
02-Easy5/E5/sources/androidx/core/util/PairKt.java
Normal file
49
02-Easy5/E5/sources/androidx/core/util/PairKt.java
Normal file
@ -0,0 +1,49 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import kotlin.Metadata;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Pair.kt */
|
||||
@Metadata(d1 = {"\u0000\u001a\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0003\u001a*\u0010\u0000\u001a\u0002H\u0001\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0003H\u0087\n¢\u0006\u0002\u0010\u0004\u001a*\u0010\u0000\u001a\u0002H\u0001\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0005H\u0087\n¢\u0006\u0002\u0010\u0006\u001a*\u0010\u0007\u001a\u0002H\u0002\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0003H\u0087\n¢\u0006\u0002\u0010\u0004\u001a*\u0010\u0007\u001a\u0002H\u0002\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0005H\u0087\n¢\u0006\u0002\u0010\u0006\u001a1\u0010\b\u001a\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0003\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\tH\u0086\b\u001a1\u0010\n\u001a\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0005\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\tH\u0086\b\u001a1\u0010\u000b\u001a\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\t\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0003H\u0086\b\u001a1\u0010\u000b\u001a\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\t\"\u0004\b\u0000\u0010\u0001\"\u0004\b\u0001\u0010\u0002*\u000e\u0012\u0004\u0012\u0002H\u0001\u0012\u0004\u0012\u0002H\u00020\u0005H\u0086\b¨\u0006\f"}, d2 = {"component1", "F", "S", "Landroid/util/Pair;", "(Landroid/util/Pair;)Ljava/lang/Object;", "Landroidx/core/util/Pair;", "(Landroidx/core/util/Pair;)Ljava/lang/Object;", "component2", "toAndroidPair", "Lkotlin/Pair;", "toAndroidXPair", "toKotlinPair", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class PairKt {
|
||||
public static final <F, S> F component1(Pair<F, S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return pair.first;
|
||||
}
|
||||
|
||||
public static final <F, S> S component2(Pair<F, S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return pair.second;
|
||||
}
|
||||
|
||||
public static final <F, S> kotlin.Pair<F, S> toKotlinPair(Pair<F, S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return new kotlin.Pair<>(pair.first, pair.second);
|
||||
}
|
||||
|
||||
public static final <F, S> Pair<F, S> toAndroidXPair(kotlin.Pair<? extends F, ? extends S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return new Pair<>(pair.getFirst(), pair.getSecond());
|
||||
}
|
||||
|
||||
public static final <F, S> F component1(android.util.Pair<F, S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return (F) pair.first;
|
||||
}
|
||||
|
||||
public static final <F, S> S component2(android.util.Pair<F, S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return (S) pair.second;
|
||||
}
|
||||
|
||||
public static final <F, S> kotlin.Pair<F, S> toKotlinPair(android.util.Pair<F, S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return new kotlin.Pair<>(pair.first, pair.second);
|
||||
}
|
||||
|
||||
public static final <F, S> android.util.Pair<F, S> toAndroidPair(kotlin.Pair<? extends F, ? extends S> pair) {
|
||||
Intrinsics.checkNotNullParameter(pair, "<this>");
|
||||
return new android.util.Pair<>(pair.getFirst(), pair.getSecond());
|
||||
}
|
||||
}
|
57
02-Easy5/E5/sources/androidx/core/util/PatternsCompat.java
Normal file
57
02-Easy5/E5/sources/androidx/core/util/PatternsCompat.java
Normal file
File diff suppressed because one or more lines are too long
91
02-Easy5/E5/sources/androidx/core/util/Pools.java
Normal file
91
02-Easy5/E5/sources/androidx/core/util/Pools.java
Normal file
@ -0,0 +1,91 @@
|
||||
package androidx.core.util;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public final class Pools {
|
||||
|
||||
public interface Pool<T> {
|
||||
T acquire();
|
||||
|
||||
boolean release(T t);
|
||||
}
|
||||
|
||||
private Pools() {
|
||||
}
|
||||
|
||||
public static class SimplePool<T> implements Pool<T> {
|
||||
private final Object[] mPool;
|
||||
private int mPoolSize;
|
||||
|
||||
public SimplePool(int i) {
|
||||
if (i <= 0) {
|
||||
throw new IllegalArgumentException("The max pool size must be > 0");
|
||||
}
|
||||
this.mPool = new Object[i];
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Pools.Pool
|
||||
public T acquire() {
|
||||
int i = this.mPoolSize;
|
||||
if (i <= 0) {
|
||||
return null;
|
||||
}
|
||||
int i2 = i - 1;
|
||||
Object[] objArr = this.mPool;
|
||||
T t = (T) objArr[i2];
|
||||
objArr[i2] = null;
|
||||
this.mPoolSize = i - 1;
|
||||
return t;
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Pools.Pool
|
||||
public boolean release(T t) {
|
||||
if (isInPool(t)) {
|
||||
throw new IllegalStateException("Already in the pool!");
|
||||
}
|
||||
int i = this.mPoolSize;
|
||||
Object[] objArr = this.mPool;
|
||||
if (i >= objArr.length) {
|
||||
return false;
|
||||
}
|
||||
objArr[i] = t;
|
||||
this.mPoolSize = i + 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean isInPool(T t) {
|
||||
for (int i = 0; i < this.mPoolSize; i++) {
|
||||
if (this.mPool[i] == t) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static class SynchronizedPool<T> extends SimplePool<T> {
|
||||
private final Object mLock;
|
||||
|
||||
public SynchronizedPool(int i) {
|
||||
super(i);
|
||||
this.mLock = new Object();
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Pools.SimplePool, androidx.core.util.Pools.Pool
|
||||
public T acquire() {
|
||||
T t;
|
||||
synchronized (this.mLock) {
|
||||
t = (T) super.acquire();
|
||||
}
|
||||
return t;
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Pools.SimplePool, androidx.core.util.Pools.Pool
|
||||
public boolean release(T t) {
|
||||
boolean release;
|
||||
synchronized (this.mLock) {
|
||||
release = super.release(t);
|
||||
}
|
||||
return release;
|
||||
}
|
||||
}
|
||||
}
|
142
02-Easy5/E5/sources/androidx/core/util/Preconditions.java
Normal file
142
02-Easy5/E5/sources/androidx/core/util/Preconditions.java
Normal file
@ -0,0 +1,142 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import java.util.Locale;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public final class Preconditions {
|
||||
public static void checkArgument(boolean z) {
|
||||
if (!z) {
|
||||
throw new IllegalArgumentException();
|
||||
}
|
||||
}
|
||||
|
||||
public static void checkArgument(boolean z, Object obj) {
|
||||
if (!z) {
|
||||
throw new IllegalArgumentException(String.valueOf(obj));
|
||||
}
|
||||
}
|
||||
|
||||
public static void checkArgument(boolean z, String str, Object... objArr) {
|
||||
if (!z) {
|
||||
throw new IllegalArgumentException(String.format(str, objArr));
|
||||
}
|
||||
}
|
||||
|
||||
public static <T extends CharSequence> T checkStringNotEmpty(T t) {
|
||||
if (TextUtils.isEmpty(t)) {
|
||||
throw new IllegalArgumentException();
|
||||
}
|
||||
return t;
|
||||
}
|
||||
|
||||
public static <T extends CharSequence> T checkStringNotEmpty(T t, Object obj) {
|
||||
if (TextUtils.isEmpty(t)) {
|
||||
throw new IllegalArgumentException(String.valueOf(obj));
|
||||
}
|
||||
return t;
|
||||
}
|
||||
|
||||
public static <T extends CharSequence> T checkStringNotEmpty(T t, String str, Object... objArr) {
|
||||
if (TextUtils.isEmpty(t)) {
|
||||
throw new IllegalArgumentException(String.format(str, objArr));
|
||||
}
|
||||
return t;
|
||||
}
|
||||
|
||||
public static <T> T checkNotNull(T t) {
|
||||
t.getClass();
|
||||
return t;
|
||||
}
|
||||
|
||||
public static <T> T checkNotNull(T t, Object obj) {
|
||||
if (t != null) {
|
||||
return t;
|
||||
}
|
||||
throw new NullPointerException(String.valueOf(obj));
|
||||
}
|
||||
|
||||
public static void checkState(boolean z, String str) {
|
||||
if (!z) {
|
||||
throw new IllegalStateException(str);
|
||||
}
|
||||
}
|
||||
|
||||
public static void checkState(boolean z) {
|
||||
checkState(z, null);
|
||||
}
|
||||
|
||||
public static int checkFlagsArgument(int i, int i2) {
|
||||
if ((i & i2) == i) {
|
||||
return i;
|
||||
}
|
||||
throw new IllegalArgumentException("Requested flags 0x" + Integer.toHexString(i) + ", but only 0x" + Integer.toHexString(i2) + " are allowed");
|
||||
}
|
||||
|
||||
public static int checkArgumentNonnegative(int i, String str) {
|
||||
if (i >= 0) {
|
||||
return i;
|
||||
}
|
||||
throw new IllegalArgumentException(str);
|
||||
}
|
||||
|
||||
public static int checkArgumentNonnegative(int i) {
|
||||
if (i >= 0) {
|
||||
return i;
|
||||
}
|
||||
throw new IllegalArgumentException();
|
||||
}
|
||||
|
||||
public static int checkArgumentInRange(int i, int i2, int i3, String str) {
|
||||
if (i < i2) {
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%d, %d] (too low)", str, Integer.valueOf(i2), Integer.valueOf(i3)));
|
||||
}
|
||||
if (i <= i3) {
|
||||
return i;
|
||||
}
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%d, %d] (too high)", str, Integer.valueOf(i2), Integer.valueOf(i3)));
|
||||
}
|
||||
|
||||
public static long checkArgumentInRange(long j, long j2, long j3, String str) {
|
||||
if (j < j2) {
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%d, %d] (too low)", str, Long.valueOf(j2), Long.valueOf(j3)));
|
||||
}
|
||||
if (j <= j3) {
|
||||
return j;
|
||||
}
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%d, %d] (too high)", str, Long.valueOf(j2), Long.valueOf(j3)));
|
||||
}
|
||||
|
||||
public static float checkArgumentInRange(float f, float f2, float f3, String str) {
|
||||
if (f < f2) {
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%f, %f] (too low)", str, Float.valueOf(f2), Float.valueOf(f3)));
|
||||
}
|
||||
if (f <= f3) {
|
||||
return f;
|
||||
}
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%f, %f] (too high)", str, Float.valueOf(f2), Float.valueOf(f3)));
|
||||
}
|
||||
|
||||
public static double checkArgumentInRange(double d, double d2, double d3, String str) {
|
||||
if (d < d2) {
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%f, %f] (too low)", str, Double.valueOf(d2), Double.valueOf(d3)));
|
||||
}
|
||||
if (d <= d3) {
|
||||
return d;
|
||||
}
|
||||
throw new IllegalArgumentException(String.format(Locale.US, "%s is out of range of [%f, %f] (too high)", str, Double.valueOf(d2), Double.valueOf(d3)));
|
||||
}
|
||||
|
||||
public static float checkArgumentFinite(float f, String str) {
|
||||
if (Float.isNaN(f)) {
|
||||
throw new IllegalArgumentException(str + " must not be NaN");
|
||||
}
|
||||
if (!Float.isInfinite(f)) {
|
||||
return f;
|
||||
}
|
||||
throw new IllegalArgumentException(str + " must not be infinite");
|
||||
}
|
||||
|
||||
private Preconditions() {
|
||||
}
|
||||
}
|
158
02-Easy5/E5/sources/androidx/core/util/Predicate.java
Normal file
158
02-Easy5/E5/sources/androidx/core/util/Predicate.java
Normal file
@ -0,0 +1,158 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import androidx.core.util.Predicate;
|
||||
import java.util.Objects;
|
||||
import kotlin.UByte$$ExternalSyntheticBackport0;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public interface Predicate<T> {
|
||||
Predicate<T> and(Predicate<? super T> predicate);
|
||||
|
||||
Predicate<T> negate();
|
||||
|
||||
Predicate<T> or(Predicate<? super T> predicate);
|
||||
|
||||
boolean test(T t);
|
||||
|
||||
/* renamed from: androidx.core.util.Predicate$-CC, reason: invalid class name */
|
||||
public final /* synthetic */ class CC {
|
||||
public static Predicate $default$and(final Predicate _this, final Predicate predicate) {
|
||||
Objects.requireNonNull(predicate);
|
||||
return new Predicate() { // from class: androidx.core.util.Predicate$$ExternalSyntheticLambda4
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate and(Predicate predicate2) {
|
||||
return Predicate.CC.$default$and(this, predicate2);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate negate() {
|
||||
return Predicate.CC.$default$negate(this);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate or(Predicate predicate2) {
|
||||
return Predicate.CC.$default$or(this, predicate2);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public final boolean test(Object obj) {
|
||||
return Predicate.CC.$private$lambda$and$0(Predicate.this, predicate, obj);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static /* synthetic */ boolean $private$lambda$and$0(Predicate _this, Predicate predicate, Object obj) {
|
||||
return _this.test(obj) && predicate.test(obj);
|
||||
}
|
||||
|
||||
public static Predicate $default$negate(final Predicate _this) {
|
||||
return new Predicate() { // from class: androidx.core.util.Predicate$$ExternalSyntheticLambda5
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate and(Predicate predicate) {
|
||||
return Predicate.CC.$default$and(this, predicate);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate negate() {
|
||||
return Predicate.CC.$default$negate(this);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate or(Predicate predicate) {
|
||||
return Predicate.CC.$default$or(this, predicate);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public final boolean test(Object obj) {
|
||||
return Predicate.CC.$private$lambda$negate$1(Predicate.this, obj);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static /* synthetic */ boolean $private$lambda$negate$1(Predicate _this, Object obj) {
|
||||
return !_this.test(obj);
|
||||
}
|
||||
|
||||
public static Predicate $default$or(final Predicate _this, final Predicate predicate) {
|
||||
Objects.requireNonNull(predicate);
|
||||
return new Predicate() { // from class: androidx.core.util.Predicate$$ExternalSyntheticLambda1
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate and(Predicate predicate2) {
|
||||
return Predicate.CC.$default$and(this, predicate2);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate negate() {
|
||||
return Predicate.CC.$default$negate(this);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate or(Predicate predicate2) {
|
||||
return Predicate.CC.$default$or(this, predicate2);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public final boolean test(Object obj) {
|
||||
return Predicate.CC.$private$lambda$or$2(Predicate.this, predicate, obj);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static /* synthetic */ boolean $private$lambda$or$2(Predicate _this, Predicate predicate, Object obj) {
|
||||
return _this.test(obj) || predicate.test(obj);
|
||||
}
|
||||
|
||||
public static <T> Predicate<T> isEqual(final Object obj) {
|
||||
return obj == null ? new Predicate() { // from class: androidx.core.util.Predicate$$ExternalSyntheticLambda2
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate and(Predicate predicate) {
|
||||
return Predicate.CC.$default$and(this, predicate);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate negate() {
|
||||
return Predicate.CC.$default$negate(this);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate or(Predicate predicate) {
|
||||
return Predicate.CC.$default$or(this, predicate);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public final boolean test(Object obj2) {
|
||||
boolean m;
|
||||
m = UByte$$ExternalSyntheticBackport0.m(obj2);
|
||||
return m;
|
||||
}
|
||||
} : new Predicate() { // from class: androidx.core.util.Predicate$$ExternalSyntheticLambda3
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate and(Predicate predicate) {
|
||||
return Predicate.CC.$default$and(this, predicate);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate negate() {
|
||||
return Predicate.CC.$default$negate(this);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public /* synthetic */ Predicate or(Predicate predicate) {
|
||||
return Predicate.CC.$default$or(this, predicate);
|
||||
}
|
||||
|
||||
@Override // androidx.core.util.Predicate
|
||||
public final boolean test(Object obj2) {
|
||||
boolean equals;
|
||||
equals = obj.equals(obj2);
|
||||
return equals;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static <T> Predicate<T> not(Predicate<? super T> predicate) {
|
||||
Objects.requireNonNull(predicate);
|
||||
return predicate.negate();
|
||||
}
|
||||
}
|
||||
}
|
74
02-Easy5/E5/sources/androidx/core/util/RangeKt.java
Normal file
74
02-Easy5/E5/sources/androidx/core/util/RangeKt.java
Normal file
@ -0,0 +1,74 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.Range;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
import kotlin.ranges.ClosedRange;
|
||||
|
||||
/* compiled from: Range.kt */
|
||||
@Metadata(d1 = {"\u0000\u0018\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000f\n\u0002\b\b\n\u0002\u0018\u0002\n\u0002\b\u0002\u001a7\u0010\u0000\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u000e\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003*\b\u0012\u0004\u0012\u0002H\u00020\u00012\f\u0010\u0004\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001H\u0087\f\u001a6\u0010\u0005\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u000e\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003*\b\u0012\u0004\u0012\u0002H\u00020\u00012\u0006\u0010\u0006\u001a\u0002H\u0002H\u0087\n¢\u0006\u0002\u0010\u0007\u001a7\u0010\u0005\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u000e\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003*\b\u0012\u0004\u0012\u0002H\u00020\u00012\f\u0010\u0004\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001H\u0087\n\u001a0\u0010\b\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u000e\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003*\u0002H\u00022\u0006\u0010\t\u001a\u0002H\u0002H\u0087\f¢\u0006\u0002\u0010\n\u001a(\u0010\u000b\u001a\b\u0012\u0004\u0012\u0002H\u00020\f\"\u000e\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003*\b\u0012\u0004\u0012\u0002H\u00020\u0001H\u0007\u001a(\u0010\r\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0001\"\u000e\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003*\b\u0012\u0004\u0012\u0002H\u00020\fH\u0007¨\u0006\u000e"}, d2 = {"and", "Landroid/util/Range;", "T", "", "other", "plus", "value", "(Landroid/util/Range;Ljava/lang/Comparable;)Landroid/util/Range;", "rangeTo", "that", "(Ljava/lang/Comparable;Ljava/lang/Comparable;)Landroid/util/Range;", "toClosedRange", "Lkotlin/ranges/ClosedRange;", "toRange", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class RangeKt {
|
||||
public static final <T extends Comparable<? super T>> Range<T> rangeTo(T t, T that) {
|
||||
Intrinsics.checkNotNullParameter(t, "<this>");
|
||||
Intrinsics.checkNotNullParameter(that, "that");
|
||||
return new Range<>(t, that);
|
||||
}
|
||||
|
||||
public static final <T extends Comparable<? super T>> Range<T> plus(Range<T> range, T value) {
|
||||
Intrinsics.checkNotNullParameter(range, "<this>");
|
||||
Intrinsics.checkNotNullParameter(value, "value");
|
||||
Range<T> extend = range.extend((Range<T>) value);
|
||||
Intrinsics.checkNotNullExpressionValue(extend, "extend(value)");
|
||||
return extend;
|
||||
}
|
||||
|
||||
public static final <T extends Comparable<? super T>> Range<T> plus(Range<T> range, Range<T> other) {
|
||||
Intrinsics.checkNotNullParameter(range, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
Range<T> extend = range.extend(other);
|
||||
Intrinsics.checkNotNullExpressionValue(extend, "extend(other)");
|
||||
return extend;
|
||||
}
|
||||
|
||||
public static final <T extends Comparable<? super T>> Range<T> and(Range<T> range, Range<T> other) {
|
||||
Intrinsics.checkNotNullParameter(range, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
Range<T> intersect = range.intersect(other);
|
||||
Intrinsics.checkNotNullExpressionValue(intersect, "intersect(other)");
|
||||
return intersect;
|
||||
}
|
||||
|
||||
public static final <T extends Comparable<? super T>> ClosedRange<T> toClosedRange(final Range<T> range) {
|
||||
Intrinsics.checkNotNullParameter(range, "<this>");
|
||||
return (ClosedRange) new ClosedRange<T>() { // from class: androidx.core.util.RangeKt$toClosedRange$1
|
||||
/* JADX WARN: Incorrect types in method signature: (TT;)Z */
|
||||
@Override // kotlin.ranges.ClosedRange
|
||||
public boolean contains(Comparable comparable) {
|
||||
return ClosedRange.DefaultImpls.contains(this, comparable);
|
||||
}
|
||||
|
||||
@Override // kotlin.ranges.ClosedRange
|
||||
public boolean isEmpty() {
|
||||
return ClosedRange.DefaultImpls.isEmpty(this);
|
||||
}
|
||||
|
||||
/* JADX WARN: Incorrect return type in method signature: ()TT; */
|
||||
@Override // kotlin.ranges.ClosedRange
|
||||
public Comparable getEndInclusive() {
|
||||
return range.getUpper();
|
||||
}
|
||||
|
||||
/* JADX WARN: Incorrect return type in method signature: ()TT; */
|
||||
@Override // kotlin.ranges.ClosedRange
|
||||
public Comparable getStart() {
|
||||
return range.getLower();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final <T extends Comparable<? super T>> Range<T> toRange(ClosedRange<T> closedRange) {
|
||||
Intrinsics.checkNotNullParameter(closedRange, "<this>");
|
||||
return new Range<>(closedRange.getStart(), closedRange.getEndInclusive());
|
||||
}
|
||||
}
|
16
02-Easy5/E5/sources/androidx/core/util/RunnableKt.java
Normal file
16
02-Easy5/E5/sources/androidx/core/util/RunnableKt.java
Normal file
@ -0,0 +1,16 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.coroutines.Continuation;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Runnable.kt */
|
||||
@Metadata(d1 = {"\u0000\u0010\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u0002\n\u0000\u001a\u0010\u0010\u0000\u001a\u00020\u0001*\b\u0012\u0004\u0012\u00020\u00030\u0002¨\u0006\u0004"}, d2 = {"asRunnable", "Ljava/lang/Runnable;", "Lkotlin/coroutines/Continuation;", "", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class RunnableKt {
|
||||
public static final Runnable asRunnable(Continuation<? super Unit> continuation) {
|
||||
Intrinsics.checkNotNullParameter(continuation, "<this>");
|
||||
return new ContinuationRunnable(continuation);
|
||||
}
|
||||
}
|
64
02-Easy5/E5/sources/androidx/core/util/SizeFCompat.java
Normal file
64
02-Easy5/E5/sources/androidx/core/util/SizeFCompat.java
Normal file
@ -0,0 +1,64 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.SizeF;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public final class SizeFCompat {
|
||||
private final float mHeight;
|
||||
private final float mWidth;
|
||||
|
||||
public float getHeight() {
|
||||
return this.mHeight;
|
||||
}
|
||||
|
||||
public float getWidth() {
|
||||
return this.mWidth;
|
||||
}
|
||||
|
||||
public SizeFCompat(float f, float f2) {
|
||||
this.mWidth = Preconditions.checkArgumentFinite(f, "width");
|
||||
this.mHeight = Preconditions.checkArgumentFinite(f2, "height");
|
||||
}
|
||||
|
||||
public boolean equals(Object obj) {
|
||||
if (this == obj) {
|
||||
return true;
|
||||
}
|
||||
if (!(obj instanceof SizeFCompat)) {
|
||||
return false;
|
||||
}
|
||||
SizeFCompat sizeFCompat = (SizeFCompat) obj;
|
||||
return sizeFCompat.mWidth == this.mWidth && sizeFCompat.mHeight == this.mHeight;
|
||||
}
|
||||
|
||||
public int hashCode() {
|
||||
return Float.floatToIntBits(this.mWidth) ^ Float.floatToIntBits(this.mHeight);
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
return this.mWidth + "x" + this.mHeight;
|
||||
}
|
||||
|
||||
public SizeF toSizeF() {
|
||||
return Api21Impl.toSizeF(this);
|
||||
}
|
||||
|
||||
public static SizeFCompat toSizeFCompat(SizeF sizeF) {
|
||||
return Api21Impl.toSizeFCompat(sizeF);
|
||||
}
|
||||
|
||||
private static final class Api21Impl {
|
||||
private Api21Impl() {
|
||||
}
|
||||
|
||||
static SizeFCompat toSizeFCompat(SizeF sizeF) {
|
||||
Preconditions.checkNotNull(sizeF);
|
||||
return new SizeFCompat(sizeF.getWidth(), sizeF.getHeight());
|
||||
}
|
||||
|
||||
static SizeF toSizeF(SizeFCompat sizeFCompat) {
|
||||
Preconditions.checkNotNull(sizeFCompat);
|
||||
return new SizeF(sizeFCompat.getWidth(), sizeFCompat.getHeight());
|
||||
}
|
||||
}
|
||||
}
|
41
02-Easy5/E5/sources/androidx/core/util/SizeKt.java
Normal file
41
02-Easy5/E5/sources/androidx/core/util/SizeKt.java
Normal file
@ -0,0 +1,41 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.Size;
|
||||
import android.util.SizeF;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: Size.kt */
|
||||
@Metadata(d1 = {"\u0000\u001a\n\u0000\n\u0002\u0010\b\n\u0002\u0018\u0002\n\u0002\u0010\u0007\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u0087\n\u001a\r\u0010\u0000\u001a\u00020\u0003*\u00020\u0004H\u0087\n\u001a\r\u0010\u0000\u001a\u00020\u0003*\u00020\u0005H\u0086\n\u001a\r\u0010\u0006\u001a\u00020\u0001*\u00020\u0002H\u0087\n\u001a\r\u0010\u0006\u001a\u00020\u0003*\u00020\u0004H\u0087\n\u001a\r\u0010\u0006\u001a\u00020\u0003*\u00020\u0005H\u0086\n¨\u0006\u0007"}, d2 = {"component1", "", "Landroid/util/Size;", "", "Landroid/util/SizeF;", "Landroidx/core/util/SizeFCompat;", "component2", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class SizeKt {
|
||||
public static final int component1(Size size) {
|
||||
Intrinsics.checkNotNullParameter(size, "<this>");
|
||||
return size.getWidth();
|
||||
}
|
||||
|
||||
public static final int component2(Size size) {
|
||||
Intrinsics.checkNotNullParameter(size, "<this>");
|
||||
return size.getHeight();
|
||||
}
|
||||
|
||||
public static final float component1(SizeF sizeF) {
|
||||
Intrinsics.checkNotNullParameter(sizeF, "<this>");
|
||||
return sizeF.getWidth();
|
||||
}
|
||||
|
||||
public static final float component2(SizeF sizeF) {
|
||||
Intrinsics.checkNotNullParameter(sizeF, "<this>");
|
||||
return sizeF.getHeight();
|
||||
}
|
||||
|
||||
public static final float component1(SizeFCompat sizeFCompat) {
|
||||
Intrinsics.checkNotNullParameter(sizeFCompat, "<this>");
|
||||
return sizeFCompat.getWidth();
|
||||
}
|
||||
|
||||
public static final float component2(SizeFCompat sizeFCompat) {
|
||||
Intrinsics.checkNotNullParameter(sizeFCompat, "<this>");
|
||||
return sizeFCompat.getHeight();
|
||||
}
|
||||
}
|
@ -0,0 +1,45 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.SparseArray;
|
||||
import java.util.Iterator;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.jvm.internal.markers.KMappedMarker;
|
||||
|
||||
/* JADX INFO: Add missing generic type declarations: [T] */
|
||||
/* compiled from: SparseArray.kt */
|
||||
@Metadata(d1 = {"\u0000\u001b\n\u0000\n\u0002\u0010(\n\u0000\n\u0002\u0010\b\n\u0002\b\u0005\n\u0002\u0010\u000b\n\u0002\b\u0004*\u0001\u0000\b\n\u0018\u00002\b\u0012\u0004\u0012\u00028\u00000\u0001J\t\u0010\b\u001a\u00020\tH\u0096\u0002J\u0016\u0010\n\u001a\n \u000b*\u0004\u0018\u00018\u00008\u0000H\u0096\u0002¢\u0006\u0002\u0010\fR\u001a\u0010\u0002\u001a\u00020\u0003X\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u0004\u0010\u0005\"\u0004\b\u0006\u0010\u0007¨\u0006\r"}, d2 = {"androidx/core/util/SparseArrayKt$valueIterator$1", "", "index", "", "getIndex", "()I", "setIndex", "(I)V", "hasNext", "", "next", "kotlin.jvm.PlatformType", "()Ljava/lang/Object;", "core-ktx_release"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class SparseArrayKt$valueIterator$1<T> implements Iterator<T>, KMappedMarker {
|
||||
final /* synthetic */ SparseArray<T> $this_valueIterator;
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public void remove() {
|
||||
throw new UnsupportedOperationException("Operation is not supported for read-only collection");
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
SparseArrayKt$valueIterator$1(SparseArray<T> sparseArray) {
|
||||
this.$this_valueIterator = sparseArray;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < this.$this_valueIterator.size();
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public T next() {
|
||||
SparseArray<T> sparseArray = this.$this_valueIterator;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseArray.valueAt(i);
|
||||
}
|
||||
}
|
133
02-Easy5/E5/sources/androidx/core/util/SparseArrayKt.java
Normal file
133
02-Easy5/E5/sources/androidx/core/util/SparseArrayKt.java
Normal file
@ -0,0 +1,133 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.SparseArray;
|
||||
import java.util.Iterator;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.collections.IntIterator;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: SparseArray.kt */
|
||||
@Metadata(d1 = {"\u0000@\n\u0000\n\u0002\u0010\b\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0002\b\u0006\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\b\n\u0002\u0010(\n\u0000\u001a!\u0010\u0006\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\u0001H\u0086\n\u001a!\u0010\t\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\u0001H\u0086\b\u001a&\u0010\n\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\u000b\u001a\u0002H\u0002H\u0086\b¢\u0006\u0002\u0010\f\u001aT\u0010\r\u001a\u00020\u000e\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u000326\u0010\u000f\u001a2\u0012\u0013\u0012\u00110\u0001¢\u0006\f\b\u0011\u0012\b\b\u0012\u0012\u0004\b\b(\b\u0012\u0013\u0012\u0011H\u0002¢\u0006\f\b\u0011\u0012\b\b\u0012\u0012\u0004\b\b(\u000b\u0012\u0004\u0012\u00020\u000e0\u0010H\u0086\bø\u0001\u0000\u001a.\u0010\u0013\u001a\u0002H\u0002\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\u00012\u0006\u0010\u0014\u001a\u0002H\u0002H\u0086\b¢\u0006\u0002\u0010\u0015\u001a7\u0010\u0016\u001a\u0002H\u0002\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\u00012\f\u0010\u0014\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0017H\u0086\bø\u0001\u0000¢\u0006\u0002\u0010\u0018\u001a\u0019\u0010\u0019\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0086\b\u001a\u0019\u0010\u001a\u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0086\b\u001a\u0016\u0010\u001b\u001a\u00020\u001c\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003\u001a-\u0010\u001d\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0003\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\f\u0010\u001e\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0003H\u0086\u0002\u001a$\u0010\u001f\u001a\u00020\u000e\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\f\u0010\u001e\u001a\b\u0012\u0004\u0012\u0002H\u00020\u0003\u001a+\u0010 \u001a\u00020\u0007\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\u00012\u0006\u0010\u000b\u001a\u0002H\u0002¢\u0006\u0002\u0010!\u001a.\u0010\"\u001a\u00020\u000e\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00032\u0006\u0010\b\u001a\u00020\u00012\u0006\u0010\u000b\u001a\u0002H\u0002H\u0086\n¢\u0006\u0002\u0010#\u001a\u001c\u0010$\u001a\b\u0012\u0004\u0012\u0002H\u00020%\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u0003\"\"\u0010\u0000\u001a\u00020\u0001\"\u0004\b\u0000\u0010\u0002*\b\u0012\u0004\u0012\u0002H\u00020\u00038Æ\u0002¢\u0006\u0006\u001a\u0004\b\u0004\u0010\u0005\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006&"}, d2 = {"size", "", "T", "Landroid/util/SparseArray;", "getSize", "(Landroid/util/SparseArray;)I", "contains", "", "key", "containsKey", "containsValue", "value", "(Landroid/util/SparseArray;Ljava/lang/Object;)Z", "forEach", "", "action", "Lkotlin/Function2;", "Lkotlin/ParameterName;", "name", "getOrDefault", "defaultValue", "(Landroid/util/SparseArray;ILjava/lang/Object;)Ljava/lang/Object;", "getOrElse", "Lkotlin/Function0;", "(Landroid/util/SparseArray;ILkotlin/jvm/functions/Function0;)Ljava/lang/Object;", "isEmpty", "isNotEmpty", "keyIterator", "Lkotlin/collections/IntIterator;", "plus", "other", "putAll", "remove", "(Landroid/util/SparseArray;ILjava/lang/Object;)Z", "set", "(Landroid/util/SparseArray;ILjava/lang/Object;)V", "valueIterator", "", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class SparseArrayKt {
|
||||
public static final <T> int getSize(SparseArray<T> sparseArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return sparseArray.size();
|
||||
}
|
||||
|
||||
public static final <T> boolean contains(SparseArray<T> sparseArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return sparseArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final <T> void set(SparseArray<T> sparseArray, int i, T t) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
sparseArray.put(i, t);
|
||||
}
|
||||
|
||||
public static final <T> SparseArray<T> plus(SparseArray<T> sparseArray, SparseArray<T> other) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
SparseArray<T> sparseArray2 = new SparseArray<>(sparseArray.size() + other.size());
|
||||
putAll(sparseArray2, sparseArray);
|
||||
putAll(sparseArray2, other);
|
||||
return sparseArray2;
|
||||
}
|
||||
|
||||
public static final <T> boolean containsKey(SparseArray<T> sparseArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return sparseArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final <T> boolean containsValue(SparseArray<T> sparseArray, T t) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return sparseArray.indexOfValue(t) >= 0;
|
||||
}
|
||||
|
||||
public static final <T> T getOrDefault(SparseArray<T> sparseArray, int i, T t) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
T t2 = sparseArray.get(i);
|
||||
return t2 == null ? t : t2;
|
||||
}
|
||||
|
||||
public static final <T> T getOrElse(SparseArray<T> sparseArray, int i, Function0<? extends T> defaultValue) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(defaultValue, "defaultValue");
|
||||
T t = sparseArray.get(i);
|
||||
return t == null ? defaultValue.invoke() : t;
|
||||
}
|
||||
|
||||
public static final <T> boolean isEmpty(SparseArray<T> sparseArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return sparseArray.size() == 0;
|
||||
}
|
||||
|
||||
public static final <T> boolean isNotEmpty(SparseArray<T> sparseArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return sparseArray.size() != 0;
|
||||
}
|
||||
|
||||
public static final <T> boolean remove(SparseArray<T> sparseArray, int i, T t) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
int indexOfKey = sparseArray.indexOfKey(i);
|
||||
if (indexOfKey < 0 || !Intrinsics.areEqual(t, sparseArray.valueAt(indexOfKey))) {
|
||||
return false;
|
||||
}
|
||||
sparseArray.removeAt(indexOfKey);
|
||||
return true;
|
||||
}
|
||||
|
||||
public static final <T> void forEach(SparseArray<T> sparseArray, Function2<? super Integer, ? super T, Unit> action) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(action, "action");
|
||||
int size = sparseArray.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
action.invoke(Integer.valueOf(sparseArray.keyAt(i)), sparseArray.valueAt(i));
|
||||
}
|
||||
}
|
||||
|
||||
public static final <T> IntIterator keyIterator(final SparseArray<T> sparseArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return new IntIterator() { // from class: androidx.core.util.SparseArrayKt$keyIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.IntIterator
|
||||
public int nextInt() {
|
||||
SparseArray<T> sparseArray2 = sparseArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseArray2.keyAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final <T> Iterator<T> valueIterator(SparseArray<T> sparseArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
return new SparseArrayKt$valueIterator$1(sparseArray);
|
||||
}
|
||||
|
||||
public static final <T> void putAll(SparseArray<T> sparseArray, SparseArray<T> other) {
|
||||
Intrinsics.checkNotNullParameter(sparseArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
int size = other.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
sparseArray.put(other.keyAt(i), other.valueAt(i));
|
||||
}
|
||||
}
|
||||
}
|
155
02-Easy5/E5/sources/androidx/core/util/SparseBooleanArrayKt.java
Normal file
155
02-Easy5/E5/sources/androidx/core/util/SparseBooleanArrayKt.java
Normal file
@ -0,0 +1,155 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.SparseBooleanArray;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.collections.BooleanIterator;
|
||||
import kotlin.collections.IntIterator;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: SparseBooleanArray.kt */
|
||||
@Metadata(d1 = {"\u0000>\n\u0000\n\u0002\u0010\b\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0002\b\u0005\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0006\n\u0002\u0018\u0002\n\u0000\u001a\u0015\u0010\u0005\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0086\n\u001a\u0015\u0010\b\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0086\b\u001a\u0015\u0010\t\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\n\u001a\u00020\u0006H\u0086\b\u001aH\u0010\u000b\u001a\u00020\f*\u00020\u000226\u0010\r\u001a2\u0012\u0013\u0012\u00110\u0001¢\u0006\f\b\u000f\u0012\b\b\u0010\u0012\u0004\b\b(\u0007\u0012\u0013\u0012\u00110\u0006¢\u0006\f\b\u000f\u0012\b\b\u0010\u0012\u0004\b\b(\n\u0012\u0004\u0012\u00020\f0\u000eH\u0086\bø\u0001\u0000\u001a\u001d\u0010\u0011\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\u0012\u001a\u00020\u0006H\u0086\b\u001a&\u0010\u0013\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\f\u0010\u0012\u001a\b\u0012\u0004\u0012\u00020\u00060\u0014H\u0086\bø\u0001\u0000\u001a\r\u0010\u0015\u001a\u00020\u0006*\u00020\u0002H\u0086\b\u001a\r\u0010\u0016\u001a\u00020\u0006*\u00020\u0002H\u0086\b\u001a\n\u0010\u0017\u001a\u00020\u0018*\u00020\u0002\u001a\u0015\u0010\u0019\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001a\u001a\u00020\u0002H\u0086\u0002\u001a\u0012\u0010\u001b\u001a\u00020\f*\u00020\u00022\u0006\u0010\u001a\u001a\u00020\u0002\u001a\u001a\u0010\u001c\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\n\u001a\u00020\u0006\u001a\u001d\u0010\u001d\u001a\u00020\f*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\n\u001a\u00020\u0006H\u0086\n\u001a\n\u0010\u001e\u001a\u00020\u001f*\u00020\u0002\"\u0016\u0010\u0000\u001a\u00020\u0001*\u00020\u00028Æ\u0002¢\u0006\u0006\u001a\u0004\b\u0003\u0010\u0004\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006 "}, d2 = {"size", "", "Landroid/util/SparseBooleanArray;", "getSize", "(Landroid/util/SparseBooleanArray;)I", "contains", "", "key", "containsKey", "containsValue", "value", "forEach", "", "action", "Lkotlin/Function2;", "Lkotlin/ParameterName;", "name", "getOrDefault", "defaultValue", "getOrElse", "Lkotlin/Function0;", "isEmpty", "isNotEmpty", "keyIterator", "Lkotlin/collections/IntIterator;", "plus", "other", "putAll", "remove", "set", "valueIterator", "Lkotlin/collections/BooleanIterator;", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class SparseBooleanArrayKt {
|
||||
public static final int getSize(SparseBooleanArray sparseBooleanArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.size();
|
||||
}
|
||||
|
||||
public static final boolean contains(SparseBooleanArray sparseBooleanArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final void set(SparseBooleanArray sparseBooleanArray, int i, boolean z) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
sparseBooleanArray.put(i, z);
|
||||
}
|
||||
|
||||
public static final SparseBooleanArray plus(SparseBooleanArray sparseBooleanArray, SparseBooleanArray other) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
SparseBooleanArray sparseBooleanArray2 = new SparseBooleanArray(sparseBooleanArray.size() + other.size());
|
||||
putAll(sparseBooleanArray2, sparseBooleanArray);
|
||||
putAll(sparseBooleanArray2, other);
|
||||
return sparseBooleanArray2;
|
||||
}
|
||||
|
||||
public static final boolean containsKey(SparseBooleanArray sparseBooleanArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final boolean containsValue(SparseBooleanArray sparseBooleanArray, boolean z) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.indexOfValue(z) >= 0;
|
||||
}
|
||||
|
||||
public static final boolean getOrDefault(SparseBooleanArray sparseBooleanArray, int i, boolean z) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.get(i, z);
|
||||
}
|
||||
|
||||
public static final boolean getOrElse(SparseBooleanArray sparseBooleanArray, int i, Function0<Boolean> defaultValue) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(defaultValue, "defaultValue");
|
||||
int indexOfKey = sparseBooleanArray.indexOfKey(i);
|
||||
return indexOfKey >= 0 ? sparseBooleanArray.valueAt(indexOfKey) : defaultValue.invoke().booleanValue();
|
||||
}
|
||||
|
||||
public static final boolean isEmpty(SparseBooleanArray sparseBooleanArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.size() == 0;
|
||||
}
|
||||
|
||||
public static final boolean isNotEmpty(SparseBooleanArray sparseBooleanArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return sparseBooleanArray.size() != 0;
|
||||
}
|
||||
|
||||
public static final boolean remove(SparseBooleanArray sparseBooleanArray, int i, boolean z) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
int indexOfKey = sparseBooleanArray.indexOfKey(i);
|
||||
if (indexOfKey < 0 || z != sparseBooleanArray.valueAt(indexOfKey)) {
|
||||
return false;
|
||||
}
|
||||
sparseBooleanArray.delete(i);
|
||||
return true;
|
||||
}
|
||||
|
||||
public static final void forEach(SparseBooleanArray sparseBooleanArray, Function2<? super Integer, ? super Boolean, Unit> action) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(action, "action");
|
||||
int size = sparseBooleanArray.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
action.invoke(Integer.valueOf(sparseBooleanArray.keyAt(i)), Boolean.valueOf(sparseBooleanArray.valueAt(i)));
|
||||
}
|
||||
}
|
||||
|
||||
public static final IntIterator keyIterator(final SparseBooleanArray sparseBooleanArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return new IntIterator() { // from class: androidx.core.util.SparseBooleanArrayKt$keyIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseBooleanArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.IntIterator
|
||||
public int nextInt() {
|
||||
SparseBooleanArray sparseBooleanArray2 = sparseBooleanArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseBooleanArray2.keyAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final BooleanIterator valueIterator(final SparseBooleanArray sparseBooleanArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
return new BooleanIterator() { // from class: androidx.core.util.SparseBooleanArrayKt$valueIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseBooleanArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.BooleanIterator
|
||||
public boolean nextBoolean() {
|
||||
SparseBooleanArray sparseBooleanArray2 = sparseBooleanArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseBooleanArray2.valueAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final void putAll(SparseBooleanArray sparseBooleanArray, SparseBooleanArray other) {
|
||||
Intrinsics.checkNotNullParameter(sparseBooleanArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
int size = other.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
sparseBooleanArray.put(other.keyAt(i), other.valueAt(i));
|
||||
}
|
||||
}
|
||||
}
|
154
02-Easy5/E5/sources/androidx/core/util/SparseIntArrayKt.java
Normal file
154
02-Easy5/E5/sources/androidx/core/util/SparseIntArrayKt.java
Normal file
@ -0,0 +1,154 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.SparseIntArray;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.collections.IntIterator;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: SparseIntArray.kt */
|
||||
@Metadata(d1 = {"\u00008\n\u0000\n\u0002\u0010\b\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0002\b\u0005\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0007\u001a\u0015\u0010\u0005\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0086\n\u001a\u0015\u0010\b\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0086\b\u001a\u0015\u0010\t\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\n\u001a\u00020\u0001H\u0086\b\u001aH\u0010\u000b\u001a\u00020\f*\u00020\u000226\u0010\r\u001a2\u0012\u0013\u0012\u00110\u0001¢\u0006\f\b\u000f\u0012\b\b\u0010\u0012\u0004\b\b(\u0007\u0012\u0013\u0012\u00110\u0001¢\u0006\f\b\u000f\u0012\b\b\u0010\u0012\u0004\b\b(\n\u0012\u0004\u0012\u00020\f0\u000eH\u0086\bø\u0001\u0000\u001a\u001d\u0010\u0011\u001a\u00020\u0001*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\u0012\u001a\u00020\u0001H\u0086\b\u001a&\u0010\u0013\u001a\u00020\u0001*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\f\u0010\u0012\u001a\b\u0012\u0004\u0012\u00020\u00010\u0014H\u0086\bø\u0001\u0000\u001a\r\u0010\u0015\u001a\u00020\u0006*\u00020\u0002H\u0086\b\u001a\r\u0010\u0016\u001a\u00020\u0006*\u00020\u0002H\u0086\b\u001a\n\u0010\u0017\u001a\u00020\u0018*\u00020\u0002\u001a\u0015\u0010\u0019\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001a\u001a\u00020\u0002H\u0086\u0002\u001a\u0012\u0010\u001b\u001a\u00020\f*\u00020\u00022\u0006\u0010\u001a\u001a\u00020\u0002\u001a\u001a\u0010\u001c\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\n\u001a\u00020\u0001\u001a\u001d\u0010\u001d\u001a\u00020\f*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\n\u001a\u00020\u0001H\u0086\n\u001a\n\u0010\u001e\u001a\u00020\u0018*\u00020\u0002\"\u0016\u0010\u0000\u001a\u00020\u0001*\u00020\u00028Æ\u0002¢\u0006\u0006\u001a\u0004\b\u0003\u0010\u0004\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u001f"}, d2 = {"size", "", "Landroid/util/SparseIntArray;", "getSize", "(Landroid/util/SparseIntArray;)I", "contains", "", "key", "containsKey", "containsValue", "value", "forEach", "", "action", "Lkotlin/Function2;", "Lkotlin/ParameterName;", "name", "getOrDefault", "defaultValue", "getOrElse", "Lkotlin/Function0;", "isEmpty", "isNotEmpty", "keyIterator", "Lkotlin/collections/IntIterator;", "plus", "other", "putAll", "remove", "set", "valueIterator", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class SparseIntArrayKt {
|
||||
public static final int getSize(SparseIntArray sparseIntArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.size();
|
||||
}
|
||||
|
||||
public static final boolean contains(SparseIntArray sparseIntArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final void set(SparseIntArray sparseIntArray, int i, int i2) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
sparseIntArray.put(i, i2);
|
||||
}
|
||||
|
||||
public static final SparseIntArray plus(SparseIntArray sparseIntArray, SparseIntArray other) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
SparseIntArray sparseIntArray2 = new SparseIntArray(sparseIntArray.size() + other.size());
|
||||
putAll(sparseIntArray2, sparseIntArray);
|
||||
putAll(sparseIntArray2, other);
|
||||
return sparseIntArray2;
|
||||
}
|
||||
|
||||
public static final boolean containsKey(SparseIntArray sparseIntArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final boolean containsValue(SparseIntArray sparseIntArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.indexOfValue(i) >= 0;
|
||||
}
|
||||
|
||||
public static final int getOrDefault(SparseIntArray sparseIntArray, int i, int i2) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.get(i, i2);
|
||||
}
|
||||
|
||||
public static final int getOrElse(SparseIntArray sparseIntArray, int i, Function0<Integer> defaultValue) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(defaultValue, "defaultValue");
|
||||
int indexOfKey = sparseIntArray.indexOfKey(i);
|
||||
return indexOfKey >= 0 ? sparseIntArray.valueAt(indexOfKey) : defaultValue.invoke().intValue();
|
||||
}
|
||||
|
||||
public static final boolean isEmpty(SparseIntArray sparseIntArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.size() == 0;
|
||||
}
|
||||
|
||||
public static final boolean isNotEmpty(SparseIntArray sparseIntArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return sparseIntArray.size() != 0;
|
||||
}
|
||||
|
||||
public static final boolean remove(SparseIntArray sparseIntArray, int i, int i2) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
int indexOfKey = sparseIntArray.indexOfKey(i);
|
||||
if (indexOfKey < 0 || i2 != sparseIntArray.valueAt(indexOfKey)) {
|
||||
return false;
|
||||
}
|
||||
sparseIntArray.removeAt(indexOfKey);
|
||||
return true;
|
||||
}
|
||||
|
||||
public static final void forEach(SparseIntArray sparseIntArray, Function2<? super Integer, ? super Integer, Unit> action) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(action, "action");
|
||||
int size = sparseIntArray.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
action.invoke(Integer.valueOf(sparseIntArray.keyAt(i)), Integer.valueOf(sparseIntArray.valueAt(i)));
|
||||
}
|
||||
}
|
||||
|
||||
public static final IntIterator keyIterator(final SparseIntArray sparseIntArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return new IntIterator() { // from class: androidx.core.util.SparseIntArrayKt$keyIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseIntArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.IntIterator
|
||||
public int nextInt() {
|
||||
SparseIntArray sparseIntArray2 = sparseIntArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseIntArray2.keyAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final IntIterator valueIterator(final SparseIntArray sparseIntArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
return new IntIterator() { // from class: androidx.core.util.SparseIntArrayKt$valueIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseIntArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.IntIterator
|
||||
public int nextInt() {
|
||||
SparseIntArray sparseIntArray2 = sparseIntArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseIntArray2.valueAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final void putAll(SparseIntArray sparseIntArray, SparseIntArray other) {
|
||||
Intrinsics.checkNotNullParameter(sparseIntArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
int size = other.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
sparseIntArray.put(other.keyAt(i), other.valueAt(i));
|
||||
}
|
||||
}
|
||||
}
|
155
02-Easy5/E5/sources/androidx/core/util/SparseLongArrayKt.java
Normal file
155
02-Easy5/E5/sources/androidx/core/util/SparseLongArrayKt.java
Normal file
@ -0,0 +1,155 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import android.util.SparseLongArray;
|
||||
import kotlin.Metadata;
|
||||
import kotlin.Unit;
|
||||
import kotlin.collections.IntIterator;
|
||||
import kotlin.collections.LongIterator;
|
||||
import kotlin.jvm.functions.Function0;
|
||||
import kotlin.jvm.functions.Function2;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* compiled from: SparseLongArray.kt */
|
||||
@Metadata(d1 = {"\u0000D\n\u0000\n\u0002\u0010\b\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u000b\n\u0002\b\u0004\n\u0002\u0010\t\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0006\n\u0002\u0018\u0002\n\u0000\u001a\u0015\u0010\u0005\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0087\n\u001a\u0015\u0010\b\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0087\b\u001a\u0015\u0010\t\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\n\u001a\u00020\u000bH\u0087\b\u001aH\u0010\f\u001a\u00020\r*\u00020\u000226\u0010\u000e\u001a2\u0012\u0013\u0012\u00110\u0001¢\u0006\f\b\u0010\u0012\b\b\u0011\u0012\u0004\b\b(\u0007\u0012\u0013\u0012\u00110\u000b¢\u0006\f\b\u0010\u0012\b\b\u0011\u0012\u0004\b\b(\n\u0012\u0004\u0012\u00020\r0\u000fH\u0087\bø\u0001\u0000\u001a\u001d\u0010\u0012\u001a\u00020\u000b*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\u0013\u001a\u00020\u000bH\u0087\b\u001a&\u0010\u0014\u001a\u00020\u000b*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\f\u0010\u0013\u001a\b\u0012\u0004\u0012\u00020\u000b0\u0015H\u0087\bø\u0001\u0000\u001a\r\u0010\u0016\u001a\u00020\u0006*\u00020\u0002H\u0087\b\u001a\r\u0010\u0017\u001a\u00020\u0006*\u00020\u0002H\u0087\b\u001a\f\u0010\u0018\u001a\u00020\u0019*\u00020\u0002H\u0007\u001a\u0015\u0010\u001a\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001b\u001a\u00020\u0002H\u0087\u0002\u001a\u0014\u0010\u001c\u001a\u00020\r*\u00020\u00022\u0006\u0010\u001b\u001a\u00020\u0002H\u0007\u001a\u001c\u0010\u001d\u001a\u00020\u0006*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\n\u001a\u00020\u000bH\u0007\u001a\u001d\u0010\u001e\u001a\u00020\r*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u00012\u0006\u0010\n\u001a\u00020\u000bH\u0087\n\u001a\f\u0010\u001f\u001a\u00020 *\u00020\u0002H\u0007\"\u0016\u0010\u0000\u001a\u00020\u0001*\u00020\u00028Ç\u0002¢\u0006\u0006\u001a\u0004\b\u0003\u0010\u0004\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006!"}, d2 = {"size", "", "Landroid/util/SparseLongArray;", "getSize", "(Landroid/util/SparseLongArray;)I", "contains", "", "key", "containsKey", "containsValue", "value", "", "forEach", "", "action", "Lkotlin/Function2;", "Lkotlin/ParameterName;", "name", "getOrDefault", "defaultValue", "getOrElse", "Lkotlin/Function0;", "isEmpty", "isNotEmpty", "keyIterator", "Lkotlin/collections/IntIterator;", "plus", "other", "putAll", "remove", "set", "valueIterator", "Lkotlin/collections/LongIterator;", "core-ktx_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
|
||||
/* loaded from: classes.dex */
|
||||
public final class SparseLongArrayKt {
|
||||
public static final int getSize(SparseLongArray sparseLongArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.size();
|
||||
}
|
||||
|
||||
public static final boolean contains(SparseLongArray sparseLongArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final void set(SparseLongArray sparseLongArray, int i, long j) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
sparseLongArray.put(i, j);
|
||||
}
|
||||
|
||||
public static final SparseLongArray plus(SparseLongArray sparseLongArray, SparseLongArray other) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
SparseLongArray sparseLongArray2 = new SparseLongArray(sparseLongArray.size() + other.size());
|
||||
putAll(sparseLongArray2, sparseLongArray);
|
||||
putAll(sparseLongArray2, other);
|
||||
return sparseLongArray2;
|
||||
}
|
||||
|
||||
public static final boolean containsKey(SparseLongArray sparseLongArray, int i) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.indexOfKey(i) >= 0;
|
||||
}
|
||||
|
||||
public static final boolean containsValue(SparseLongArray sparseLongArray, long j) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.indexOfValue(j) >= 0;
|
||||
}
|
||||
|
||||
public static final long getOrDefault(SparseLongArray sparseLongArray, int i, long j) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.get(i, j);
|
||||
}
|
||||
|
||||
public static final long getOrElse(SparseLongArray sparseLongArray, int i, Function0<Long> defaultValue) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(defaultValue, "defaultValue");
|
||||
int indexOfKey = sparseLongArray.indexOfKey(i);
|
||||
return indexOfKey >= 0 ? sparseLongArray.valueAt(indexOfKey) : defaultValue.invoke().longValue();
|
||||
}
|
||||
|
||||
public static final boolean isEmpty(SparseLongArray sparseLongArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.size() == 0;
|
||||
}
|
||||
|
||||
public static final boolean isNotEmpty(SparseLongArray sparseLongArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return sparseLongArray.size() != 0;
|
||||
}
|
||||
|
||||
public static final boolean remove(SparseLongArray sparseLongArray, int i, long j) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
int indexOfKey = sparseLongArray.indexOfKey(i);
|
||||
if (indexOfKey < 0 || j != sparseLongArray.valueAt(indexOfKey)) {
|
||||
return false;
|
||||
}
|
||||
sparseLongArray.removeAt(indexOfKey);
|
||||
return true;
|
||||
}
|
||||
|
||||
public static final void forEach(SparseLongArray sparseLongArray, Function2<? super Integer, ? super Long, Unit> action) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(action, "action");
|
||||
int size = sparseLongArray.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
action.invoke(Integer.valueOf(sparseLongArray.keyAt(i)), Long.valueOf(sparseLongArray.valueAt(i)));
|
||||
}
|
||||
}
|
||||
|
||||
public static final IntIterator keyIterator(final SparseLongArray sparseLongArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return new IntIterator() { // from class: androidx.core.util.SparseLongArrayKt$keyIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseLongArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.IntIterator
|
||||
public int nextInt() {
|
||||
SparseLongArray sparseLongArray2 = sparseLongArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseLongArray2.keyAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final LongIterator valueIterator(final SparseLongArray sparseLongArray) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
return new LongIterator() { // from class: androidx.core.util.SparseLongArrayKt$valueIterator$1
|
||||
private int index;
|
||||
|
||||
public final int getIndex() {
|
||||
return this.index;
|
||||
}
|
||||
|
||||
public final void setIndex(int i) {
|
||||
this.index = i;
|
||||
}
|
||||
|
||||
@Override // java.util.Iterator
|
||||
public boolean hasNext() {
|
||||
return this.index < sparseLongArray.size();
|
||||
}
|
||||
|
||||
@Override // kotlin.collections.LongIterator
|
||||
public long nextLong() {
|
||||
SparseLongArray sparseLongArray2 = sparseLongArray;
|
||||
int i = this.index;
|
||||
this.index = i + 1;
|
||||
return sparseLongArray2.valueAt(i);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final void putAll(SparseLongArray sparseLongArray, SparseLongArray other) {
|
||||
Intrinsics.checkNotNullParameter(sparseLongArray, "<this>");
|
||||
Intrinsics.checkNotNullParameter(other, "other");
|
||||
int size = other.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
sparseLongArray.put(other.keyAt(i), other.valueAt(i));
|
||||
}
|
||||
}
|
||||
}
|
6
02-Easy5/E5/sources/androidx/core/util/Supplier.java
Normal file
6
02-Easy5/E5/sources/androidx/core/util/Supplier.java
Normal file
@ -0,0 +1,6 @@
|
||||
package androidx.core.util;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public interface Supplier<T> {
|
||||
T get();
|
||||
}
|
150
02-Easy5/E5/sources/androidx/core/util/TimeUtils.java
Normal file
150
02-Easy5/E5/sources/androidx/core/util/TimeUtils.java
Normal file
@ -0,0 +1,150 @@
|
||||
package androidx.core.util;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public final class TimeUtils {
|
||||
public static final int HUNDRED_DAY_FIELD_LEN = 19;
|
||||
private static final int SECONDS_PER_DAY = 86400;
|
||||
private static final int SECONDS_PER_HOUR = 3600;
|
||||
private static final int SECONDS_PER_MINUTE = 60;
|
||||
private static final Object sFormatSync = new Object();
|
||||
private static char[] sFormatStr = new char[24];
|
||||
|
||||
private static int accumField(int i, int i2, boolean z, int i3) {
|
||||
if (i > 99 || (z && i3 >= 3)) {
|
||||
return i2 + 3;
|
||||
}
|
||||
if (i > 9 || (z && i3 >= 2)) {
|
||||
return i2 + 2;
|
||||
}
|
||||
if (z || i > 0) {
|
||||
return i2 + 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
private static int printField(char[] cArr, int i, char c, int i2, boolean z, int i3) {
|
||||
int i4;
|
||||
if (!z && i <= 0) {
|
||||
return i2;
|
||||
}
|
||||
if ((!z || i3 < 3) && i <= 99) {
|
||||
i4 = i2;
|
||||
} else {
|
||||
int i5 = i / 100;
|
||||
cArr[i2] = (char) (i5 + 48);
|
||||
i4 = i2 + 1;
|
||||
i -= i5 * 100;
|
||||
}
|
||||
if ((z && i3 >= 2) || i > 9 || i2 != i4) {
|
||||
int i6 = i / 10;
|
||||
cArr[i4] = (char) (i6 + 48);
|
||||
i4++;
|
||||
i -= i6 * 10;
|
||||
}
|
||||
cArr[i4] = (char) (i + 48);
|
||||
cArr[i4 + 1] = c;
|
||||
return i4 + 2;
|
||||
}
|
||||
|
||||
private static int formatDurationLocked(long j, int i) {
|
||||
char c;
|
||||
int i2;
|
||||
int i3;
|
||||
int i4;
|
||||
int i5;
|
||||
int i6;
|
||||
long j2 = j;
|
||||
if (sFormatStr.length < i) {
|
||||
sFormatStr = new char[i];
|
||||
}
|
||||
char[] cArr = sFormatStr;
|
||||
if (j2 == 0) {
|
||||
int i7 = i - 1;
|
||||
while (i7 > 0) {
|
||||
cArr[0] = ' ';
|
||||
}
|
||||
cArr[0] = '0';
|
||||
return 1;
|
||||
}
|
||||
if (j2 > 0) {
|
||||
c = '+';
|
||||
} else {
|
||||
j2 = -j2;
|
||||
c = '-';
|
||||
}
|
||||
int i8 = (int) (j2 % 1000);
|
||||
int floor = (int) Math.floor(j2 / 1000);
|
||||
if (floor > SECONDS_PER_DAY) {
|
||||
i2 = floor / SECONDS_PER_DAY;
|
||||
floor -= SECONDS_PER_DAY * i2;
|
||||
} else {
|
||||
i2 = 0;
|
||||
}
|
||||
if (floor > SECONDS_PER_HOUR) {
|
||||
i3 = floor / SECONDS_PER_HOUR;
|
||||
floor -= i3 * SECONDS_PER_HOUR;
|
||||
} else {
|
||||
i3 = 0;
|
||||
}
|
||||
if (floor > 60) {
|
||||
int i9 = floor / 60;
|
||||
i4 = floor - (i9 * 60);
|
||||
i5 = i9;
|
||||
} else {
|
||||
i4 = floor;
|
||||
i5 = 0;
|
||||
}
|
||||
if (i != 0) {
|
||||
int accumField = accumField(i2, 1, false, 0);
|
||||
int accumField2 = accumField + accumField(i3, 1, accumField > 0, 2);
|
||||
int accumField3 = accumField2 + accumField(i5, 1, accumField2 > 0, 2);
|
||||
int accumField4 = accumField3 + accumField(i4, 1, accumField3 > 0, 2);
|
||||
i6 = 0;
|
||||
for (int accumField5 = accumField4 + accumField(i8, 2, true, accumField4 > 0 ? 3 : 0) + 1; accumField5 < i; accumField5++) {
|
||||
cArr[i6] = ' ';
|
||||
i6++;
|
||||
}
|
||||
} else {
|
||||
i6 = 0;
|
||||
}
|
||||
cArr[i6] = c;
|
||||
int i10 = i6 + 1;
|
||||
boolean z = i != 0;
|
||||
int printField = printField(cArr, i2, 'd', i10, false, 0);
|
||||
int printField2 = printField(cArr, i3, 'h', printField, printField != i10, z ? 2 : 0);
|
||||
int printField3 = printField(cArr, i5, 'm', printField2, printField2 != i10, z ? 2 : 0);
|
||||
int printField4 = printField(cArr, i4, 's', printField3, printField3 != i10, z ? 2 : 0);
|
||||
int printField5 = printField(cArr, i8, 'm', printField4, true, (!z || printField4 == i10) ? 0 : 3);
|
||||
cArr[printField5] = 's';
|
||||
return printField5 + 1;
|
||||
}
|
||||
|
||||
public static void formatDuration(long j, StringBuilder sb) {
|
||||
synchronized (sFormatSync) {
|
||||
sb.append(sFormatStr, 0, formatDurationLocked(j, 0));
|
||||
}
|
||||
}
|
||||
|
||||
public static void formatDuration(long j, PrintWriter printWriter, int i) {
|
||||
synchronized (sFormatSync) {
|
||||
printWriter.print(new String(sFormatStr, 0, formatDurationLocked(j, i)));
|
||||
}
|
||||
}
|
||||
|
||||
public static void formatDuration(long j, PrintWriter printWriter) {
|
||||
formatDuration(j, printWriter, 0);
|
||||
}
|
||||
|
||||
public static void formatDuration(long j, long j2, PrintWriter printWriter) {
|
||||
if (j == 0) {
|
||||
printWriter.print("--");
|
||||
} else {
|
||||
formatDuration(j - j2, printWriter, 0);
|
||||
}
|
||||
}
|
||||
|
||||
private TimeUtils() {
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user