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>
Level 1 collection type defining the single demand for the collection's elements to be ordered.

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.