Public Member Functions |
virtual | ~AbstractSequentialList () |
virtual Iterator< E > * | iterator () |
virtual Iterator< E > * | iterator () const |
virtual ListIterator< E > * | listIterator () |
virtual ListIterator< E > * | listIterator () const |
virtual ListIterator< E > * | listIterator (int index DECAF_UNUSED) |
virtual ListIterator< E > * | listIterator (int index DECAF_UNUSED) const |
virtual E | get (int index) const |
| Gets the element contained at position passed.- Parameters
-
index | The position to get. |
- Returns
- value at index specified.
- Exceptions
-
IndexOutOfBoundsException | if the index given is less than zero or greater than the List size. |
|
virtual E | set (int index, const E &element) |
| Replaces the element at the specified position in this list with the specified element.- Parameters
-
index | The index of the element to replace. |
element | The element to be stored at the specified position. |
- Returns
- the element previously at the specified position.
- Exceptions
-
IndexOutOfBoundsException | if the index given is less than zero or greater than the List size. |
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
IllegalArgumentException | if some property of the element prevents it from being added to this collection |
IllegalStateException | if the element cannot be added at this time due to insertion restrictions. |
|
virtual void | add (int index, const E &element) |
| Inserts the specified element at the specified position in this list.Shifts the element currently at that position (if any) and any subsequent elements to the right (adds one to their indices).- Parameters
-
index | The index at which the specified element is to be inserted. |
element | The element to be inserted in this List. |
- Exceptions
-
IndexOutOfBoundsException | if the index is greater than size of the List. |
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
IllegalArgumentException | if some property of the element prevents it from being added to this collection |
IllegalStateException | if the element cannot be added at this time due to insertion restrictions. |
|
virtual bool | addAll (int index, const Collection< E > &source) |
| Inserts all of the elements in the specified collection into this list at the specified position (optional operation).Shifts the element currently at that position (if any) and any subsequent elements to the right (increases their indices). The new elements will appear in this list in the order that they are returned by the specified collection's iterator. The behavior of this operation is undefined if the specified collection is modified while the operation is in progress. (Note that this will occur if the specified collection is this list, and it's nonempty.)- Parameters
-
index | The index at which to insert the first element from the specified collection |
source | The Collection containing elements to be added to this list |
- Returns
- true if this list changed as a result of the call
- Exceptions
-
IndexOutOfBoundsException | if the index given is less than zero or greater than the List size. |
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
IllegalArgumentException | if some property of the element prevents it from being added to this collection |
IllegalStateException | if the element cannot be added at this time due to insertion restrictions. |
|
virtual E | removeAt (int index) |
| Removes the element at the specified position in this list.Shifts any subsequent elements to the left (subtracts one from their indices). Returns the element that was removed from the list.- Parameters
-
index | - the index of the element to be removed. |
- Returns
- the element previously at the specified position.
- Exceptions
-
IndexOutOfBoundsException | if the index given is less than zero or greater than the List size. |
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
|
| AbstractList () |
virtual | ~AbstractList () |
virtual void | clear () |
| Removes all of the elements from this collection (optional operation).
|
virtual bool | add (const E &value) |
| Returns true if this collection changed as a result of the call.
|
virtual void | add (int index DECAF_UNUSED, const E &element DECAF_UNUSED) |
virtual E | set (int index DECAF_UNUSED, const E &element DECAF_UNUSED) |
virtual int | indexOf (const E &value) const |
| Returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element.
|
virtual int | lastIndexOf (const E &value) const |
| Returns the index of the last occurrence of the specified element in this list, or -1 if this list does not contain the element.
|
| List () |
virtual | ~List () |
virtual | ~Collection () |
virtual int | size () const =0 |
| Returns the number of elements in this collection.
|
virtual | ~Iterable () |
virtual | ~Synchronizable () |
| AbstractCollection () |
virtual | ~AbstractCollection () |
AbstractCollection< E > & | operator= (const AbstractCollection< E > &collection) |
| Assignment Operator, copy element from the source collection to this collection after clearing any element stored in this collection.
|
virtual bool | contains (const E &value) const |
| Returns true if this collection contains the specified element.More formally, returns true if and only if this collection contains at least one element e such that (value == NULL ? e == NULL : value == e ).- Parameters
-
value | The value to check for presence in the collection. |
- Returns
- true if there is at least one of the elements in the collection
- Exceptions
-
NullPointerException | if the Collection contains pointers and the Collection does not allow for NULL elements (optional check). |
|
virtual bool | containsAll (const Collection< E > &collection) const |
| Returns true if this collection contains all of the elements in the specified collection.- Parameters
-
- Exceptions
-
NullPointerException | if the Collection contains pointers and the Collection does not allow for NULL elements (optional check). |
|
virtual bool | equals (const Collection< E > &collection) const |
| Answers true if this Collection and the one given are the same size and if each element contained in the Collection given is equal to an element contained in this collection.
|
virtual void | copy (const Collection< E > &collection) |
| Renders this Collection as a Copy of the given Collection.
|
virtual bool | isEmpty () const |
| Returns true if this collection contains no elements.
|
virtual bool | add (const E &value DECAF_UNUSED) |
|
|
virtual bool | addAll (const Collection< E > &collection) |
| Adds all of the elements in the specified collection to this collection.The behavior of this operation is undefined if the specified collection is modified while the operation is in progress. (This implies that the behavior of this call is undefined if the specified collection is this collection, and this collection is nonempty.)- Parameters
-
collection | The Collection whose elements are added to this one. |
- Returns
- true if this collection changed as a result of the call
- Exceptions
-
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
IllegalArgumentException | if some property of an element prevents it from being added to this collection |
IllegalStateException | if an element cannot be added at this time due to insertion restrictions. |
|
virtual bool | remove (const E &value) |
| Removes a single instance of the specified element from the collection.More formally, removes an element e such that (value == NULL ? e == NULL : value == e), if this collection contains one or more such elements. Returns true if this collection contained the specified element (or equivalently, if this collection changed as a result of the call).- Parameters
-
value | The reference to the element to remove from this Collection. |
- Returns
- true if the collection was changed, false otherwise.
- Exceptions
-
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
|
virtual bool | removeAll (const Collection< E > &collection) |
| Removes all this collection's elements that are also contained in the specified collection (optional operation).After this call returns, this collection will contain no elements in common with the specified collection.- Parameters
-
collection | The Collection whose elements are to be removed from this one. |
- Returns
- true if the collection changed as a result of this call.
- Exceptions
-
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
|
virtual bool | retainAll (const Collection< E > &collection) |
| Retains only the elements in this collection that are contained in the specified collection (optional operation).In other words, removes from this collection all of its elements that are not contained in the specified collection.- Parameters
-
collection | The Collection whose elements are to be retained. |
- Returns
- true if the collection changed as a result of this call.
- Exceptions
-
UnsupportedOperationExceptio | if this is an unmodifiable collection. |
NullPointerException | if the Collection is a container of pointers and does not allow NULL values. |
|
virtual std::vector< E > | toArray () const |
| Answers an STL vector containing copies of all elements contained in this Collection.
|
virtual void | lock () |
| Locks the object.
|
virtual bool | tryLock () |
| Attempts to Lock the object, if the lock is already held by another thread than this method returns false.
|
virtual void | unlock () |
| Unlocks the object.
|
virtual void | wait () |
| Waits on a signal from this object, which is generated by a call to Notify.
|
virtual void | wait (long long millisecs) |
| Waits on a signal from this object, which is generated by a call to Notify.
|
virtual void | wait (long long millisecs, int nanos) |
| Waits on a signal from this object, which is generated by a call to Notify.
|
virtual void | notify () |
| Signals a waiter on this object that it can now wake up and continue.
|
virtual void | notifyAll () |
| Signals the waiters on this object that it can now wake up and continue.
|
template<typename E>
class decaf::util::AbstractSequentialList< E >
This class provides a skeletal implementation of the List interface to minimize the effort required to implement this interface backed by a "sequential access" data store (such as a linked list).
For random access data (such as an array), AbstractList should be used in preference to this class.
This class is the opposite of the AbstractList class in the sense that it implements the "random access" methods (get(int index), set(int index, E element), add(int index, E element) and remove(int index)) on top of the list's list iterator, instead of the other way around.
To implement a list the programmer needs only to extend this class and provide implementations for the listIterator and size methods. For an unmodifiable list, the programmer need only implement the list iterator's hasNext, next, hasPrevious, previous and index methods.
For a modifiable list the programmer should additionally implement the list iterator's set method. For a variable-size list the programmer should additionally implement the list iterator's remove and add methods.
The programmer should generally provide a void (no argument) and collection constructor, as per the recommendation in the Collection interface specification.
- Since
- 1.0