Top Description Fields Constructors Methods
com.google.common.collect

pack-priv final Class GeneralRange<T extends @Nullable Object>

extends Object
implements Serializable
Class Inheritance
All Implemented Interfaces
java.io.Serializable
Annotations
@GwtCompatible
serializable:true
@ElementTypesAreNonnullByDefault
Static Imports
com.google.common.base.Preconditions.checkArgument, .Preconditions.checkNotNull, com.google.common.collect.BoundType.CLOSED, .BoundType.OPEN, .NullnessCasts.uncheckedCastNullableTToT

A generalized interval on any ordering, for internal use. Supports null. Unlike Range, this allows the use of an arbitrary comparator. This is designed for use in the implementation of subcollections of sorted collection types.

Whenever possible, use Range instead, which is better supported.

Author
Louis Wasserman

Field Summary

Modifier and TypeField and Description
private final Comparator<? super T>
private final boolean
private final boolean
private final BoundType
private final T
private transient GeneralRange<T>
private final BoundType
private final T

Constructor Summary

AccessConstructor and Description
private
GeneralRange(Comparator<? super T> comparator, boolean hasLowerBound, T lowerEndpoint, BoundType lowerBoundType, boolean hasUpperBound, T upperEndpoint, BoundType upperBoundType)

Method Summary

Modifier and TypeMethod and Description
pack-priv static <T extends @Nullable Object> GeneralRange<T>
all(Comparator<? super T> comparator)

Returns the whole range relative to the specified comparator.

pack-priv Comparator<? super T>
pack-priv boolean
contains(T t)

pack-priv static <T extends @Nullable Object> GeneralRange<T>
downTo(Comparator<? super T> comparator, T endpoint, BoundType boundType)

Returns everything above the endpoint relative to the specified comparator, with the specified endpoint behavior.

public boolean
equals(Object
the reference object with which to compare.
obj
)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.
pack-priv static <T extends Comparable<T>> GeneralRange<T>
from(Range<T> range)

Converts a Range to a GeneralRange.

pack-priv BoundType
pack-priv T
pack-priv BoundType
pack-priv T
public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for this object.
pack-priv boolean
pack-priv boolean
pack-priv GeneralRange<T>
intersect(GeneralRange<T> other)

Returns the intersection of the two ranges, or an empty range if their intersection is empty.

pack-priv boolean
pack-priv static <T extends @Nullable Object> GeneralRange<T>
range(Comparator<? super T> comparator, T lower, BoundType lowerType, T upper, BoundType upperType)

Returns everything between the endpoints relative to the specified comparator, with the specified endpoint behavior.

pack-priv GeneralRange<T>
reverse()

Returns the same range relative to the reversed comparator.

pack-priv boolean
tooHigh(T t)

pack-priv boolean
tooLow(T t)

public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.
pack-priv static <T extends @Nullable Object> GeneralRange<T>
upTo(Comparator<? super T> comparator, T endpoint, BoundType boundType)

Returns everything below the endpoint relative to the specified comparator, with the specified endpoint behavior.

Inherited from java.lang.Object:
clonefinalizegetClassnotifynotifyAllwaitwaitwait

Field Detail

comparatorback to summary
private final Comparator<? super T> comparator
hasLowerBoundback to summary
private final boolean hasLowerBound
hasUpperBoundback to summary
private final boolean hasUpperBound
lowerBoundTypeback to summary
private final BoundType lowerBoundType
lowerEndpointback to summary
private final T lowerEndpoint
Annotations
@CheckForNull
reverseback to summary
private transient GeneralRange<T> reverse
Annotations
@LazyInit
@CheckForNull
upperBoundTypeback to summary
private final BoundType upperBoundType
upperEndpointback to summary
private final T upperEndpoint
Annotations
@CheckForNull

Constructor Detail

GeneralRangeback to summary
private GeneralRange(Comparator<? super T> comparator, boolean hasLowerBound, T lowerEndpoint, BoundType lowerBoundType, boolean hasUpperBound, T upperEndpoint, BoundType upperBoundType)

Method Detail

allback to summary
pack-priv static <T extends @Nullable Object> GeneralRange<T> all(Comparator<? super T> comparator)

Returns the whole range relative to the specified comparator.

comparatorback to summary
pack-priv Comparator<? super T> comparator()
containsback to summary
pack-priv boolean contains(T t)
downToback to summary
pack-priv static <T extends @Nullable Object> GeneralRange<T> downTo(Comparator<? super T> comparator, T endpoint, BoundType boundType)

Returns everything above the endpoint relative to the specified comparator, with the specified endpoint behavior.

equalsback to summary
public boolean equals(Object obj)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
obj:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
fromback to summary
pack-priv static <T extends Comparable<T>> GeneralRange<T> from(Range<T> range)

Converts a Range to a GeneralRange.

Annotations
@SuppressWarnings:rawtypes
getLowerBoundTypeback to summary
pack-priv BoundType getLowerBoundType()
getLowerEndpointback to summary
pack-priv T getLowerEndpoint()
Annotations
@CheckForNull
getUpperBoundTypeback to summary
pack-priv BoundType getUpperBoundType()
getUpperEndpointback to summary
pack-priv T getUpperEndpoint()
Annotations
@CheckForNull
hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for this object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object

Annotations
@Override
hasLowerBoundback to summary
pack-priv boolean hasLowerBound()
hasUpperBoundback to summary
pack-priv boolean hasUpperBound()
intersectback to summary
pack-priv GeneralRange<T> intersect(GeneralRange<T> other)

Returns the intersection of the two ranges, or an empty range if their intersection is empty.

Annotations
@SuppressWarnings:nullness
isEmptyback to summary
pack-priv boolean isEmpty()
rangeback to summary
pack-priv static <T extends @Nullable Object> GeneralRange<T> range(Comparator<? super T> comparator, T lower, BoundType lowerType, T upper, BoundType upperType)

Returns everything between the endpoints relative to the specified comparator, with the specified endpoint behavior.

reverseback to summary
pack-priv GeneralRange<T> reverse()

Returns the same range relative to the reversed comparator.

tooHighback to summary
pack-priv boolean tooHigh(T t)
tooLowback to summary
pack-priv boolean tooLow(T t)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object.

Returns:String

a string representation of the object

Annotations
@Override
upToback to summary
pack-priv static <T extends @Nullable Object> GeneralRange<T> upTo(Comparator<? super T> comparator, T endpoint, BoundType boundType)

Returns everything below the endpoint relative to the specified comparator, with the specified endpoint behavior.