dispose() {
        markAsDisposed(this);
        this._isDisposed = true;
        this.clearAndDisposeAll();
    }
Disposes of all stored values and mark this object as disposed.

Trying to use this object after it has been disposed of is an error.