@Override
            public Cell next() {
                if (currOffset == index.denseSubspaceSize) {
                    currentBlock = blockIterator.next();
                    currOffset = 0;
                }
                if (currOffset != prevOffset) { // Optimization for index.denseSubspaceSize == 1
                    index.denseOffsetToAddress(currOffset, labels);
                }
                TensorAddress fullAddr = currentBlock.sparseAddress.fullAddressOf(index.type.dimensions(), labels);
                prevOffset = currOffset;
                double value = currentBlock.cells[currOffset++];
                return new Cell(fullAddr, value);
            }
Returns an iterator over the cells of this tensor.
Cells are returned in order of increasing indexes in the
indexed dimensions, increasing indexes of later dimensions
in the dimension type before earlier. No guarantee is
given for the order of sparse dimensions.
vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java