@@ -11,7 +11,7 @@ import LazyArrays: MemoryLayout, Applied, ApplyStyle, flatten, _flatten, colsupp
11
11
simplifiable, _simplify, AbstractLazyLayout, AbstractPaddedLayout, simplify, Dot
12
12
import LinearAlgebra: pinv, inv, dot, norm2, ldiv!, mul!
13
13
import BandedMatrices: AbstractBandedLayout, _BandedMatrix
14
- import BlockArrays: block, blockindex, unblock, blockedrange, _BlockedUnitRange, _BlockArray
14
+ import BlockArrays: block, blockindex, unblock, blockedrange, _BlockedUnitRange, _BlockArray, BlockIndexRange, _maybetail
15
15
import FillArrays: AbstractFill, getindex_value, SquareEye
16
16
import ArrayLayouts: mul, ldiv, ZerosLayout, ScalarLayout, AbstractStridedLayout, check_mul_axes, check_ldiv_axes
17
17
import QuasiArrays: cardinality, checkindex, QuasiAdjoint, QuasiTranspose, Inclusion, SubQuasiArray,
85
85
@inline to_indices (A:: AbstractQuasiArray , inds, I:: Tuple{BlockIndex{1}, Vararg{Any}} ) =
86
86
(inds[1 ][I[1 ]], to_indices (A, _cutdim (inds, I[1 ]), tail (I))... )
87
87
@inline to_indices (A:: AbstractQuasiArray , I:: Tuple{BlockRange, Vararg{Any}} ) = to_indices (A, axes (A), I)
88
+ @inline to_indices (A:: AbstractQuasiArray , inds, I:: Tuple{AbstractVector{Block{1,R}}, Vararg{Any}} ) where R =
89
+ (unblock (A, inds, I), to_indices (A, _maybetail (inds), tail (I))... )
90
+ @inline to_indices (A:: AbstractQuasiArray , inds, I:: Tuple{BlockIndexRange{1,R}, Vararg{Any}} ) where R =
91
+ (unblock (A, inds, I), to_indices (A, _maybetail (inds), tail (I))... )
92
+ @inline to_indices (A:: AbstractQuasiArray , inds, I:: Tuple{AbstractVector{<:BlockIndex{1}}, Vararg{Any}} ) =
93
+ (inds[1 ][I[1 ]], to_indices (A, _cutdim (inds, I[1 ]), tail (I))... )
94
+ @inline to_indices (A:: AbstractQuasiArray , inds, I:: Tuple{AbstractVector{<:BlockIndexRange{1}}, Vararg{Any}} ) =
95
+ (unblock (A, inds, I), to_indices (A, _maybetail (inds), tail (I))... )
88
96
89
- @inline to_indices (A:: AbstractQuasiArray , inds, I:: Tuple{AbstractArray{<:BlockIndex{1}}, Vararg{Any}} ) =
90
- (inds[1 ][I[1 ]], to_indices (A, _cutdim (inds, I[1 ]), tail (I))... )
91
97
92
98
checkpoints (x:: Number ) = x
93
99
checkpoints (d:: AbstractInterval{T} ) where T = width (d) .* SVector {3,float(T)} (0.823972 ,0.01 ,0.3273484 ) .+ leftendpoint (d)
0 commit comments