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

90 lines
2.2 KiB
Java

package com.google.common.collect;
import java.lang.Comparable;
import java.util.Iterator;
/* loaded from: classes.dex */
abstract class AbstractRangeSet<C extends Comparable> implements RangeSet<C> {
AbstractRangeSet() {
}
public abstract void add(Range<C> range);
public void addAll(RangeSet<C> rangeSet) {
addAll(rangeSet.asRanges());
}
public void clear() {
remove(Range.all());
}
public boolean contains(C c) {
return rangeContaining(c) != null;
}
@Override // com.google.common.collect.RangeSet
public abstract boolean encloses(Range<C> range);
public boolean enclosesAll(RangeSet<C> rangeSet) {
return enclosesAll(rangeSet.asRanges());
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof RangeSet) {
return asRanges().equals(((RangeSet) obj).asRanges());
}
return false;
}
public final int hashCode() {
return asRanges().hashCode();
}
public abstract boolean intersects(Range<C> range);
@Override // com.google.common.collect.RangeSet
public boolean isEmpty() {
return asRanges().isEmpty();
}
public abstract Range<C> rangeContaining(C c);
public abstract void remove(Range<C> range);
@Override // com.google.common.collect.RangeSet
public void removeAll(RangeSet<C> rangeSet) {
removeAll(rangeSet.asRanges());
}
public final String toString() {
return asRanges().toString();
}
public void addAll(Iterable<Range<C>> iterable) {
Iterator<Range<C>> it = iterable.iterator();
while (it.hasNext()) {
add(it.next());
}
}
public boolean enclosesAll(Iterable<Range<C>> iterable) {
Iterator<Range<C>> it = iterable.iterator();
while (it.hasNext()) {
if (!encloses(it.next())) {
return false;
}
}
return true;
}
public void removeAll(Iterable<Range<C>> iterable) {
Iterator<Range<C>> it = iterable.iterator();
while (it.hasNext()) {
remove(it.next());
}
}
}