## org.eclipse.emf.common.util
Class UniqueEList<E>

    java.lang.Object
      java.util.AbstractCollection<E>
          java.util.AbstractList<E>
              org.eclipse.emf.common.util.AbstractEList<E>
                  org.eclipse.emf.common.util.BasicEList<E>
                      org.eclipse.emf.common.util.UniqueEList<E>

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<E>, java.util.Collection<E>, java.util.List<E>, java.util.RandomAccess, EList<E>

Direct Known Subclasses:
  UniqueEList.FastCompare

    public class UniqueEList<E>

extends BasicEList<E>

A `BasicEList` that allows only `unique` elements.

See Also:
  Serialized Form

Nested Class Summary
`static class` `UniqueEList.FastCompare<E>` A `UniqueEList` that `uses` `==` instead of `equals` to compare members.

Nested classes/interfaces inherited from class org.eclipse.emf.common.util.BasicEList
`BasicEList.BasicIndexOutOfBoundsException, BasicEList.EIterator<E1>, BasicEList.EListIterator<E1>, BasicEList.NonResolvingEIterator<E1>, BasicEList.NonResolvingEListIterator<E1>, BasicEList.UnmodifiableEList<E>`

Field Summary

Fields inherited from class org.eclipse.emf.common.util.BasicEList
`data, size`

Fields inherited from class java.util.AbstractList
`modCount`

Constructor Summary
`UniqueEList()` Creates an empty instance with no initial capacity.
`UniqueEList(java.util.Collection<? extends E> collection)` Creates an instance that is a copy of the collection, with duplicates removed.
`UniqueEList(int initialCapacity)` Creates an empty instance with the given capacity.

Method Summary
`protected boolean` `isUnique()` Returns `true` because this list requires uniqueness.

Methods inherited from class org.eclipse.emf.common.util.BasicEList
`addAllUnique, addAllUnique, addAllUnique, addAllUnique, addUnique, addUnique, assign, basicGet, basicList, clear, clone, contains, data, get, grow, indexOf, isEmpty, lastIndexOf, move, newData, primitiveGet, remove, setData, setUnique, shrink, size, toArray, toArray`

Methods inherited from class org.eclipse.emf.common.util.AbstractEList
`add, add, addAll, addAll, basicIterator, basicListIterator, basicListIterator, canContainNull, didAdd, didChange, didClear, didMove, didRemove, didSet, equalObjects, equals, getDuplicates, getNonDuplicates, hashCode, iterator, listIterator, listIterator, move, remove, removeAll, resolve, retainAll, set, toString, useEquals, validate`

Methods inherited from class java.util.AbstractList
`removeRange, subList`

Methods inherited from class java.util.AbstractCollection
`containsAll`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface java.util.List
`containsAll, subList`

Constructor Detail

### UniqueEList

    public UniqueEList()

  Creates an empty instance with no initial capacity.

### UniqueEList

    public UniqueEList(int initialCapacity)

  Creates an empty instance with the given capacity.

  Parameters:
    `initialCapacity` - the initial capacity of the list before it must grow.
  Throws:
    `java.lang.IllegalArgumentException` - if the `initialCapacity` is negative.

### UniqueEList

    public UniqueEList(java.util.Collection<? extends E> collection)

  Creates an instance that is a copy of the collection, with duplicates removed.

  Parameters:
    `collection` - the initial contents of the list.

Method Detail

### isUnique

    protected boolean isUnique()

  Returns `true` because this list requires uniqueness.

  Overrides:
    `isUnique` in class `AbstractEList<E>`
  Returns:
    `true`.

Copyright 2001-2006 IBM Corporation and others. All Rights Reserved.