soot.util
Class IdentityHashSet<E>

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

public class IdentityHashSet<E>
extends AbstractSet<E>
implements Set<E>

Implements a hashset with comparison over identity.

Author:
Eric Bodden

Field Summary
protected  IdentityHashMap<E,E> delegate
           
 
Constructor Summary
IdentityHashSet()
          Creates a new, empty IdentityHashSet.
 
Method Summary
 boolean add(E o)
          
 void clear()
          
 boolean contains(Object o)
          
 boolean equals(Object obj)
           
 int hashCode()
           
 Iterator<E> iterator()
          
 boolean remove(Object o)
          
 int size()
          
 String toString()
          
 
Methods inherited from class java.util.AbstractSet
removeAll
 
Methods inherited from class java.util.AbstractCollection
addAll, containsAll, isEmpty, retainAll, toArray, toArray
 
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, removeAll, retainAll, toArray, toArray
 

Field Detail

delegate

protected IdentityHashMap<E,E> delegate
Constructor Detail

IdentityHashSet

public IdentityHashSet()
Creates a new, empty IdentityHashSet.

Method Detail

size

public int size()

Specified by:
size in interface Collection<E>
Specified by:
size in interface Set<E>
Specified by:
size in class AbstractCollection<E>

contains

public boolean contains(Object o)

Specified by:
contains in interface Collection<E>
Specified by:
contains in interface Set<E>
Overrides:
contains in class AbstractCollection<E>

iterator

public Iterator<E> iterator()

Specified by:
iterator in interface Iterable<E>
Specified by:
iterator in interface Collection<E>
Specified by:
iterator in interface Set<E>
Specified by:
iterator in class AbstractCollection<E>

add

public boolean add(E o)

Specified by:
add in interface Collection<E>
Specified by:
add in interface Set<E>
Overrides:
add in class AbstractCollection<E>

remove

public boolean remove(Object o)

Specified by:
remove in interface Collection<E>
Specified by:
remove in interface Set<E>
Overrides:
remove in class AbstractCollection<E>

clear

public void clear()

Specified by:
clear in interface Collection<E>
Specified by:
clear in interface Set<E>
Overrides:
clear in class AbstractCollection<E>

hashCode

public int hashCode()
Specified by:
hashCode in interface Collection<E>
Specified by:
hashCode in interface Set<E>
Overrides:
hashCode in class AbstractSet<E>

equals

public boolean equals(Object obj)
Specified by:
equals in interface Collection<E>
Specified by:
equals in interface Set<E>
Overrides:
equals in class AbstractSet<E>

toString

public String toString()

Overrides:
toString in class AbstractCollection<E>