mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2024-12-28 01:52:26 -06:00
322 lines
21 KiB
Java
322 lines
21 KiB
Java
package kotlin.collections;
|
|
|
|
import androidx.constraintlayout.widget.ConstraintLayout;
|
|
import androidx.exifinterface.media.ExifInterface;
|
|
import io.sentry.Session;
|
|
import java.util.ArrayList;
|
|
import java.util.Collection;
|
|
import java.util.Comparator;
|
|
import java.util.Iterator;
|
|
import java.util.List;
|
|
import kotlin.Metadata;
|
|
import kotlin.Unit;
|
|
import kotlin.comparisons.ComparisonsKt;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.Intrinsics;
|
|
import kotlin.random.Random;
|
|
import kotlin.ranges.IntRange;
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
/* compiled from: Collections.kt */
|
|
@Metadata(d1 = {"\u0000\u0086\u0001\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010\u001e\n\u0002\b\u0003\n\u0002\u0010\b\n\u0000\n\u0002\u0010 \n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010!\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0011\n\u0002\b\u0005\n\u0002\u0010\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0000\n\u0002\b\u0015\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u000f\n\u0002\b\u0007\n\u0002\u0010\u000b\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\u0006\n\u0002\u0010\u001c\n\u0000\n\u0002\u0018\u0002\n\u0000\u001aC\u0010\u000b\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u00072\u0006\u0010\f\u001a\u00020\u00062!\u0010\r\u001a\u001d\u0012\u0013\u0012\u00110\u0006¢\u0006\f\b\u000f\u0012\b\b\u0010\u0012\u0004\b\b(\u0011\u0012\u0004\u0012\u0002H\u00070\u000eH\u0087\bø\u0001\u0000\u001aC\u0010\u0012\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0013\"\u0004\b\u0000\u0010\u00072\u0006\u0010\f\u001a\u00020\u00062!\u0010\r\u001a\u001d\u0012\u0013\u0012\u00110\u0006¢\u0006\f\b\u000f\u0012\b\b\u0010\u0012\u0004\b\b(\u0011\u0012\u0004\u0012\u0002H\u00070\u000eH\u0087\bø\u0001\u0000\u001a\u001f\u0010\u0014\u001a\u0012\u0012\u0004\u0012\u0002H\u00070\u0015j\b\u0012\u0004\u0012\u0002H\u0007`\u0016\"\u0004\b\u0000\u0010\u0007H\u0087\b\u001a5\u0010\u0014\u001a\u0012\u0012\u0004\u0012\u0002H\u00070\u0015j\b\u0012\u0004\u0012\u0002H\u0007`\u0016\"\u0004\b\u0000\u0010\u00072\u0012\u0010\u0017\u001a\n\u0012\u0006\b\u0001\u0012\u0002H\u00070\u0018\"\u0002H\u0007¢\u0006\u0002\u0010\u0019\u001aN\u0010\u001a\u001a\b\u0012\u0004\u0012\u0002H\u001b0\b\"\u0004\b\u0000\u0010\u001b2\u0006\u0010\u001c\u001a\u00020\u00062\u001f\b\u0001\u0010\u001d\u001a\u0019\u0012\n\u0012\b\u0012\u0004\u0012\u0002H\u001b0\u0013\u0012\u0004\u0012\u00020\u001e0\u000e¢\u0006\u0002\b\u001fH\u0087\bø\u0001\u0000\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0002 \u0001\u001aF\u0010\u001a\u001a\b\u0012\u0004\u0012\u0002H\u001b0\b\"\u0004\b\u0000\u0010\u001b2\u001f\b\u0001\u0010\u001d\u001a\u0019\u0012\n\u0012\b\u0012\u0004\u0012\u0002H\u001b0\u0013\u0012\u0004\u0012\u00020\u001e0\u000e¢\u0006\u0002\b\u001fH\u0087\bø\u0001\u0000\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0001 \u0001\u001a!\u0010 \u001a\n\u0012\u0006\u0012\u0004\u0018\u00010!0\u00182\n\u0010\"\u001a\u0006\u0012\u0002\b\u00030\u0002H\u0000¢\u0006\u0002\u0010#\u001a3\u0010 \u001a\b\u0012\u0004\u0012\u0002H\u00070\u0018\"\u0004\b\u0000\u0010\u00072\n\u0010\"\u001a\u0006\u0012\u0002\b\u00030\u00022\f\u0010$\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0018H\u0000¢\u0006\u0002\u0010%\u001a\u0012\u0010&\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u0007\u001a\u0015\u0010'\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u0007H\u0087\b\u001a+\u0010'\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u00072\u0012\u0010\u0017\u001a\n\u0012\u0006\b\u0001\u0012\u0002H\u00070\u0018\"\u0002H\u0007¢\u0006\u0002\u0010(\u001a%\u0010)\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\b\b\u0000\u0010\u0007*\u00020!2\b\u0010*\u001a\u0004\u0018\u0001H\u0007¢\u0006\u0002\u0010+\u001a3\u0010)\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\b\b\u0000\u0010\u0007*\u00020!2\u0016\u0010\u0017\u001a\f\u0012\b\b\u0001\u0012\u0004\u0018\u0001H\u00070\u0018\"\u0004\u0018\u0001H\u0007¢\u0006\u0002\u0010(\u001a\u0015\u0010,\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0013\"\u0004\b\u0000\u0010\u0007H\u0087\b\u001a+\u0010,\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0013\"\u0004\b\u0000\u0010\u00072\u0012\u0010\u0017\u001a\n\u0012\u0006\b\u0001\u0012\u0002H\u00070\u0018\"\u0002H\u0007¢\u0006\u0002\u0010(\u001a%\u0010-\u001a\u00020\u001e2\u0006\u0010\f\u001a\u00020\u00062\u0006\u0010.\u001a\u00020\u00062\u0006\u0010/\u001a\u00020\u0006H\u0002¢\u0006\u0002\b0\u001a\b\u00101\u001a\u00020\u001eH\u0001\u001a\b\u00102\u001a\u00020\u001eH\u0001\u001a%\u00103\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0002\"\u0004\b\u0000\u0010\u0007*\n\u0012\u0006\b\u0001\u0012\u0002H\u00070\u0018H\u0000¢\u0006\u0002\u00104\u001aS\u00105\u001a\u00020\u0006\"\u0004\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070\b2\u0006\u0010*\u001a\u0002H\u00072\u001a\u00106\u001a\u0016\u0012\u0006\b\u0000\u0012\u0002H\u000707j\n\u0012\u0006\b\u0000\u0012\u0002H\u0007`82\b\b\u0002\u0010.\u001a\u00020\u00062\b\b\u0002\u0010/\u001a\u00020\u0006¢\u0006\u0002\u00109\u001a>\u00105\u001a\u00020\u0006\"\u0004\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070\b2\b\b\u0002\u0010.\u001a\u00020\u00062\b\b\u0002\u0010/\u001a\u00020\u00062\u0012\u0010:\u001a\u000e\u0012\u0004\u0012\u0002H\u0007\u0012\u0004\u0012\u00020\u00060\u000e\u001aE\u00105\u001a\u00020\u0006\"\u000e\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070;*\n\u0012\u0006\u0012\u0004\u0018\u0001H\u00070\b2\b\u0010*\u001a\u0004\u0018\u0001H\u00072\b\b\u0002\u0010.\u001a\u00020\u00062\b\b\u0002\u0010/\u001a\u00020\u0006¢\u0006\u0002\u0010<\u001ag\u0010=\u001a\u00020\u0006\"\u0004\b\u0000\u0010\u0007\"\u000e\b\u0001\u0010>*\b\u0012\u0004\u0012\u0002H>0;*\b\u0012\u0004\u0012\u0002H\u00070\b2\b\u0010?\u001a\u0004\u0018\u0001H>2\b\b\u0002\u0010.\u001a\u00020\u00062\b\b\u0002\u0010/\u001a\u00020\u00062\u0016\b\u0004\u0010@\u001a\u0010\u0012\u0004\u0012\u0002H\u0007\u0012\u0006\u0012\u0004\u0018\u0001H>0\u000eH\u0086\bø\u0001\u0000¢\u0006\u0002\u0010A\u001a,\u0010B\u001a\u00020C\"\t\b\u0000\u0010\u0007¢\u0006\u0002\bD*\b\u0012\u0004\u0012\u0002H\u00070\u00022\f\u0010\u0017\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0002H\u0087\b\u001a;\u0010E\u001a\u0002HF\"\u0010\b\u0000\u0010G*\u0006\u0012\u0002\b\u00030\u0002*\u0002HF\"\u0004\b\u0001\u0010F*\u0002HG2\f\u0010H\u001a\b\u0012\u0004\u0012\u0002HF0IH\u0087\bø\u0001\u0000¢\u0006\u0002\u0010J\u001a\u0019\u0010K\u001a\u00020C\"\u0004\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070\u0002H\u0087\b\u001a,\u0010L\u001a\u00020C\"\u0004\b\u0000\u0010\u0007*\n\u0012\u0004\u0012\u0002H\u0007\u0018\u00010\u0002H\u0087\b\u0082\u0002\u000e\n\f\b\u0000\u0012\u0002\u0018\u0001\u001a\u0004\b\u0003\u0010\u0000\u001a\u001e\u0010M\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070\bH\u0000\u001a!\u0010N\u001a\b\u0012\u0004\u0012\u0002H\u00070\u0002\"\u0004\b\u0000\u0010\u0007*\n\u0012\u0004\u0012\u0002H\u0007\u0018\u00010\u0002H\u0087\b\u001a!\u0010N\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u0007*\n\u0012\u0004\u0012\u0002H\u0007\u0018\u00010\bH\u0087\b\u001a&\u0010O\u001a\b\u0012\u0004\u0012\u0002H\u00070\b\"\u0004\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070P2\u0006\u0010Q\u001a\u00020RH\u0007\"\u0019\u0010\u0000\u001a\u00020\u0001*\u0006\u0012\u0002\b\u00030\u00028F¢\u0006\u0006\u001a\u0004\b\u0003\u0010\u0004\"!\u0010\u0005\u001a\u00020\u0006\"\u0004\b\u0000\u0010\u0007*\b\u0012\u0004\u0012\u0002H\u00070\b8F¢\u0006\u0006\u001a\u0004\b\t\u0010\n\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006S"}, d2 = {"indices", "Lkotlin/ranges/IntRange;", "", "getIndices", "(Ljava/util/Collection;)Lkotlin/ranges/IntRange;", "lastIndex", "", ExifInterface.GPS_DIRECTION_TRUE, "", "getLastIndex", "(Ljava/util/List;)I", "List", "size", Session.JsonKeys.INIT, "Lkotlin/Function1;", "Lkotlin/ParameterName;", "name", "index", "MutableList", "", "arrayListOf", "Ljava/util/ArrayList;", "Lkotlin/collections/ArrayList;", "elements", "", "([Ljava/lang/Object;)Ljava/util/ArrayList;", "buildList", ExifInterface.LONGITUDE_EAST, "capacity", "builderAction", "", "Lkotlin/ExtensionFunctionType;", "collectionToArrayCommonImpl", "", "collection", "(Ljava/util/Collection;)[Ljava/lang/Object;", "array", "(Ljava/util/Collection;[Ljava/lang/Object;)[Ljava/lang/Object;", "emptyList", "listOf", "([Ljava/lang/Object;)Ljava/util/List;", "listOfNotNull", "element", "(Ljava/lang/Object;)Ljava/util/List;", "mutableListOf", "rangeCheck", "fromIndex", "toIndex", "rangeCheck$CollectionsKt__CollectionsKt", "throwCountOverflow", "throwIndexOverflow", "asCollection", "([Ljava/lang/Object;)Ljava/util/Collection;", "binarySearch", "comparator", "Ljava/util/Comparator;", "Lkotlin/Comparator;", "(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;II)I", "comparison", "", "(Ljava/util/List;Ljava/lang/Comparable;II)I", "binarySearchBy", "K", "key", "selector", "(Ljava/util/List;Ljava/lang/Comparable;IILkotlin/jvm/functions/Function1;)I", "containsAll", "", "Lkotlin/internal/OnlyInputTypes;", "ifEmpty", "R", "C", "defaultValue", "Lkotlin/Function0;", "(Ljava/util/Collection;Lkotlin/jvm/functions/Function0;)Ljava/lang/Object;", "isNotEmpty", "isNullOrEmpty", "optimizeReadOnlyList", "orEmpty", "shuffled", "", "random", "Lkotlin/random/Random;", "kotlin-stdlib"}, k = 5, mv = {1, 9, 0}, xi = ConstraintLayout.LayoutParams.Table.LAYOUT_EDITOR_ABSOLUTEX, xs = "kotlin/collections/CollectionsKt")
|
|
/* loaded from: classes3.dex */
|
|
public class CollectionsKt__CollectionsKt extends CollectionsKt__CollectionsJVMKt {
|
|
public static final <T> Collection<T> asCollection(T[] tArr) {
|
|
Intrinsics.checkNotNullParameter(tArr, "<this>");
|
|
return new ArrayAsCollection(tArr, false);
|
|
}
|
|
|
|
public static final <T> List<T> emptyList() {
|
|
return EmptyList.INSTANCE;
|
|
}
|
|
|
|
public static final <T> List<T> listOf(T... elements) {
|
|
Intrinsics.checkNotNullParameter(elements, "elements");
|
|
return elements.length > 0 ? ArraysKt.asList(elements) : CollectionsKt.emptyList();
|
|
}
|
|
|
|
private static final <T> List<T> listOf() {
|
|
return CollectionsKt.emptyList();
|
|
}
|
|
|
|
private static final <T> List<T> mutableListOf() {
|
|
return new ArrayList();
|
|
}
|
|
|
|
private static final <T> ArrayList<T> arrayListOf() {
|
|
return new ArrayList<>();
|
|
}
|
|
|
|
public static final <T> List<T> mutableListOf(T... elements) {
|
|
Intrinsics.checkNotNullParameter(elements, "elements");
|
|
return elements.length == 0 ? new ArrayList() : new ArrayList(new ArrayAsCollection(elements, true));
|
|
}
|
|
|
|
public static final <T> ArrayList<T> arrayListOf(T... elements) {
|
|
Intrinsics.checkNotNullParameter(elements, "elements");
|
|
return elements.length == 0 ? new ArrayList<>() : new ArrayList<>(new ArrayAsCollection(elements, true));
|
|
}
|
|
|
|
public static final <T> List<T> listOfNotNull(T t) {
|
|
return t != null ? CollectionsKt.listOf(t) : CollectionsKt.emptyList();
|
|
}
|
|
|
|
public static final <T> List<T> listOfNotNull(T... elements) {
|
|
Intrinsics.checkNotNullParameter(elements, "elements");
|
|
return ArraysKt.filterNotNull(elements);
|
|
}
|
|
|
|
private static final <T> List<T> List(int i, Function1<? super Integer, ? extends T> init) {
|
|
Intrinsics.checkNotNullParameter(init, "init");
|
|
ArrayList arrayList = new ArrayList(i);
|
|
for (int i2 = 0; i2 < i; i2++) {
|
|
arrayList.add(init.invoke(Integer.valueOf(i2)));
|
|
}
|
|
return arrayList;
|
|
}
|
|
|
|
private static final <T> List<T> MutableList(int i, Function1<? super Integer, ? extends T> init) {
|
|
Intrinsics.checkNotNullParameter(init, "init");
|
|
ArrayList arrayList = new ArrayList(i);
|
|
for (int i2 = 0; i2 < i; i2++) {
|
|
arrayList.add(init.invoke(Integer.valueOf(i2)));
|
|
}
|
|
return arrayList;
|
|
}
|
|
|
|
private static final <E> List<E> buildList(Function1<? super List<E>, Unit> builderAction) {
|
|
Intrinsics.checkNotNullParameter(builderAction, "builderAction");
|
|
List createListBuilder = CollectionsKt.createListBuilder();
|
|
builderAction.invoke(createListBuilder);
|
|
return CollectionsKt.build(createListBuilder);
|
|
}
|
|
|
|
private static final <E> List<E> buildList(int i, Function1<? super List<E>, Unit> builderAction) {
|
|
Intrinsics.checkNotNullParameter(builderAction, "builderAction");
|
|
List createListBuilder = CollectionsKt.createListBuilder(i);
|
|
builderAction.invoke(createListBuilder);
|
|
return CollectionsKt.build(createListBuilder);
|
|
}
|
|
|
|
public static final IntRange getIndices(Collection<?> collection) {
|
|
Intrinsics.checkNotNullParameter(collection, "<this>");
|
|
return new IntRange(0, collection.size() - 1);
|
|
}
|
|
|
|
public static final <T> int getLastIndex(List<? extends T> list) {
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
return list.size() - 1;
|
|
}
|
|
|
|
private static final <T> boolean isNotEmpty(Collection<? extends T> collection) {
|
|
Intrinsics.checkNotNullParameter(collection, "<this>");
|
|
return !collection.isEmpty();
|
|
}
|
|
|
|
private static final <T> boolean isNullOrEmpty(Collection<? extends T> collection) {
|
|
return collection == null || collection.isEmpty();
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
private static final <T> Collection<T> orEmpty(Collection<? extends T> collection) {
|
|
return collection == 0 ? CollectionsKt.emptyList() : collection;
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
private static final <T> List<T> orEmpty(List<? extends T> list) {
|
|
return list == 0 ? CollectionsKt.emptyList() : list;
|
|
}
|
|
|
|
/* JADX WARN: Incorrect types in method signature: <C::Ljava/util/Collection<*>;:TR;R:Ljava/lang/Object;>(TC;Lkotlin/jvm/functions/Function0<+TR;>;)TR; */
|
|
private static final Object ifEmpty(Collection collection, Function0 defaultValue) {
|
|
Intrinsics.checkNotNullParameter(defaultValue, "defaultValue");
|
|
return collection.isEmpty() ? defaultValue.invoke() : collection;
|
|
}
|
|
|
|
private static final <T> boolean containsAll(Collection<? extends T> collection, Collection<? extends T> elements) {
|
|
Intrinsics.checkNotNullParameter(collection, "<this>");
|
|
Intrinsics.checkNotNullParameter(elements, "elements");
|
|
return collection.containsAll(elements);
|
|
}
|
|
|
|
public static final <T> List<T> shuffled(Iterable<? extends T> iterable, Random random) {
|
|
Intrinsics.checkNotNullParameter(iterable, "<this>");
|
|
Intrinsics.checkNotNullParameter(random, "random");
|
|
List<T> mutableList = CollectionsKt.toMutableList(iterable);
|
|
CollectionsKt.shuffle(mutableList, random);
|
|
return mutableList;
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static final <T> List<T> optimizeReadOnlyList(List<? extends T> list) {
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
int size = list.size();
|
|
if (size != 0) {
|
|
return size != 1 ? list : CollectionsKt.listOf(list.get(0));
|
|
}
|
|
return CollectionsKt.emptyList();
|
|
}
|
|
|
|
public static /* synthetic */ int binarySearch$default(List list, Comparable comparable, int i, int i2, int i3, Object obj) {
|
|
if ((i3 & 2) != 0) {
|
|
i = 0;
|
|
}
|
|
if ((i3 & 4) != 0) {
|
|
i2 = list.size();
|
|
}
|
|
return CollectionsKt.binarySearch((List<? extends Comparable>) list, comparable, i, i2);
|
|
}
|
|
|
|
public static final <T extends Comparable<? super T>> int binarySearch(List<? extends T> list, T t, int i, int i2) {
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
rangeCheck$CollectionsKt__CollectionsKt(list.size(), i, i2);
|
|
int i3 = i2 - 1;
|
|
while (i <= i3) {
|
|
int i4 = (i + i3) >>> 1;
|
|
int compareValues = ComparisonsKt.compareValues(list.get(i4), t);
|
|
if (compareValues < 0) {
|
|
i = i4 + 1;
|
|
} else {
|
|
if (compareValues <= 0) {
|
|
return i4;
|
|
}
|
|
i3 = i4 - 1;
|
|
}
|
|
}
|
|
return -(i + 1);
|
|
}
|
|
|
|
public static /* synthetic */ int binarySearch$default(List list, Object obj, Comparator comparator, int i, int i2, int i3, Object obj2) {
|
|
if ((i3 & 4) != 0) {
|
|
i = 0;
|
|
}
|
|
if ((i3 & 8) != 0) {
|
|
i2 = list.size();
|
|
}
|
|
return CollectionsKt.binarySearch(list, obj, comparator, i, i2);
|
|
}
|
|
|
|
public static final <T> int binarySearch(List<? extends T> list, T t, Comparator<? super T> comparator, int i, int i2) {
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
Intrinsics.checkNotNullParameter(comparator, "comparator");
|
|
rangeCheck$CollectionsKt__CollectionsKt(list.size(), i, i2);
|
|
int i3 = i2 - 1;
|
|
while (i <= i3) {
|
|
int i4 = (i + i3) >>> 1;
|
|
int compare = comparator.compare(list.get(i4), t);
|
|
if (compare < 0) {
|
|
i = i4 + 1;
|
|
} else {
|
|
if (compare <= 0) {
|
|
return i4;
|
|
}
|
|
i3 = i4 - 1;
|
|
}
|
|
}
|
|
return -(i + 1);
|
|
}
|
|
|
|
public static /* synthetic */ int binarySearchBy$default(List list, Comparable comparable, int i, int i2, Function1 selector, int i3, Object obj) {
|
|
if ((i3 & 2) != 0) {
|
|
i = 0;
|
|
}
|
|
if ((i3 & 4) != 0) {
|
|
i2 = list.size();
|
|
}
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
Intrinsics.checkNotNullParameter(selector, "selector");
|
|
return CollectionsKt.binarySearch(list, i, i2, new CollectionsKt__CollectionsKt$binarySearchBy$1(selector, comparable));
|
|
}
|
|
|
|
public static final <T, K extends Comparable<? super K>> int binarySearchBy(List<? extends T> list, K k, int i, int i2, Function1<? super T, ? extends K> selector) {
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
Intrinsics.checkNotNullParameter(selector, "selector");
|
|
return CollectionsKt.binarySearch(list, i, i2, new CollectionsKt__CollectionsKt$binarySearchBy$1(selector, k));
|
|
}
|
|
|
|
public static /* synthetic */ int binarySearch$default(List list, int i, int i2, Function1 function1, int i3, Object obj) {
|
|
if ((i3 & 1) != 0) {
|
|
i = 0;
|
|
}
|
|
if ((i3 & 2) != 0) {
|
|
i2 = list.size();
|
|
}
|
|
return CollectionsKt.binarySearch(list, i, i2, function1);
|
|
}
|
|
|
|
public static final <T> int binarySearch(List<? extends T> list, int i, int i2, Function1<? super T, Integer> comparison) {
|
|
Intrinsics.checkNotNullParameter(list, "<this>");
|
|
Intrinsics.checkNotNullParameter(comparison, "comparison");
|
|
rangeCheck$CollectionsKt__CollectionsKt(list.size(), i, i2);
|
|
int i3 = i2 - 1;
|
|
while (i <= i3) {
|
|
int i4 = (i + i3) >>> 1;
|
|
int intValue = comparison.invoke(list.get(i4)).intValue();
|
|
if (intValue < 0) {
|
|
i = i4 + 1;
|
|
} else {
|
|
if (intValue <= 0) {
|
|
return i4;
|
|
}
|
|
i3 = i4 - 1;
|
|
}
|
|
}
|
|
return -(i + 1);
|
|
}
|
|
|
|
private static final void rangeCheck$CollectionsKt__CollectionsKt(int i, int i2, int i3) {
|
|
if (i2 > i3) {
|
|
throw new IllegalArgumentException("fromIndex (" + i2 + ") is greater than toIndex (" + i3 + ").");
|
|
}
|
|
if (i2 < 0) {
|
|
throw new IndexOutOfBoundsException("fromIndex (" + i2 + ") is less than zero.");
|
|
}
|
|
if (i3 > i) {
|
|
throw new IndexOutOfBoundsException("toIndex (" + i3 + ") is greater than size (" + i + ").");
|
|
}
|
|
}
|
|
|
|
public static final void throwIndexOverflow() {
|
|
throw new ArithmeticException("Index overflow has happened.");
|
|
}
|
|
|
|
public static final void throwCountOverflow() {
|
|
throw new ArithmeticException("Count overflow has happened.");
|
|
}
|
|
|
|
public static final Object[] collectionToArrayCommonImpl(Collection<?> collection) {
|
|
Intrinsics.checkNotNullParameter(collection, "collection");
|
|
int i = 0;
|
|
if (collection.isEmpty()) {
|
|
return new Object[0];
|
|
}
|
|
Object[] objArr = new Object[collection.size()];
|
|
Iterator<?> it = collection.iterator();
|
|
while (it.hasNext()) {
|
|
objArr[i] = it.next();
|
|
i++;
|
|
}
|
|
return objArr;
|
|
}
|
|
|
|
public static final <T> T[] collectionToArrayCommonImpl(Collection<?> collection, T[] array) {
|
|
Intrinsics.checkNotNullParameter(collection, "collection");
|
|
Intrinsics.checkNotNullParameter(array, "array");
|
|
int i = 0;
|
|
if (collection.isEmpty()) {
|
|
return (T[]) CollectionsKt.terminateCollectionToArray(0, array);
|
|
}
|
|
int length = array.length;
|
|
Object[] objArr = array;
|
|
if (length < collection.size()) {
|
|
objArr = (T[]) ArraysKt.arrayOfNulls(array, collection.size());
|
|
}
|
|
Iterator<?> it = collection.iterator();
|
|
while (it.hasNext()) {
|
|
objArr[i] = it.next();
|
|
i++;
|
|
}
|
|
return (T[]) CollectionsKt.terminateCollectionToArray(collection.size(), objArr);
|
|
}
|
|
}
|