Class IntrusiveLinkedList<T extends LinkedListEntry<T,T>>
java.lang.Object
java.util.AbstractCollection<E>
net.automatalib.common.smartcollection.AbstractSmartCollection<E>
net.automatalib.common.smartcollection.AbstractLinkedList<T,T>
net.automatalib.common.smartcollection.IntrusiveLinkedList<T>
- Type Parameters:
T- element class, must implementLinkedListEntry.
- All Implemented Interfaces:
Iterable<T>,Collection<T>,SmartCollection<T>,SmartSequence<T>
An intrusive version of a linked list. When using this linked list implementation, the elements themselves have to
store the reference to their successors and predecessors, i.e., must implement the
LinkedListEntry
interface.
Note that this furthermore implies that each such element can only be stored in at most one IntrusiveLinkedList.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected TCreates (if necessary) aLinkedListEntryfor the given element.Methods inherited from class net.automatalib.common.smartcollection.AbstractLinkedList
castRef, choose, chooseRef, clear, concat, get, getBack, getBackEntry, getBackReference, getFront, getFrontEntry, getFrontReference, insertAfter, insertAfterEntry, insertBefore, insertBeforeEntry, isEmpty, iterator, popBack, popBackEntry, popFront, popFrontEntry, pred, pushBack, pushBackEntry, pushFront, pushFrontEntry, referencedAdd, referenceIterator, remove, removeEntry, replace, replaceEntry, size, succ, swapMethods inherited from class net.automatalib.common.smartcollection.AbstractSmartCollection
add, addAll, addAll, deepClear, find, quickClear, references, removeMethods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, removeAll, retainAll, toArray, toArray, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
add, addAll, contains, containsAll, equals, hashCode, parallelStream, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArrayMethods inherited from interface net.automatalib.common.smartcollection.SmartCollection
addAll, addAll, deepClear, find, quickClear, references, remove
-
Constructor Details
-
IntrusiveLinkedList
public IntrusiveLinkedList()
-
-
Method Details
-
makeEntry
Description copied from class:AbstractLinkedListCreates (if necessary) aLinkedListEntryfor the given element. For intrusive linked lists, e.g., the argument itself is returned.- Specified by:
makeEntryin classAbstractLinkedList<T extends LinkedListEntry<T,T>, T extends LinkedListEntry<T, T>> - Parameters:
element- the element for which to retrieve an entry.- Returns:
- the entry for the given element.
-