Package org.apache.tools.ant.util

# Class IdentityStack<E>

java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractList<E>
java.util.Vector<E>
java.util.Stack<E>
org.apache.tools.ant.util.IdentityStack<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`

    public class IdentityStack<E>
    extends java.util.Stack<E>

Identity Stack.

Since:
  Ant 1.7
See Also:
  Serialized Form

## Field Summary

### Fields inherited from class java.util.Vector

`capacityIncrement, elementCount, elementData`

### Fields inherited from class java.util.AbstractList

`modCount`

## Constructor Summary

Constructors
Constructor | Description
--- | ---
`IdentityStack()` | Default constructor.
`IdentityStack​(E o)` | Construct a new IdentityStack with the specified Object as the bottom element.

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`boolean` | `contains​(java.lang.Object o)` | Override methods that use `.equals()` comparisons on elements.
`boolean` | `containsAll​(java.util.Collection<?> c)` |
`static <E> IdentityStack<E>` | `getInstance​(java.util.Stack<E> s)` | Get an IdentityStack containing the contents of the specified Stack.
`int` | `indexOf​(java.lang.Object o, int pos)` | Override methods that use `.equals()` comparisons on elements.
`int` | `lastIndexOf​(java.lang.Object o, int pos)` | Override methods that use `.equals()` comparisons on elements.
`boolean` | `removeAll​(java.util.Collection<?> c)` |
`boolean` | `retainAll​(java.util.Collection<?> c)` |

### Methods inherited from class java.util.Stack

`empty, peek, pop, push, search`

### Methods inherited from class java.util.Vector

`add, add, addAll, addAll, addElement, capacity, clear, clone, copyInto, elementAt, elements, ensureCapacity, equals, firstElement, forEach, get, hashCode, indexOf, insertElementAt, isEmpty, iterator, lastElement, lastIndexOf, listIterator, listIterator, remove, remove, removeAllElements, removeElement, removeElementAt, removeIf, removeRange, replaceAll, set, setElementAt, setSize, size, sort, spliterator, subList, toArray, toArray, toString, trimToSize`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Collection

`parallelStream, stream, toArray`

## Constructor Details

### IdentityStack

public IdentityStack()
Default constructor.

### IdentityStack

public IdentityStack​(E o)
Construct a new IdentityStack with the specified Object as the bottom element.

Parameters:
  `o` - the bottom element.

## Method Details

### getInstance

public static <E> IdentityStack<E> getInstance​(java.util.Stack<E> s)
Get an IdentityStack containing the contents of the specified Stack.

Type Parameters:
  `E` - desired type
Parameters:
  `s` - the Stack to copy; ignored if null.
Returns:
  an IdentityStack instance.

### contains

public boolean contains​(java.lang.Object o)
Override methods that use `.equals()` comparisons on elements.

Specified by:
  `contains` in interface `java.util.Collection<E>`
Specified by:
  `contains` in interface `java.util.List<E>`
Overrides:
  `contains` in class `java.util.Vector<E>`
Parameters:
  `o` - the Object to search for.
Returns:
  true if the stack contains the object.
See Also:
  `Vector.contains(Object)`

### indexOf

public int indexOf​(java.lang.Object o, int pos)
Override methods that use `.equals()` comparisons on elements.

Overrides:
  `indexOf` in class `java.util.Vector<E>`
Parameters:
  `o` - the Object to search for.
  `pos` - the position from which to search.
Returns:
  the position of the object, -1 if not found.
See Also:
  `Vector.indexOf(Object, int)`

### lastIndexOf

public int lastIndexOf​(java.lang.Object o, int pos)
Override methods that use `.equals()` comparisons on elements.

Overrides:
  `lastIndexOf` in class `java.util.Vector<E>`
Parameters:
  `o` - the Object to search for.
  `pos` - the position from which to search (backward).
Returns:
  the position of the object, -1 if not found.
See Also:
  `Vector.indexOf(Object, int)`

### removeAll

public boolean removeAll​(java.util.Collection<?> c)

Specified by:
  `removeAll` in interface `java.util.Collection<E>`
Specified by:
  `removeAll` in interface `java.util.List<E>`
Overrides:
  `removeAll` in class `java.util.Vector<E>`

### retainAll

public boolean retainAll​(java.util.Collection<?> c)

Specified by:
  `retainAll` in interface `java.util.Collection<E>`
Specified by:
  `retainAll` in interface `java.util.List<E>`
Overrides:
  `retainAll` in class `java.util.Vector<E>`

### containsAll

public boolean containsAll​(java.util.Collection<?> c)

Specified by:
  `containsAll` in interface `java.util.Collection<E>`
Specified by:
  `containsAll` in interface `java.util.List<E>`
Overrides:
  `containsAll` in class `java.util.Vector<E>`