Start BlockSparseArraysExt and testing #16
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR creates a small
KroneckerArraysBlockSparseArraysExtpackage extension for helping with compatibility between BlockSparseArrays.jl and KroneckerArrays.jl, specifically making it easier to work with block sparse arrays that have Kronecker arrays as blocks.The goal is for both packages to be generic enough and featureful enough that working with block sparse arrays that have Kronecker arrays as blocks "just works", but of course that requires careful designing of each package to make that happen. A number of operations already work thanks to recent PRs I've made to both packages, I've started adding tests in this PR tracking which operations work and which ones are currently broken (marked with
@test_broken).Right now the package extension just defines a convenient constructor for making axes of block sparse arrays that have Kronecker arrays as blocks, namely it overloads the
blockrangeconstructor for making a block unit range with Cartesian product blocks which enables writing code like the following: