Package com.google.common.collect
Class TreeRangeSet<C extends Comparable<?>>
java.lang.Object
com.google.common.collect.AbstractRangeSet<C>
com.google.common.collect.TreeRangeSet<C>
- All Implemented Interfaces:
RangeSet<C>,Serializable
- Direct Known Subclasses:
TreeRangeSet.Complement,TreeRangeSet.SubRangeSet
public class TreeRangeSet<C extends Comparable<?>>
extends AbstractRangeSet<C>
implements Serializable
- Since:
- 14.0
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) final classprivate final classprivate static final classTreeRangeSet.ComplementRangesByLowerBound<C extends Comparable<?>>(package private) static final classTreeRangeSet.RangesByUpperBound<C extends Comparable<?>>private final classprivate static final classTreeRangeSet.SubRangeSetRangesByLowerBound<C extends Comparable<?>> -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateTreeRangeSet(NavigableMap<Cut<C>, Range<C>> rangesByLowerCut) -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds the specified range to thisRangeSet(optional operation).Returns a descending view of the disconnected ranges that make up this range set.asRanges()Returns a view of the disconnected ranges that make up this range set.Returns a view of the complement of thisRangeSet.static <C extends Comparable<?>>
TreeRangeSet<C>create()Creates an emptyTreeRangeSetinstance.static <C extends Comparable<?>>
TreeRangeSet<C>Returns aTreeRangeSetinitialized with the ranges in the specified range set.static <C extends Comparable<?>>
TreeRangeSet<C>Returns aTreeRangeSetrepresenting the union of the specified ranges.booleanReturnstrueif there exists a member range in this range set which encloses the specified range.booleanintersects(Range<C> range) Returnstrueif there exists a non-empty range enclosed by both a member range in this range set and the specified range.rangeContaining(C value) Returns the unique range from this range set that containsvalue, ornullif this range set does not containvalue.rangeEnclosing(Range<C> range) voidRemoves the specified range from thisRangeSet(optional operation).private voidreplaceRangeWithSameLowerBound(Range<C> range) span()Returns the minimal range which encloses all ranges in this range set.subRangeSet(Range<C> view) Returns a view of the intersection of thisRangeSetwith the specified range.Methods inherited from class com.google.common.collect.AbstractRangeSet
addAll, clear, contains, enclosesAll, equals, hashCode, isEmpty, removeAll, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.common.collect.RangeSet
addAll, enclosesAll, removeAll
-
Field Details
-
rangesByLowerBound
-
asRanges
-
asDescendingSetOfRanges
-
complement
-
-
Constructor Details
-
Method Details
-
create
Creates an emptyTreeRangeSetinstance. -
create
Returns aTreeRangeSetinitialized with the ranges in the specified range set. -
create
Returns aTreeRangeSetrepresenting the union of the specified ranges.This is the smallest
RangeSetwhich encloses each of the specified ranges. An element will be contained in thisRangeSetif and only if it is contained in at least oneRangeinranges.- Since:
- 21.0
-
asRanges
Description copied from interface:RangeSetReturns a view of the disconnected ranges that make up this range set. The returned set may be empty. The iterators returned by itsIterable.iterator()method return the ranges in increasing order of lower bound (equivalently, of upper bound).- Specified by:
asRangesin interfaceRangeSet<C extends Comparable<?>>
-
asDescendingSetOfRanges
Description copied from interface:RangeSetReturns a descending view of the disconnected ranges that make up this range set. The returned set may be empty. The iterators returned by itsIterable.iterator()method return the ranges in decreasing order of lower bound (equivalently, of upper bound).- Specified by:
asDescendingSetOfRangesin interfaceRangeSet<C extends Comparable<?>>
-
rangeContaining
Description copied from interface:RangeSetReturns the unique range from this range set that containsvalue, ornullif this range set does not containvalue.- Specified by:
rangeContainingin interfaceRangeSet<C extends Comparable<?>>- Specified by:
rangeContainingin classAbstractRangeSet<C extends Comparable<?>>
-
intersects
Description copied from interface:RangeSetReturnstrueif there exists a non-empty range enclosed by both a member range in this range set and the specified range. This is equivalent to callingsubRangeSet(otherRange)and testing whether the resulting range set is non-empty.- Specified by:
intersectsin interfaceRangeSet<C extends Comparable<?>>- Overrides:
intersectsin classAbstractRangeSet<C extends Comparable<?>>
-
encloses
Description copied from interface:RangeSetReturnstrueif there exists a member range in this range set which encloses the specified range.- Specified by:
enclosesin interfaceRangeSet<C extends Comparable<?>>- Specified by:
enclosesin classAbstractRangeSet<C extends Comparable<?>>
-
rangeEnclosing
-
span
Description copied from interface:RangeSetReturns the minimal range which encloses all ranges in this range set.- Specified by:
spanin interfaceRangeSet<C extends Comparable<?>>
-
add
Description copied from interface:RangeSetAdds the specified range to thisRangeSet(optional operation). That is, for equal range sets a and b, the result ofa.add(range)is thatawill be the minimal range set for which botha.enclosesAll(b)anda.encloses(range).Note that
rangewill be coalesced with any ranges in the range set that are connected with it. Moreover, ifrangeis empty, this is a no-op.- Specified by:
addin interfaceRangeSet<C extends Comparable<?>>- Overrides:
addin classAbstractRangeSet<C extends Comparable<?>>
-
remove
Description copied from interface:RangeSetRemoves the specified range from thisRangeSet(optional operation). After this operation, ifrange.contains(c),this.contains(c)will returnfalse.If
rangeis empty, this is a no-op.- Specified by:
removein interfaceRangeSet<C extends Comparable<?>>- Overrides:
removein classAbstractRangeSet<C extends Comparable<?>>
-
replaceRangeWithSameLowerBound
-
complement
Description copied from interface:RangeSetReturns a view of the complement of thisRangeSet.The returned view supports the
RangeSet.add(com.google.common.collect.Range<C>)operation if thisRangeSetsupportsRangeSet.remove(com.google.common.collect.Range<C>), and vice versa.- Specified by:
complementin interfaceRangeSet<C extends Comparable<?>>
-
subRangeSet
Description copied from interface:RangeSetReturns a view of the intersection of thisRangeSetwith the specified range.The returned view supports all optional operations supported by this
RangeSet, with the caveat that anIllegalArgumentExceptionis thrown on an attempt to add any range not enclosed byview.- Specified by:
subRangeSetin interfaceRangeSet<C extends Comparable<?>>
-