Interface XSequence<E>
- All Superinterfaces:
CapacityCarrying
,CapacityExtendable
,Clearable
,ConsolidatableCollection
,Consumer<E>
,Copyable
,ExtendedCollection<E>
,ExtendedSequence<E>
,Iterable<E>
,OptimizableCollection
,Processable<E>
,ReleasingCollection<E>
,Sized
,Sortable<E>
,Truncateable
,XAddGetCollection<E>
,XAddingCollection<E>
,XAddingSequence<E>
,XBasicSequence<E>
,XCollection<E>
,XExpandingSequence<E>
,XExtendingSequence<E>
,XGettingCollection<E>
,XGettingSequence<E>
,XIndexIterable<E>
,XInputtingSequence<E>
,XInsertingSequence<E>
,XIterable<E>
,XJoinable<E>
,XOrderingSequence<E>
,XPrependingSequence<E>
,XPreputtingSequence<E>
,XProcessingCollection<E>
,XProcessingSequence<E>
,XPutGetCollection<E>
,XPutGetSequence<E>
,XPuttingCollection<E>
,XPuttingSequence<E>
,XRemovingCollection<E>
,XRemovingSequence<E>
,XSortableSequence<E>
- All Known Subinterfaces:
XEnum<E>
,XList<E>
,XTable<K,V>
,XTable.Keys<K,V>
- All Known Implementing Classes:
ArrayCollector
,BulkList
,EqBulkList
,EqHashEnum
,EqHashTable
,EqHashTable.Keys
,HashEnum
,HashTable
,HashTable.Keys
,LimitList
,LockedList
,Single
,SubList
,SynchList
public interface XSequence<E> extends XBasicSequence<E>, XSortableSequence<E>, XInputtingSequence<E>
Being ordered is defined as: An procedure affecting one element does not affect the order of all other elements. Note that being ordered is not the same as being sorted. Being ordered only defines that there has to be a stable order, while being sorted defines that the order is not only stable but also complies to a certain sorting logic.
The concept of being ordered introduces the concept of indexed element accessing as a consequence.
Sequence type collections are architectural on par with the other level 1 collection types set and bag.
Currently existing subtypes of sequence (level 2 collection types) are list (combining sequence and bag), enum (combining sequence and set) and sortation (enhancing the contract from being ordered to being sorted).
Note that all collection types not being a subtype of sequence (like pure set and pure bag subtypes) are rather academic and most probably only reasonably usable for high end performance optimisations. This effectively makes the sequence the dominant level 1 collection type, almost superseding the level 0 collection type collection in practice.
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
XSequence.Creator<E>
Nested classes/interfaces inherited from interface one.microstream.collections.types.XBasicSequence
XBasicSequence.Factory<E>
Nested classes/interfaces inherited from interface one.microstream.collections.types.XGettingSequence
XGettingSequence.Factory<E>
Nested classes/interfaces inherited from interface one.microstream.collections.types.XIterable
XIterable.Executor<E>
-
Method Summary
Modifier and Type Method Description XSequence<E>
addAll(E... elements)
XSequence<E>
addAll(E[] elements, int srcStartIndex, int srcLength)
XSequence<E>
addAll(XGettingCollection<? extends E> elements)
XSequence<E>
copy()
Creates a true copy of this collection which references the same elements as this collection does at the time the method is called.XSequence<E>
putAll(E... elements)
XSequence<E>
putAll(E[] elements, int srcStartIndex, int srcLength)
XSequence<E>
putAll(XGettingCollection<? extends E> elements)
XSequence<E>
sort(Comparator<? super E> comparator)
XSequence<E>
toReversed()
Methods inherited from interface one.microstream.collections.interfaces.CapacityCarrying
isFull, maximumCapacity, remainingCapacity
Methods inherited from interface one.microstream.collections.interfaces.CapacityExtendable
currentCapacity, currentFreeCapacity, ensureCapacity, ensureFreeCapacity
Methods inherited from interface one.microstream.collections.interfaces.ExtendedCollection
nullAllowed
Methods inherited from interface one.microstream.collections.types.XAddingCollection
accept, add, nullAdd
Methods inherited from interface one.microstream.collections.types.XGettingCollection
applies, contains, containsAll, containsId, containsSearched, copyTo, count, countBy, distinct, distinct, equality, equals, equals, equalsContent, except, filterTo, hashCode, hasVolatileElements, intersect, intSize, iterator, join, max, min, nullContained, old, search, seek, size, toArray, toArray, union
Methods inherited from interface one.microstream.collections.types.XGettingSequence
at, copySelection, first, get, hasIndex, immure, indexBy, indexOf, isSorted, last, lastIndexBy, lastIndexOf, maxIndex, minIndex, peek, poll, range, scan, view
Methods inherited from interface one.microstream.collections.types.XInputtingSequence
input, inputAll, inputAll, inputAll, nullInput, prependAll, prependAll, prependAll, preputAll, preputAll, preputAll
Methods inherited from interface one.microstream.collections.types.XInsertingSequence
insert, insertAll, insertAll, insertAll, nullInsert
Methods inherited from interface one.microstream.collections.types.XPrependingSequence
nullPrepend, prepend
Methods inherited from interface one.microstream.collections.types.XPreputtingSequence
nullPreput, preput
Methods inherited from interface one.microstream.collections.types.XProcessingCollection
fetch, iterate, moveTo, pinch, removeBy, removeDuplicates, retrieve, retrieveBy
Methods inherited from interface one.microstream.collections.types.XProcessingSequence
moveSelection, pick, pop, removeAt, view
Methods inherited from interface one.microstream.collections.types.XRemovingCollection
clear, consolidate, nullRemove, optimize, remove, removeAll, removeDuplicates, removeOne, retainAll, truncate
Methods inherited from interface one.microstream.collections.types.XRemovingSequence
removeRange, removeSelection, retainRange
-
Method Details
-
putAll
- Specified by:
putAll
in interfaceXBasicSequence<E>
- Specified by:
putAll
in interfaceXCollection<E>
- Specified by:
putAll
in interfaceXExpandingSequence<E>
- Specified by:
putAll
in interfaceXInputtingSequence<E>
- Specified by:
putAll
in interfaceXPutGetCollection<E>
- Specified by:
putAll
in interfaceXPutGetSequence<E>
- Specified by:
putAll
in interfaceXPuttingCollection<E>
- Specified by:
putAll
in interfaceXPuttingSequence<E>
-
putAll
- Specified by:
putAll
in interfaceXBasicSequence<E>
- Specified by:
putAll
in interfaceXCollection<E>
- Specified by:
putAll
in interfaceXExpandingSequence<E>
- Specified by:
putAll
in interfaceXInputtingSequence<E>
- Specified by:
putAll
in interfaceXPutGetCollection<E>
- Specified by:
putAll
in interfaceXPutGetSequence<E>
- Specified by:
putAll
in interfaceXPuttingCollection<E>
- Specified by:
putAll
in interfaceXPuttingSequence<E>
-
putAll
- Specified by:
putAll
in interfaceXBasicSequence<E>
- Specified by:
putAll
in interfaceXCollection<E>
- Specified by:
putAll
in interfaceXExpandingSequence<E>
- Specified by:
putAll
in interfaceXInputtingSequence<E>
- Specified by:
putAll
in interfaceXPutGetCollection<E>
- Specified by:
putAll
in interfaceXPutGetSequence<E>
- Specified by:
putAll
in interfaceXPuttingCollection<E>
- Specified by:
putAll
in interfaceXPuttingSequence<E>
-
addAll
- Specified by:
addAll
in interfaceXAddGetCollection<E>
- Specified by:
addAll
in interfaceXAddingCollection<E>
- Specified by:
addAll
in interfaceXAddingSequence<E>
- Specified by:
addAll
in interfaceXBasicSequence<E>
- Specified by:
addAll
in interfaceXCollection<E>
- Specified by:
addAll
in interfaceXExpandingSequence<E>
- Specified by:
addAll
in interfaceXExtendingSequence<E>
- Specified by:
addAll
in interfaceXInputtingSequence<E>
- Specified by:
addAll
in interfaceXInsertingSequence<E>
- Specified by:
addAll
in interfaceXPutGetCollection<E>
- Specified by:
addAll
in interfaceXPutGetSequence<E>
-
addAll
- Specified by:
addAll
in interfaceXAddGetCollection<E>
- Specified by:
addAll
in interfaceXAddingCollection<E>
- Specified by:
addAll
in interfaceXAddingSequence<E>
- Specified by:
addAll
in interfaceXBasicSequence<E>
- Specified by:
addAll
in interfaceXCollection<E>
- Specified by:
addAll
in interfaceXExpandingSequence<E>
- Specified by:
addAll
in interfaceXExtendingSequence<E>
- Specified by:
addAll
in interfaceXInputtingSequence<E>
- Specified by:
addAll
in interfaceXInsertingSequence<E>
- Specified by:
addAll
in interfaceXPutGetCollection<E>
- Specified by:
addAll
in interfaceXPutGetSequence<E>
-
addAll
- Specified by:
addAll
in interfaceXAddGetCollection<E>
- Specified by:
addAll
in interfaceXAddingCollection<E>
- Specified by:
addAll
in interfaceXAddingSequence<E>
- Specified by:
addAll
in interfaceXBasicSequence<E>
- Specified by:
addAll
in interfaceXCollection<E>
- Specified by:
addAll
in interfaceXExpandingSequence<E>
- Specified by:
addAll
in interfaceXExtendingSequence<E>
- Specified by:
addAll
in interfaceXInputtingSequence<E>
- Specified by:
addAll
in interfaceXInsertingSequence<E>
- Specified by:
addAll
in interfaceXPutGetCollection<E>
- Specified by:
addAll
in interfaceXPutGetSequence<E>
-
copy
Description copied from interface:XGettingCollection
Creates a true copy of this collection which references the same elements as this collection does at the time the method is called. The elements themselves are NOT copied (no deep copying).
The type of the returned set is the same as of this list if possible.- Specified by:
copy
in interfaceCopyable
- Specified by:
copy
in interfaceXAddGetCollection<E>
- Specified by:
copy
in interfaceXBasicSequence<E>
- Specified by:
copy
in interfaceXCollection<E>
- Specified by:
copy
in interfaceXGettingCollection<E>
- Specified by:
copy
in interfaceXGettingSequence<E>
- Specified by:
copy
in interfaceXPutGetCollection<E>
- Specified by:
copy
in interfaceXPutGetSequence<E>
- Specified by:
copy
in interfaceXSortableSequence<E>
- Returns:
- a copy of this list
-
toReversed
- Specified by:
toReversed
in interfaceXBasicSequence<E>
- Specified by:
toReversed
in interfaceXGettingSequence<E>
- Specified by:
toReversed
in interfaceXProcessingSequence<E>
- Specified by:
toReversed
in interfaceXPutGetSequence<E>
- Specified by:
toReversed
in interfaceXSortableSequence<E>
-
sort
-