Interface XProcessingCollection<E>

All Superinterfaces:
CapacityCarrying, Clearable, ConsolidatableCollection, Copyable, ExtendedCollection<E>, Iterable<E>, OptimizableCollection, Processable<E>, ReleasingCollection<E>, Sized, Truncateable, XGettingCollection<E>, XIterable<E>, XJoinable<E>, XRemovingCollection<E>
All Known Subinterfaces:
XBag<E>, XBasicEnum<E>, XBasicList<E>, XBasicSequence<E>, XBasicTable<K,​V>, XBasicTable.Keys<K,​V>, XBasicTable.Values<K,​V>, XChart<K,​V>, XChart.Keys<K,​V>, XChart.Values<K,​V>, XCollection<E>, XDecreasingEnum<E>, XDecreasingList<E>, XDecreasingSequence<E>, XEnum<E>, XLadder<E>, XList<E>, XMap<K,​V>, XMap.Keys<K,​V>, XMap.Values<K,​V>, XProcessingBag<E>, XProcessingEnum<E>, XProcessingList<E>, XProcessingMap.Keys<K,​V>, XProcessingMap.Values<K,​V>, XProcessingSequence<E>, XProcessingSet<E>, XProcessingSortation<E>, XRank<E>, XSequence<E>, XSet<E>, XSortation<E>, XTable<K,​V>, XTable.Keys<K,​V>, XTable.Values<K,​V>
All Known Implementing Classes:
ArrayCollector, BulkList, EnumProcessor, EqBulkList, EqHashEnum, EqHashTable, EqHashTable.Keys, EqHashTable.Values, HashEnum, HashTable, HashTable.Keys, HashTable.Values, LimitList, ListProcessor, LockedCollection, LockedList, LockedMap, MutexSet, OpenAdressingMiniSet, Single, SubList, SubListProcessor, SubProcessor, SynchCollection, SynchList, SynchSet

public interface XProcessingCollection<E>
extends Processable<E>, XRemovingCollection<E>, XGettingCollection<E>
Curiously, a removing collection has to be a getting collection as well, because some removal procedures could be abused to read the contained elements (e.g. retrieveBy(Predicate)). Splitting it up into a (pure) RemovingCollection and a RemGetCollection would cause more structural clutter than it's worth.
  • Method Details

    • fetch

      E fetch()
    • pinch

      E pinch()
    • retrieve

      E retrieve​(E element)
    • retrieveBy

      E retrieveBy​(Predicate<? super E> predicate)
    • removeDuplicates

      long removeDuplicates​(Equalator<? super E> equalator)
    • removeBy

      long removeBy​(Predicate<? super E> predicate)
    • moveTo

      <C extends Consumer<? super E>> C moveTo​(C target, Predicate<? super E> predicate)
    • iterate

      <P extends Consumer<? super E>> P iterate​(P procedure)
      Description copied from interface: XIterable
      Executes the given procedure for each element of the XIterable until all elements have been processed or the action throws an exception. Unless otherwise specified by the implementing class, procedures are performed in the order of iteration (if an iteration order is specified). Exceptions thrown by the procedure are relayed to the caller.
      Should be identical to Iterable.forEach(Consumer).
      Specified by:
      iterate in interface XIterable<E>
      Type Parameters:
      P - type of procedure
      Parameters:
      procedure - The procedure to be performed for each element
      Returns:
      Given procedure