mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2024-12-25 08:32:38 -06:00
115 lines
5.2 KiB
Java
115 lines
5.2 KiB
Java
package kotlin.ranges;
|
|
|
|
import java.util.Iterator;
|
|
import kotlin.Metadata;
|
|
import kotlin.internal.ProgressionUtilKt;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import kotlin.jvm.internal.markers.KMappedMarker;
|
|
|
|
/* compiled from: Progressions.kt */
|
|
@Metadata(d1 = {"\u00002\n\u0002\u0018\u0002\n\u0002\u0010\u001c\n\u0002\u0010\t\n\u0002\b\u000b\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u0000\n\u0000\n\u0002\u0010\b\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0002\b\u0002\b\u0016\u0018\u0000 \u00182\b\u0012\u0004\u0012\u00020\u00020\u0001:\u0001\u0018B\u001f\b\u0000\u0012\u0006\u0010\u0003\u001a\u00020\u0002\u0012\u0006\u0010\u0004\u001a\u00020\u0002\u0012\u0006\u0010\u0005\u001a\u00020\u0002¢\u0006\u0002\u0010\u0006J\u0013\u0010\r\u001a\u00020\u000e2\b\u0010\u000f\u001a\u0004\u0018\u00010\u0010H\u0096\u0002J\b\u0010\u0011\u001a\u00020\u0012H\u0016J\b\u0010\u0013\u001a\u00020\u000eH\u0016J\t\u0010\u0014\u001a\u00020\u0015H\u0096\u0002J\b\u0010\u0016\u001a\u00020\u0017H\u0016R\u0011\u0010\u0007\u001a\u00020\u0002¢\u0006\b\n\u0000\u001a\u0004\b\b\u0010\tR\u0011\u0010\n\u001a\u00020\u0002¢\u0006\b\n\u0000\u001a\u0004\b\u000b\u0010\tR\u0011\u0010\u0005\u001a\u00020\u0002¢\u0006\b\n\u0000\u001a\u0004\b\f\u0010\t¨\u0006\u0019"}, d2 = {"Lkotlin/ranges/LongProgression;", "", "", "start", "endInclusive", "step", "(JJJ)V", "first", "getFirst", "()J", "last", "getLast", "getStep", "equals", "", "other", "", "hashCode", "", "isEmpty", "iterator", "Lkotlin/collections/LongIterator;", "toString", "", "Companion", "kotlin-stdlib"}, k = 1, mv = {1, 9, 0}, xi = 48)
|
|
/* loaded from: classes3.dex */
|
|
public class LongProgression implements Iterable<Long>, KMappedMarker {
|
|
|
|
/* renamed from: Companion, reason: from kotlin metadata */
|
|
public static final Companion INSTANCE = new Companion(null);
|
|
private final long first;
|
|
private final long last;
|
|
private final long step;
|
|
|
|
public final long getFirst() {
|
|
return this.first;
|
|
}
|
|
|
|
public final long getLast() {
|
|
return this.last;
|
|
}
|
|
|
|
public final long getStep() {
|
|
return this.step;
|
|
}
|
|
|
|
public boolean isEmpty() {
|
|
long j = this.step;
|
|
long j2 = this.first;
|
|
long j3 = this.last;
|
|
if (j > 0) {
|
|
if (j2 > j3) {
|
|
return true;
|
|
}
|
|
} else if (j2 < j3) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public LongProgression(long j, long j2, long j3) {
|
|
if (j3 == 0) {
|
|
throw new IllegalArgumentException("Step must be non-zero.");
|
|
}
|
|
if (j3 == Long.MIN_VALUE) {
|
|
throw new IllegalArgumentException("Step must be greater than Long.MIN_VALUE to avoid overflow on negation.");
|
|
}
|
|
this.first = j;
|
|
this.last = ProgressionUtilKt.getProgressionLastElement(j, j2, j3);
|
|
this.step = j3;
|
|
}
|
|
|
|
@Override // java.lang.Iterable
|
|
public Iterator<Long> iterator() {
|
|
return new LongProgressionIterator(this.first, this.last, this.step);
|
|
}
|
|
|
|
public boolean equals(Object other) {
|
|
if (other instanceof LongProgression) {
|
|
if (!isEmpty() || !((LongProgression) other).isEmpty()) {
|
|
LongProgression longProgression = (LongProgression) other;
|
|
if (this.first != longProgression.first || this.last != longProgression.last || this.step != longProgression.step) {
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public int hashCode() {
|
|
if (isEmpty()) {
|
|
return -1;
|
|
}
|
|
long j = 31;
|
|
long j2 = this.first;
|
|
long j3 = this.last;
|
|
long j4 = j * (((j2 ^ (j2 >>> 32)) * j) + (j3 ^ (j3 >>> 32)));
|
|
long j5 = this.step;
|
|
return (int) (j4 + (j5 ^ (j5 >>> 32)));
|
|
}
|
|
|
|
public String toString() {
|
|
StringBuilder append;
|
|
long j;
|
|
if (this.step > 0) {
|
|
append = new StringBuilder().append(this.first).append("..").append(this.last).append(" step ");
|
|
j = this.step;
|
|
} else {
|
|
append = new StringBuilder().append(this.first).append(" downTo ").append(this.last).append(" step ");
|
|
j = -this.step;
|
|
}
|
|
return append.append(j).toString();
|
|
}
|
|
|
|
/* compiled from: Progressions.kt */
|
|
@Metadata(d1 = {"\u0000\u001a\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\t\n\u0002\b\u0003\b\u0086\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002J\u001e\u0010\u0003\u001a\u00020\u00042\u0006\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0007\u001a\u00020\u00062\u0006\u0010\b\u001a\u00020\u0006¨\u0006\t"}, d2 = {"Lkotlin/ranges/LongProgression$Companion;", "", "()V", "fromClosedRange", "Lkotlin/ranges/LongProgression;", "rangeStart", "", "rangeEnd", "step", "kotlin-stdlib"}, k = 1, mv = {1, 9, 0}, xi = 48)
|
|
/* loaded from: classes3.dex */
|
|
public static final class Companion {
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
private Companion() {
|
|
}
|
|
|
|
public final LongProgression fromClosedRange(long rangeStart, long rangeEnd, long step) {
|
|
return new LongProgression(rangeStart, rangeEnd, step);
|
|
}
|
|
}
|
|
}
|