Class AbstractReplicaCollection.ReplicaList

  • All Implemented Interfaces:
    java.lang.Iterable<Replica>
    Enclosing class:
    AbstractReplicaCollection<C extends AbstractReplicaCollection<C>>

    protected static final class AbstractReplicaCollection.ReplicaList
    extends java.lang.Object
    implements java.lang.Iterable<Replica>
    A simple list with no comodification checks and immutability by default (only append permitted, and only one initial copy) this permits us to reduce the amount of garbage generated, by not wrapping iterators or unnecessarily copying and reduces the amount of indirection necessary, as well as ensuring monomorphic callsites TODO flatten into AbstractReplicaCollection?
    • Constructor Detail

      • ReplicaList

        public ReplicaList()
      • ReplicaList

        public ReplicaList​(int capacity)
      • ReplicaList

        public ReplicaList​(Replica[] contents,
                           int begin,
                           int size)
    • Method Detail

      • get

        public Replica get​(int index)
      • add

        public void add​(Replica replica)
      • size

        public int size()
      • isEmpty

        public boolean isEmpty()
      • stream

        public java.util.stream.Stream<Replica> stream()
      • forEach

        public void forEach​(java.util.function.Consumer<? super Replica> forEach)
        Specified by:
        forEach in interface java.lang.Iterable<Replica>
      • anyMatch

        public final boolean anyMatch​(java.util.function.Predicate<? super Replica> predicate)
      • spliterator

        public java.util.Spliterator<Replica> spliterator()
        Specified by:
        spliterator in interface java.lang.Iterable<Replica>
      • iterator

        public java.util.Iterator<Replica> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<Replica>
      • transformIterator

        public <K> java.util.Iterator<K> transformIterator​(java.util.function.Function<? super Replica,​? extends K> function)
      • forEach

        protected <T> void forEach​(java.util.function.Function<? super Replica,​T> function,
                                   java.util.function.Consumer<? super T> action)
      • equals

        public boolean equals​(java.lang.Object to)
        Overrides:
        equals in class java.lang.Object