Class ByteStack

All Implemented Interfaces:
ByteCollection, ByteContainer, ByteIndexedContainer, Preallocable, Cloneable, Iterable<ByteCursor>, RandomAccess

@Generated(date="2024-05-16T08:18:11+0000", value="KTypeStack.java") public class ByteStack extends ByteArrayList
A subclass of ByteArrayList adding stack-related utility methods. The top of the stack is at the ByteArrayList.size() - 1 element.
  • Constructor Details

    • ByteStack

      public ByteStack()
      New instance with sane defaults.
    • ByteStack

      public ByteStack(int expectedElements)
      New instance with sane defaults.
      Parameters:
      expectedElements - The expected number of elements guaranteed not to cause buffer expansion (inclusive).
    • ByteStack

      public ByteStack(int expectedElements, ArraySizingStrategy resizer)
      New instance with sane defaults.
      Parameters:
      expectedElements - The expected number of elements guaranteed not to cause buffer expansion (inclusive).
      resizer - Underlying buffer sizing strategy.
    • ByteStack

      public ByteStack(ByteContainer container)
      Create a stack by pushing all elements of another container to it.
  • Method Details

    • push

      public void push(byte e1)
      Adds one byte to the stack.
    • push

      public void push(byte e1, byte e2)
      Adds two bytes to the stack.
    • push

      public void push(byte e1, byte e2, byte e3)
      Adds three bytes to the stack.
    • push

      public void push(byte e1, byte e2, byte e3, byte e4)
      Adds four bytes to the stack.
    • push

      public void push(byte[] elements, int start, int len)
      Add a range of array elements to the stack.
    • push

      public final void push(byte... elements)
      Vararg-signature method for pushing elements at the top of the stack.

      This method is handy, but costly if used in tight loops (anonymous array passing)

    • pushAll

      public int pushAll(ByteContainer container)
      Pushes all elements from another container to the top of the stack.
    • pushAll

      public int pushAll(Iterable<? extends ByteCursor> iterable)
      Pushes all elements from another iterable to the top of the stack.
    • discard

      public void discard(int count)
      Discard an arbitrary number of elements from the top of the stack.
    • discard

      public void discard()
      Discard the top element from the stack.
    • pop

      public byte pop()
      Remove the top element from the stack and return it.
    • peek

      public byte peek()
      Peek at the top element on the stack.
    • from

      public static ByteStack from(byte... elements)
      Create a stack by pushing a variable number of arguments to it.
    • clone

      public ByteStack clone()
      Clone this object. The returned clone will reuse the same hash function and array resizing strategy.
      Overrides:
      clone in class ByteArrayList