net.sf.saxon.expr.sort
Class IntHashSet

java.lang.Object
  extended by net.sf.saxon.expr.sort.AbstractIntSet
      extended by net.sf.saxon.expr.sort.IntHashSet
All Implemented Interfaces:
Serializable, IntSet

public class IntHashSet
extends AbstractIntSet
implements IntSet, Serializable

Set of int values. This class is modelled on the java.net.Set interface, but it does not implement this interface, because the set members are nint's rather than Objects.

Not thread safe.

Author:
Dominique Devienne, Michael Kay: retrofitted to JDK 1.4, added iterator()
See Also:
Serialized Form

Field Summary
static int MAX_SIZE
          The maximum number of elements this container can contain.
 int ndv
          This set's NO-DATA-VALUE.
 
Constructor Summary
IntHashSet()
          Initializes a set with a capacity of 8 and a load factor of 0,25.
IntHashSet(int capacity)
          Initializes a set with the given capacity and a load factor of 0,25.
IntHashSet(int capacity, int noDataValue)
          Initializes a set with a load factor of 0,25.
 
Method Summary
 boolean add(int value)
          Add an integer to the set
 void clear()
          Clear the contents of the IntSet (making it an empty set)
 boolean contains(int value)
          Determine whether a particular integer is present in the set
static boolean containsSome(IntSet one, IntSet two)
          Test if one set has overlapping membership with another set
 IntSet copy()
          Create a copy of this IntSet that leaves the original unchanged.
 void diagnosticDump()
          Diagnostic output
 boolean equals(Object other)
          Test whether this set has exactly the same members as another set
 int[] getValues()
           
 int hashCode()
          Construct a hash key that supports the equals() test
 boolean isEmpty()
          Determine if the set is empty
 IntIterator iterator()
          Get an iterator over the values
 IntSet mutableCopy()
          Create a copy of this IntSet that contains the same set of integers.
 boolean remove(int value)
          Remove an integer from the set
 int size()
          Get the number of integers in the set
 
Methods inherited from class net.sf.saxon.expr.sort.AbstractIntSet
containsAll, except, intersect, union
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sf.saxon.expr.sort.IntSet
containsAll, except, intersect, union
 

Field Detail

MAX_SIZE

public static final int MAX_SIZE
The maximum number of elements this container can contain.

See Also:
Constant Field Values

ndv

public final int ndv
This set's NO-DATA-VALUE.

Constructor Detail

IntHashSet

public IntHashSet()
Initializes a set with a capacity of 8 and a load factor of 0,25.


IntHashSet

public IntHashSet(int capacity)
Initializes a set with the given capacity and a load factor of 0,25.

Parameters:
capacity - the initial capacity.

IntHashSet

public IntHashSet(int capacity,
                  int noDataValue)
Initializes a set with a load factor of 0,25.

Parameters:
capacity - the initial capacity.
noDataValue - the value to use for non-values.
Method Detail

copy

public IntSet copy()
Description copied from interface: IntSet
Create a copy of this IntSet that leaves the original unchanged.

Specified by:
copy in interface IntSet
Returns:
an IntSet containing the same integers. The result will not necessarily be the same class as the original. It will either be an immutable object, or a newly constructed object.

mutableCopy

public IntSet mutableCopy()
Description copied from interface: IntSet
Create a copy of this IntSet that contains the same set of integers.

Specified by:
mutableCopy in interface 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

clear

public void clear()
Description copied from interface: IntSet
Clear the contents of the IntSet (making it an empty set)

Specified by:
clear in interface IntSet

size

public int size()
Description copied from interface: IntSet
Get the number of integers in the set

Specified by:
size in interface IntSet
Returns:
the size of the set

isEmpty

public boolean isEmpty()
Description copied from interface: IntSet
Determine if the set is empty

Specified by:
isEmpty in interface IntSet
Returns:
true if the set is empty, false if not

getValues

public int[] getValues()

contains

public boolean contains(int value)
Description copied from interface: IntSet
Determine whether a particular integer is present in the set

Specified by:
contains in interface IntSet
Parameters:
value - the integer under test
Returns:
true if value is present in the set, false if not

remove

public boolean remove(int value)
Description copied from interface: IntSet
Remove an integer from the set

Specified by:
remove in interface IntSet
Parameters:
value - the integer to be removed
Returns:
true if the integer was present in the set, false if it was not present

add

public boolean add(int value)
Description copied from interface: IntSet
Add an integer to the set

Specified by:
add in interface IntSet
Parameters:
value - the integer to be added
Returns:
true if the integer was added, false if it was already present

iterator

public IntIterator iterator()
Get an iterator over the values

Specified by:
iterator in interface IntSet
Returns:
an iterator over the integers in the set

containsSome

public static boolean containsSome(IntSet one,
                                   IntSet two)
Test if one set has overlapping membership with another set


equals

public boolean equals(Object other)
Test whether this set has exactly the same members as another set

Overrides:
equals in class Object

hashCode

public int hashCode()
Construct a hash key that supports the equals() test

Overrides:
hashCode in class Object

diagnosticDump

public void diagnosticDump()
Diagnostic output



Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.