Class ListConcatenation<E>

  • All Implemented Interfaces:
    java.lang.Iterable<E>, java.util.Collection<E>, java.util.List<E>

    class ListConcatenation<E>
    extends java.util.AbstractList<E>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private FingerTree<java.util.List<E>,​java.lang.Integer> ft  
      private static ToSemigroup<java.util.List<?>,​java.lang.Integer> LIST_SIZE_MONOID  
      • Fields inherited from class java.util.AbstractList

        modCount
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) static <E> java.util.List<E> create​(java.util.List<java.util.List<? extends E>> lists)  
      private ListConcatenation<E> drop​(int n)  
      E get​(int index)  
      int size()  
      java.util.List<E> subList​(int from, int to)  
      private ListConcatenation<E> trim​(int limit)  
      • Methods inherited from class java.util.AbstractList

        add, add, addAll, clear, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, set
      • Methods inherited from class java.util.AbstractCollection

        addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Collection

        parallelStream, removeIf, stream, toArray
      • Methods inherited from interface java.lang.Iterable

        forEach
      • Methods inherited from interface java.util.List

        addAll, contains, containsAll, isEmpty, remove, removeAll, replaceAll, retainAll, sort, spliterator, toArray, toArray
    • Field Detail

      • LIST_SIZE_MONOID

        private static final ToSemigroup<java.util.List<?>,​java.lang.Integer> LIST_SIZE_MONOID
      • ft

        private final FingerTree<java.util.List<E>,​java.lang.Integer> ft
    • Constructor Detail

      • ListConcatenation

        ListConcatenation​(FingerTree<java.util.List<E>,​java.lang.Integer> ft)
    • Method Detail

      • create

        static <E> java.util.List<E> create​(java.util.List<java.util.List<? extends E>> lists)
      • get

        public E get​(int index)
        Specified by:
        get in interface java.util.List<E>
        Specified by:
        get in class java.util.AbstractList<E>
      • size

        public int size()
        Specified by:
        size in interface java.util.Collection<E>
        Specified by:
        size in interface java.util.List<E>
        Specified by:
        size in class java.util.AbstractCollection<E>
      • subList

        public java.util.List<E> subList​(int from,
                                         int to)
        Specified by:
        subList in interface java.util.List<E>
        Overrides:
        subList in class java.util.AbstractList<E>