ixfx
    Preparing search index...

    Interface IStackImmutable<V>

    Stack (immutable)

    stack.push(item); // Return a new stack with item(s) added
    stack.pop(); // Return a new stack with top-most item removed (ie. newest)
    stack.peek; // Return what is at the top of the stack or undefined if empty
    stack.isEmpty;
    stack.isFull;
    stack.length; // How many items in stack
    stack.data; // Get the underlying array
    let sanga = new Stack();
    sanga = sanga.push(`bread`, `tomato`, `cheese`);
    sanga.peek; // `cheese`
    sanga = sanga.pop(); // removes `cheese`
    sanga.peek; // `tomato`
    const sangaAlt = sanga.push(`lettuce`, `cheese`); // sanga stays [`bread`, `tomato`], while sangaAlt is [`bread`, `tomato`, `lettuce`, `cheese`]

    Stack can also be created from the basis of an existing array. First index of array will be the bottom of the stack. Stack

    interface IStackImmutable<V> {
        get data(): readonly V[];
        get isEmpty(): boolean;
        get isFull(): boolean;
        get length(): number;
        get peek(): undefined | V;
        forEach(fn: (v: V) => void): void;
        forEachFromTop(fn: (v: V) => void): void;
        pop(): Stacks.IStackImmutable<V>;
        push(...toAdd: readonly V[]): Stacks.IStackImmutable<V>;
    }

    Type Parameters

    • V

      Type of stored items

    Hierarchy (View Summary)

    Implemented by

    Index

    Accessors

    • get peek(): undefined | V

      Get the item at the top of the stack without removing it (like pop would do)

      Returns undefined | V

      Item at the top of the stack, or undefined if empty.

    Methods