@@ -15,14 +15,33 @@ function Base.copy(a::AnyAbstractSparseArray)
1515 return copyto! (similar (a), a)
1616end
1717
18+ function similar_sparsearray (a:: AnyAbstractSparseArray , unstored:: Unstored )
19+ return SparseArrayDOK (unstored)
20+ end
21+ function similar_sparsearray (a:: AnyAbstractSparseArray , T:: Type , ax:: Tuple )
22+ return similar_sparsearray (a, Unstored (unstoredsimilar (unstored (a), T, ax)))
23+ end
24+ function similar_sparsearray (a:: AnyAbstractSparseArray , T:: Type )
25+ return similar_sparsearray (a, Unstored (unstoredsimilar (unstored (a), T)))
26+ end
27+ function similar_sparsearray (a:: AnyAbstractSparseArray , ax:: Tuple )
28+ return similar_sparsearray (a, Unstored (unstoredsimilar (unstored (a), ax)))
29+ end
30+ function similar_sparsearray (a:: AnyAbstractSparseArray )
31+ return similar_sparsearray (a, Unstored (unstored (a)))
32+ end
33+
34+ function Base. similar (a:: AnyAbstractSparseArray , unstored:: Unstored )
35+ return similar_sparsearray (a, unstored)
36+ end
1837function Base. similar (a:: AnyAbstractSparseArray )
19- return SparseArrayDOK ( Unstored ( unstored (a)) )
38+ return similar_sparsearray (a )
2039end
2140function Base. similar (a:: AnyAbstractSparseArray , T:: Type )
22- return SparseArrayDOK ( Unstored ( unstoredsimilar ( unstored (a) , T)) )
41+ return similar_sparsearray (a , T)
2342end
2443function Base. similar (a:: AnyAbstractSparseArray , ax:: Tuple )
25- return similar (a, eltype (a) , ax)
44+ return similar_sparsearray (a , ax)
2645end
2746function Base. similar (a:: AnyAbstractSparseArray , T:: Type , ax:: Tuple )
2847 return similar_sparsearray (a, T, ax)
@@ -39,9 +58,6 @@ function Base.similar(
3958)
4059 return similar_sparsearray (a, T, ax)
4160end
42- function similar_sparsearray (a:: AnyAbstractSparseArray , T:: Type , ax:: Tuple )
43- return SparseArrayDOK (Unstored (unstoredsimilar (unstored (a), T, ax)))
44- end
4561
4662using DerivableInterfaces: @derive
4763
0 commit comments