@@ -290,13 +290,6 @@ function blockrange(axis::AbstractUnitRange, r::Int)
290
290
return error (" Slicing with integer values isn't supported." )
291
291
end
292
292
293
- function blockrange (axis:: AbstractUnitRange , r:: AbstractVector{<:Block{1}} )
294
- for b in r
295
- @assert b ∈ blockaxes (axis, 1 )
296
- end
297
- return r
298
- end
299
-
300
293
# This handles changing the blocking, for example:
301
294
# a = BlockSparseArray{Float64}([2, 2, 2, 2], [2, 2, 2, 2])
302
295
# I = blockedrange([4, 4])
@@ -315,13 +308,20 @@ end
315
308
# I = BlockedVector([Block(4), Block(3), Block(2), Block(1)], [2, 2])
316
309
# I = BlockVector([Block(4), Block(3), Block(2), Block(1)], [2, 2])
317
310
# a[I, I]
318
- function blockrange (axis:: BlockedOneTo{<:Integer} , r:: AbstractBlockVector{<:Block{1}} )
311
+ function blockrange (axis:: AbstractUnitRange , r:: AbstractBlockVector{<:Block{1}} )
319
312
for b in r
320
313
@assert b ∈ blockaxes (axis, 1 )
321
314
end
322
315
return only (blockaxes (r))
323
316
end
324
317
318
+ function blockrange (axis:: AbstractUnitRange , r:: AbstractVector{<:Block{1}} )
319
+ for b in r
320
+ @assert b ∈ blockaxes (axis, 1 )
321
+ end
322
+ return r
323
+ end
324
+
325
325
using BlockArrays: BlockSlice
326
326
function blockrange (axis:: AbstractUnitRange , r:: BlockSlice )
327
327
return blockrange (axis, r. block)
0 commit comments