I want to extend the
nzrange - rowvals - nonzeros interface from
SparseMatrixCSC to views of sparse matrices. That would allow to re-formulate many of the standard algorithms for
SparseMatrixCSC and extend them to the views without further effort.
The existing exported functions
SparseArrays.nzrange … are currently only defined for
SparseMatrixCSC. Most existing algorithms for
SparseMatrixCSC access the data fields
SparseMatrixCSC directly. It would be easy to replace the access by calls to the interface functions. The implementations of these is trivial for
SparseMatrixCSC. For a certain class of views of
SparseMatrixCSC it is also possible to define the functions in a way, that makes the re-written algorithms working for the views as well. I think, that was the original idea for defining the interface functions, which was not completed yet.
At the same time, some unexported functions have been defined to access the fields (
getcolptr, getrowval, getnzval), which are essentially equivalent to
nzrange, rowvals, nonzeros, which could be deprecated.