jimu-decompiled/sources/com/google/common/collect/ContiguousSet.java
2025-05-13 19:24:51 +02:00

104 lines
4.1 KiB
Java

package com.google.common.collect;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableSortedSet;
import java.lang.Comparable;
import java.util.NoSuchElementException;
/* loaded from: classes.dex */
public abstract class ContiguousSet<C extends Comparable> extends ImmutableSortedSet<C> {
final DiscreteDomain<C> domain;
ContiguousSet(DiscreteDomain<C> discreteDomain) {
super(Ordering.c());
this.domain = discreteDomain;
}
@Deprecated
public static <E> ImmutableSortedSet.Builder<E> builder() {
throw new UnsupportedOperationException();
}
public static <C extends Comparable> ContiguousSet<C> create(Range<C> range, DiscreteDomain<C> discreteDomain) {
Preconditions.a(range);
Preconditions.a(discreteDomain);
try {
Range<C> intersection = !range.hasLowerBound() ? range.intersection(Range.atLeast(discreteDomain.b())) : range;
if (!range.hasUpperBound()) {
intersection = intersection.intersection(Range.atMost(discreteDomain.a()));
}
return intersection.isEmpty() || Range.compareOrThrow(range.lowerBound.c(discreteDomain), range.upperBound.b(discreteDomain)) > 0 ? new EmptyContiguousSet(discreteDomain) : new RegularContiguousSet(intersection, discreteDomain);
} catch (NoSuchElementException e) {
throw new IllegalArgumentException(e);
}
}
@Override // com.google.common.collect.ImmutableSortedSet
ImmutableSortedSet<C> createDescendingSet() {
return new DescendingImmutableSortedSet(this);
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.common.collect.ImmutableSortedSet
public abstract ContiguousSet<C> headSetImpl(C c, boolean z);
public abstract ContiguousSet<C> intersection(ContiguousSet<C> contiguousSet);
public abstract Range<C> range();
public abstract Range<C> range(BoundType boundType, BoundType boundType2);
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.common.collect.ImmutableSortedSet
public abstract ContiguousSet<C> subSetImpl(C c, boolean z, C c2, boolean z2);
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.common.collect.ImmutableSortedSet
public abstract ContiguousSet<C> tailSetImpl(C c, boolean z);
@Override // java.util.AbstractCollection
public String toString() {
return range().toString();
}
@Override // com.google.common.collect.ImmutableSortedSet, java.util.NavigableSet, java.util.SortedSet
public ContiguousSet<C> headSet(C c) {
Preconditions.a(c);
return headSetImpl((ContiguousSet<C>) c, false);
}
@Override // com.google.common.collect.ImmutableSortedSet, java.util.NavigableSet, java.util.SortedSet
public ContiguousSet<C> subSet(C c, C c2) {
Preconditions.a(c);
Preconditions.a(c2);
Preconditions.a(comparator().compare(c, c2) <= 0);
return subSetImpl((boolean) c, true, (boolean) c2, false);
}
@Override // com.google.common.collect.ImmutableSortedSet, java.util.NavigableSet, java.util.SortedSet
public ContiguousSet<C> tailSet(C c) {
Preconditions.a(c);
return tailSetImpl((ContiguousSet<C>) c, true);
}
@Override // com.google.common.collect.ImmutableSortedSet, java.util.NavigableSet
public ContiguousSet<C> headSet(C c, boolean z) {
Preconditions.a(c);
return headSetImpl((ContiguousSet<C>) c, z);
}
@Override // com.google.common.collect.ImmutableSortedSet, java.util.NavigableSet
public ContiguousSet<C> tailSet(C c, boolean z) {
Preconditions.a(c);
return tailSetImpl((ContiguousSet<C>) c, z);
}
@Override // com.google.common.collect.ImmutableSortedSet, java.util.NavigableSet
public ContiguousSet<C> subSet(C c, boolean z, C c2, boolean z2) {
Preconditions.a(c);
Preconditions.a(c2);
Preconditions.a(comparator().compare(c, c2) <= 0);
return subSetImpl((boolean) c, z, (boolean) c2, z2);
}
}