@@ -403,6 +403,8 @@ sub_materialize(lay::InvColumnLayout, v::AbstractVector, ax::Tuple{InfAxes}) =
403403Base. _unsafe_getindex (:: IndexStyle , A:: AbstractVector , r:: InfAxes ) = layout_getindex (A, r)
404404Base. _unsafe_getindex (:: IndexStyle , A:: AbstractFill{<:Any,1} , r:: InfAxes ) = FillArrays. _fill_getindex (A, r)
405405getindex (A:: AbstractCachedVector , r:: InfAxes ) = layout_getindex (A, r)
406+ # preserve padded/fill structure
407+ getindex (A:: CachedVector{<:Any,<:AbstractVector,<:AbstractFill{<:Any,1}} , r:: InfAxes ) = LazyArrays. cache_getindex (A, r)
406408# don't resize to ∞
407409Base. isassigned (A:: AbstractCachedVector , r:: InfiniteCardinal{0} ) = true
408410getindex (A:: AbstractCachedVector , r:: InfiniteCardinal{0} ) = A. array[r]
@@ -421,4 +423,5 @@ Base._unsafe_getindex(::IndexStyle, A::AbstractFill{<:Any,2}, kr::InfAxes, jr::U
421423
422424Base. checkindex (:: Type{Bool} , inds:: AbstractUnitRange , I:: AbstractFill ) = Base. checkindex (Bool, inds, getindex_value (I))
423425LazyArrays. cache_getindex (:: InfiniteCardinal{0} , A:: AbstractVector , I, J... ) = layout_getindex (A, I, J... )
426+ LazyArrays. cache_getindex (:: InfiniteCardinal{0} , A:: CachedVector{<:Any,<:AbstractVector,<:AbstractFill{<:Any,1}} , I:: AbstractVector ) = LazyArrays. cache_getindex (nothing , A, I)
424427
0 commit comments