This commit is contained in:
Gary Gregory 2023-08-29 08:45:42 -04:00
parent 9d3c2eda3e
commit c5c4194ae5
10 changed files with 52 additions and 2 deletions

View File

@ -332,6 +332,10 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class View. * Inner class View.
*
* @param <K> the type of the keys in the map.
* @param <V> the type of the values in the map.
* @param <E> the type of the elements in the collection.
*/ */
protected abstract static class View<K, V, E> extends AbstractCollectionDecorator<E> { protected abstract static class View<K, V, E> extends AbstractCollectionDecorator<E> {
@ -432,6 +436,8 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class KeySet. * Inner class KeySet.
*
* @param <K> the type of elements maintained by this set
*/ */
protected static class KeySet<K> extends View<K, Object, K> implements Set<K> { protected static class KeySet<K> extends View<K, Object, K> implements Set<K> {
@ -471,6 +477,8 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class KeySetIterator. * Inner class KeySetIterator.
*
* @param <K> the key type.
*/ */
protected static class KeySetIterator<K> extends AbstractIteratorDecorator<K> { protected static class KeySetIterator<K> extends AbstractIteratorDecorator<K> {
@ -515,6 +523,8 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class Values. * Inner class Values.
*
* @param <V> the type of the values.
*/ */
protected static class Values<V> extends View<Object, V, V> implements Set<V> { protected static class Values<V> extends View<Object, V, V> implements Set<V> {
@ -554,6 +564,8 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class ValuesIterator. * Inner class ValuesIterator.
*
* @param <V> the value type.
*/ */
protected static class ValuesIterator<V> extends AbstractIteratorDecorator<V> { protected static class ValuesIterator<V> extends AbstractIteratorDecorator<V> {
@ -598,6 +610,9 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class EntrySet. * Inner class EntrySet.
*
* @param <K> the type of the keys.
* @param <V> the type of the values.
*/ */
protected static class EntrySet<K, V> extends View<K, V, Map.Entry<K, V>> implements Set<Map.Entry<K, V>> { protected static class EntrySet<K, V> extends View<K, V, Map.Entry<K, V>> implements Set<Map.Entry<K, V>> {
@ -639,6 +654,9 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class EntrySetIterator. * Inner class EntrySetIterator.
*
* @param <K> the type of the keys.
* @param <V> the type of the values.
*/ */
protected static class EntrySetIterator<K, V> extends AbstractIteratorDecorator<Map.Entry<K, V>> { protected static class EntrySetIterator<K, V> extends AbstractIteratorDecorator<Map.Entry<K, V>> {
@ -684,6 +702,9 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class MapEntry. * Inner class MapEntry.
*
* @param <K> the type of the keys.
* @param <V> the type of the values.
*/ */
protected static class MapEntry<K, V> extends AbstractMapEntryDecorator<K, V> { protected static class MapEntry<K, V> extends AbstractMapEntryDecorator<K, V> {
@ -715,6 +736,9 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> {
/** /**
* Inner class MapIterator. * Inner class MapIterator.
*
* @param <K> the type of the keys.
* @param <V> the type of the values.
*/ */
protected static class BidiMapIterator<K, V> implements MapIterator<K, V>, ResettableIterator<K> { protected static class BidiMapIterator<K, V> implements MapIterator<K, V>, ResettableIterator<K> {

View File

@ -231,6 +231,9 @@ public class DualTreeBidiMap<K, V> extends AbstractDualBidiMap<K, V>
/** /**
* Internal sorted map view. * Internal sorted map view.
*
* @param <K> the type of the keys.
* @param <V> the type of the values.
*/ */
protected static class ViewMap<K, V> extends AbstractSortedMapDecorator<K, V> { protected static class ViewMap<K, V> extends AbstractSortedMapDecorator<K, V> {
/** /**
@ -293,6 +296,9 @@ public class DualTreeBidiMap<K, V> extends AbstractDualBidiMap<K, V>
/** /**
* Inner class MapIterator. * Inner class MapIterator.
*
* @param <K> the type of the keys.
* @param <V> the type of the values.
*/ */
protected static class BidiOrderedMapIterator<K, V> implements OrderedMapIterator<K, V>, ResettableIterator<K> { protected static class BidiOrderedMapIterator<K, V> implements OrderedMapIterator<K, V>, ResettableIterator<K> {

View File

@ -22,7 +22,9 @@ import java.util.Iterator;
* Provides basic behavior for decorating an iterator with extra functionality. * Provides basic behavior for decorating an iterator with extra functionality.
* <p> * <p>
* All methods are forwarded to the decorated iterator. * All methods are forwarded to the decorated iterator.
* </p>
* *
* @param <E> the type of the iterator being decorated.
* @since 3.0 * @since 3.0
*/ */
public abstract class AbstractIteratorDecorator<E> extends AbstractUntypedIteratorDecorator<E, E> { public abstract class AbstractIteratorDecorator<E> extends AbstractUntypedIteratorDecorator<E, E> {

View File

@ -23,7 +23,9 @@ import java.util.Objects;
* Provides basic behavior for decorating a list iterator with extra functionality. * Provides basic behavior for decorating a list iterator with extra functionality.
* <p> * <p>
* All methods are forwarded to the decorated list iterator. * All methods are forwarded to the decorated list iterator.
* </p>
* *
* @param <E> the type of elements in this iterator.
* @since 3.0 * @since 3.0
*/ */
public class AbstractListIteratorDecorator<E> implements ListIterator<E> { public class AbstractListIteratorDecorator<E> implements ListIterator<E> {

View File

@ -20,10 +20,13 @@ import java.util.Iterator;
import java.util.Objects; import java.util.Objects;
/** /**
* Provides basic behavior for decorating an iterator with extra functionality * Provides basic behavior for decorating an iterator with extra functionality without committing the generic type of the Iterator implementation.
* without committing the generic type of the Iterator implementation.
* <p> * <p>
* All methods are forwarded to the decorated iterator. * All methods are forwarded to the decorated iterator.
* </p>
*
* @param <I> the type of the iterator being decorated.
* @param <O> the type of elements returned by this iterator.
* *
* @since 4.0 * @since 4.0
*/ */

View File

@ -46,6 +46,7 @@ import java.util.Queue;
* removed and {@link #size()} will return the number of remaining iterators in * removed and {@link #size()} will return the number of remaining iterators in
* the queue. * the queue.
* *
* @param <E> the type of elements in this iterator.
* @since 2.1 * @since 2.1
*/ */
public class IteratorChain<E> implements Iterator<E> { public class IteratorChain<E> implements Iterator<E> {

View File

@ -43,6 +43,7 @@ import java.util.Iterator;
* NOTE: The LazyIteratorChain may contain no iterators. In this case the class will * NOTE: The LazyIteratorChain may contain no iterators. In this case the class will
* function as an empty iterator. * function as an empty iterator.
* *
* @param <E> the type of elements in this iterator.
* @since 4.0 * @since 4.0
*/ */
public abstract class LazyIteratorChain<E> implements Iterator<E> { public abstract class LazyIteratorChain<E> implements Iterator<E> {

View File

@ -43,6 +43,7 @@ import org.apache.commons.collections4.ResettableListIterator;
* <p> * <p>
* This class implements ResettableListIterator from Commons Collections 3.2. * This class implements ResettableListIterator from Commons Collections 3.2.
* *
* @param <E> the type of elements in this iterator.
* @since 2.1 * @since 2.1
*/ */
public class ListIteratorWrapper<E> implements ResettableListIterator<E> { public class ListIteratorWrapper<E> implements ResettableListIterator<E> {

View File

@ -41,6 +41,7 @@ import org.apache.commons.collections4.OrderedIterator;
* is here. * is here.
* </p> * </p>
* *
* @param <E> the type of elements in this list
* @since 3.0 * @since 3.0
*/ */
public abstract class AbstractLinkedList<E> implements List<E> { public abstract class AbstractLinkedList<E> implements List<E> {
@ -745,6 +746,8 @@ public abstract class AbstractLinkedList<E> implements List<E> {
/** /**
* A list iterator over the linked list. * A list iterator over the linked list.
*
* @param <E> the type of elements in this iterator.
*/ */
protected static class LinkedListIterator<E> implements ListIterator<E>, OrderedIterator<E> { protected static class LinkedListIterator<E> implements ListIterator<E>, OrderedIterator<E> {
@ -904,6 +907,8 @@ public abstract class AbstractLinkedList<E> implements List<E> {
/** /**
* A list iterator over the linked sub list. * A list iterator over the linked sub list.
*
* @param <E> the type of elements in this iterator.
*/ */
protected static class LinkedSubListIterator<E> extends LinkedListIterator<E> { protected static class LinkedSubListIterator<E> extends LinkedListIterator<E> {
@ -947,6 +952,8 @@ public abstract class AbstractLinkedList<E> implements List<E> {
/** /**
* The sublist implementation for AbstractLinkedList. * The sublist implementation for AbstractLinkedList.
*
* @param <E> the type of elements in this list.
*/ */
protected static class LinkedSubList<E> extends AbstractList<E> { protected static class LinkedSubList<E> extends AbstractList<E> {
/** The main list */ /** The main list */

View File

@ -392,6 +392,8 @@ public class CursorableLinkedList<E> extends AbstractLinkedList<E> implements Se
/** /**
* An extended {@code ListIterator} that allows concurrent changes to * An extended {@code ListIterator} that allows concurrent changes to
* the underlying list. * the underlying list.
*
* @param <E> the type of elements in this cursor.
*/ */
public static class Cursor<E> extends AbstractLinkedList.LinkedListIterator<E> { public static class Cursor<E> extends AbstractLinkedList.LinkedListIterator<E> {
/** Is the cursor valid (not closed) */ /** Is the cursor valid (not closed) */
@ -562,6 +564,7 @@ public class CursorableLinkedList<E> extends AbstractLinkedList<E> implements Se
/** /**
* A cursor for the sublist based on LinkedSubListIterator. * A cursor for the sublist based on LinkedSubListIterator.
* *
* @param <E> the type of elements in this cursor.
* @since 3.2 * @since 3.2
*/ */
protected static class SubCursor<E> extends Cursor<E> { protected static class SubCursor<E> extends Cursor<E> {