Package net.sf.saxon.z
Class IntRangeSet
- java.lang.Object
- 
- net.sf.saxon.z.IntSet
- 
- net.sf.saxon.z.IntRangeSet
 
 
- 
 public class IntRangeSet extends IntSet Set of int values. This implementation of IntSet uses a sorted array of integer ranges.
- 
- 
Constructor SummaryConstructors Constructor Description IntRangeSet()Create an empty setIntRangeSet(int[] startPoints, int[] endPoints)Create an IntRangeSet given the start points and end points of the integer ranges.IntRangeSet(IntRangeSet input)Create one IntRangeSet as a copy of another
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(int value)Add an integer to the setvoidaddRange(int low, int high)Add a range of integers to the set.voidclear()Clear the contents of the IntSet (making it an empty set)booleancontains(int value)Determine whether a particular integer is present in the setIntSetcopy()Create a copy of this IntSet that leaves the original unchanged.booleanequals(java.lang.Object other)Test whether this set has exactly the same members as another set.int[]getEndPoints()Get the end points of the rangesintgetNumberOfRanges()Get the number of ranges actually in useint[]getStartPoints()Get the start points of the rangesinthashCode()Construct a hash key that supports the equals() testbooleanisEmpty()Determine if the set is emptybooleanisMutable()Ask whether the set permits in-situ modifications using add() and remove()IntIteratoriterator()Get an iterator over the valuesIntSetmutableCopy()Create a copy of this IntSet that contains the same set of integers.booleanremove(int value)Remove an integer from the setintsize()Get the number of integers in the setjava.lang.StringtoString()- 
Methods inherited from class net.sf.saxon.z.IntSetcontainsAll, except, intersect, union
 
- 
 
- 
- 
- 
Constructor Detail- 
IntRangeSetpublic IntRangeSet() Create an empty set
 - 
IntRangeSetpublic IntRangeSet(IntRangeSet input) Create one IntRangeSet as a copy of another- Parameters:
- input- the IntRangeSet to be copied
 
 - 
IntRangeSetpublic IntRangeSet(int[] startPoints, int[] endPoints)Create an IntRangeSet given the start points and end points of the integer ranges. The two arrays must be the same length; each must be in ascending order; and the n'th end point must be greater than the n'th start point, and less than the n+1'th start point, for all n.- Parameters:
- startPoints- the start points of the integer ranges
- endPoints- the end points of the integer ranges
- Throws:
- java.lang.IllegalArgumentException- if the two arrays are different lengths. Other error conditions in the input are not currently detected.
 
 
- 
 - 
Method Detail- 
clearpublic void clear() Description copied from class:IntSetClear the contents of the IntSet (making it an empty set)
 - 
copypublic IntSet copy() Description copied from class:IntSetCreate a copy of this IntSet that leaves the original unchanged.
 - 
mutableCopypublic IntSet mutableCopy() Description copied from class:IntSetCreate a copy of this IntSet that contains the same set of integers.- Specified by:
- mutableCopyin class- IntSet
- Returns:
- an IntSet containing the same integers. The result will not necessarily be the same class as the original. It will always be a mutable object
 
 - 
isMutablepublic boolean isMutable() Description copied from class:IntSetAsk whether the set permits in-situ modifications using add() and remove()
 - 
sizepublic int size() Description copied from class:IntSetGet the number of integers in the set
 - 
isEmptypublic boolean isEmpty() Description copied from class:IntSetDetermine if the set is empty
 - 
containspublic boolean contains(int value) Description copied from class:IntSetDetermine whether a particular integer is present in the set
 - 
removepublic boolean remove(int value) Description copied from class:IntSetRemove an integer from the set
 - 
addpublic boolean add(int value) Add an integer to the set
 - 
iteratorpublic IntIterator iterator() Get an iterator over the values
 - 
toStringpublic java.lang.String toString() - Overrides:
- toStringin class- java.lang.Object
 
 - 
equalspublic boolean equals(java.lang.Object other) Test whether this set has exactly the same members as another set. Note that IntRangeSet values are NOT comparable with other implementations of IntSet- Overrides:
- equalsin class- java.lang.Object
 
 - 
hashCodepublic int hashCode() Construct a hash key that supports the equals() test- Overrides:
- hashCodein class- java.lang.Object
 
 - 
addRangepublic void addRange(int low, int high)Add a range of integers to the set. This is optimized for the case where these are all greater than any existing integer in the set.- Parameters:
- low- the low end of the new range
- high- the high end of the new range
 
 - 
getStartPointspublic int[] getStartPoints() Get the start points of the ranges- Returns:
- the start points
 
 - 
getEndPointspublic int[] getEndPoints() Get the end points of the ranges- Returns:
- the end points
 
 - 
getNumberOfRangespublic int getNumberOfRanges() Get the number of ranges actually in use- Returns:
- the number of ranges
 
 
- 
 
-