sparsemat / sprs

sparse linear algebra library for rust
Apache License 2.0
411 stars 47 forks source link

Why does `outer_view` return `Option` instead of `Result`? #347

Open ghproek opened 6 months ago

ghproek commented 6 months ago

I'm building an application that uses sprs for sparse matrices, and I've been debating how to handle errors when the user asks for a row or column that is out of bounds. sprs handles this with an option, but I would have expected a Result, for error handling. I'm inclined to use Result in downstream parts of my own application, but if there's a compelling reason why sprs uses Option instead then I might stick to that for consistency with your package! Thank you!

mulimoen commented 6 months ago

Guess this is just an oversight or old API which deserves an upgrade. I would suggest for your crate to create a new error type wrapping the None from sprs (see Option::ok_or_else for a simple way of doing this].