edu.toronto.cs.util
Class IdentityHashSet<E>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractSet<E>
          extended by edu.toronto.cs.util.IdentityHashSet<E>
All Implemented Interfaces:
java.lang.Iterable<E>, java.util.Collection<E>, java.util.Set<E>

public class IdentityHashSet<E>
extends java.util.AbstractSet<E>

This class implements the Set interface backed up by an IdentityHashMap. See documentation for Set for more details.


Constructor Summary
IdentityHashSet()
          Constructs a new, empty set; the backing IdentityHashMap has default initial maximum size of (21).
IdentityHashSet(java.util.Collection<? extends E> c)
          Constructs a new set containing the elements of the specified collection.
IdentityHashSet(int expectedMaxSize)
          Constructs a new, empty set; the backing IdentityHashMap has the initial expected maximum size of expectedMaxSize
 
Method Summary
 boolean add(E o)
           
 void clear()
           
 boolean contains(java.lang.Object o)
           
 java.util.Iterator<E> iterator()
           
 boolean remove(java.lang.Object o)
           
 int size()
           
 
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll
 
Methods inherited from class java.util.AbstractCollection
addAll, containsAll, isEmpty, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
addAll, containsAll, isEmpty, retainAll, toArray, toArray
 

Constructor Detail

IdentityHashSet

public IdentityHashSet()
Constructs a new, empty set; the backing IdentityHashMap has default initial maximum size of (21).


IdentityHashSet

public IdentityHashSet(java.util.Collection<? extends E> c)
Constructs a new set containing the elements of the specified collection.

Parameters:
c - a collection whose elements are to be passed to this set.
Throws:
java.lang.NullPointerException - if the specified collection is null

IdentityHashSet

public IdentityHashSet(int expectedMaxSize)
Constructs a new, empty set; the backing IdentityHashMap has the initial expected maximum size of expectedMaxSize

Parameters:
expectedMaxSize - the initial expected maximum size of the hash map.
Method Detail

add

public boolean add(E o)
Specified by:
add in interface java.util.Collection<E>
Specified by:
add in interface java.util.Set<E>
Overrides:
add in class java.util.AbstractCollection<E>

clear

public void clear()
Specified by:
clear in interface java.util.Collection<E>
Specified by:
clear in interface java.util.Set<E>
Overrides:
clear in class java.util.AbstractCollection<E>

contains

public boolean contains(java.lang.Object o)
Specified by:
contains in interface java.util.Collection<E>
Specified by:
contains in interface java.util.Set<E>
Overrides:
contains in class java.util.AbstractCollection<E>

iterator

public java.util.Iterator<E> iterator()
Specified by:
iterator in interface java.lang.Iterable<E>
Specified by:
iterator in interface java.util.Collection<E>
Specified by:
iterator in interface java.util.Set<E>
Specified by:
iterator in class java.util.AbstractCollection<E>

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Collection<E>
Specified by:
remove in interface java.util.Set<E>
Overrides:
remove in class java.util.AbstractCollection<E>

size

public int size()
Specified by:
size in interface java.util.Collection<E>
Specified by:
size in interface java.util.Set<E>
Specified by:
size in class java.util.AbstractCollection<E>