org.elasticsearch.util.gnu.trove.decorator
Class TIntHashSetDecorator

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractSet<java.lang.Integer>
          extended by org.elasticsearch.util.gnu.trove.decorator.TIntHashSetDecorator
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable, java.lang.Iterable<java.lang.Integer>, java.util.Collection<java.lang.Integer>, java.util.Set<java.lang.Integer>

public class TIntHashSetDecorator
extends java.util.AbstractSet<java.lang.Integer>
implements java.util.Set<java.lang.Integer>, java.io.Externalizable

Wrapper class to make a TIntHashSet conform to the java.util.Set API. This class simply decorates an underlying TIntHashSet and translates the Object-based APIs into their Trove primitive analogs.

Note that wrapping and unwrapping primitive values is extremely inefficient. If possible, users of this class should override the appropriate methods in this class and use a table of canonical values.

Created: Tue Sep 24 22:08:17 PDT 2002

See Also:
Serialized Form

Field Summary
protected  TIntHashSet _set
          the wrapped primitive set
 
Constructor Summary
TIntHashSetDecorator()
          FOR EXTERNALIZATION ONLY!!
TIntHashSetDecorator(TIntHashSet set)
          Creates a wrapper that decorates the specified primitive set.
 
Method Summary
 boolean add(java.lang.Integer value)
          Inserts a value into the set.
 void clear()
          Empties the set.
 TIntHashSetDecorator clone()
          Clones the underlying trove collection and returns the clone wrapped in a new decorator instance.
 boolean equals(java.lang.Object other)
          Compares this set with another set for equality of their stored entries.
 TIntHashSet getSet()
          Returns a reference to the set wrapped by this decorator.
 boolean isEmpty()
          Indicates whether set has any entries.
 java.util.Iterator<java.lang.Integer> iterator()
          Creates an iterator over the values of the set.
 void readExternal(java.io.ObjectInput in)
           
 boolean remove(java.lang.Object value)
          Deletes a value from the set.
 int size()
          Returns the number of entries in the set.
protected  int unwrap(java.lang.Object value)
          Unwraps a value
protected  java.lang.Integer wrap(int k)
          Wraps a value
 void writeExternal(java.io.ObjectOutput out)
           
 
Methods inherited from class java.util.AbstractSet
hashCode, removeAll
 
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
addAll, contains, containsAll, hashCode, removeAll, retainAll, toArray, toArray
 

Field Detail

_set

protected TIntHashSet _set
the wrapped primitive set

Constructor Detail

TIntHashSetDecorator

public TIntHashSetDecorator()
FOR EXTERNALIZATION ONLY!!


TIntHashSetDecorator

public TIntHashSetDecorator(TIntHashSet set)
Creates a wrapper that decorates the specified primitive set.

Method Detail

getSet

public TIntHashSet getSet()
Returns a reference to the set wrapped by this decorator.


clone

public TIntHashSetDecorator clone()
Clones the underlying trove collection and returns the clone wrapped in a new decorator instance. This is a shallow clone except where primitives are concerned.

Overrides:
clone in class java.lang.Object
Returns:
a copy of the receiver

add

public boolean add(java.lang.Integer value)
Inserts a value into the set.

Specified by:
add in interface java.util.Collection<java.lang.Integer>
Specified by:
add in interface java.util.Set<java.lang.Integer>
Overrides:
add in class java.util.AbstractCollection<java.lang.Integer>
Parameters:
value - true if the set was modified by the insertion

equals

public boolean equals(java.lang.Object other)
Compares this set with another set for equality of their stored entries.

Specified by:
equals in interface java.util.Collection<java.lang.Integer>
Specified by:
equals in interface java.util.Set<java.lang.Integer>
Overrides:
equals in class java.util.AbstractSet<java.lang.Integer>
Parameters:
other - an Object value
Returns:
true if the sets are identical

clear

public void clear()
Empties the set.

Specified by:
clear in interface java.util.Collection<java.lang.Integer>
Specified by:
clear in interface java.util.Set<java.lang.Integer>
Overrides:
clear in class java.util.AbstractCollection<java.lang.Integer>

remove

public boolean remove(java.lang.Object value)
Deletes a value from the set.

Specified by:
remove in interface java.util.Collection<java.lang.Integer>
Specified by:
remove in interface java.util.Set<java.lang.Integer>
Overrides:
remove in class java.util.AbstractCollection<java.lang.Integer>
Parameters:
value - an Object value
Returns:
true if the set was modified

iterator

public java.util.Iterator<java.lang.Integer> iterator()
Creates an iterator over the values of the set.

Specified by:
iterator in interface java.lang.Iterable<java.lang.Integer>
Specified by:
iterator in interface java.util.Collection<java.lang.Integer>
Specified by:
iterator in interface java.util.Set<java.lang.Integer>
Specified by:
iterator in class java.util.AbstractCollection<java.lang.Integer>
Returns:
an iterator with support for removals in the underlying set

size

public int size()
Returns the number of entries in the set.

Specified by:
size in interface java.util.Collection<java.lang.Integer>
Specified by:
size in interface java.util.Set<java.lang.Integer>
Specified by:
size in class java.util.AbstractCollection<java.lang.Integer>
Returns:
the set's size.

isEmpty

public boolean isEmpty()
Indicates whether set has any entries.

Specified by:
isEmpty in interface java.util.Collection<java.lang.Integer>
Specified by:
isEmpty in interface java.util.Set<java.lang.Integer>
Overrides:
isEmpty in class java.util.AbstractCollection<java.lang.Integer>
Returns:
true if the set is empty

wrap

protected java.lang.Integer wrap(int k)
Wraps a value

Parameters:
k - value in the underlying set
Returns:
an Object representation of the value

unwrap

protected int unwrap(java.lang.Object value)
Unwraps a value

Parameters:
value - wrapped value
Returns:
an unwrapped representation of the value

readExternal

public void readExternal(java.io.ObjectInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
Specified by:
readExternal in interface java.io.Externalizable
Throws:
java.io.IOException
java.lang.ClassNotFoundException

writeExternal

public void writeExternal(java.io.ObjectOutput out)
                   throws java.io.IOException
Specified by:
writeExternal in interface java.io.Externalizable
Throws:
java.io.IOException