Skip to content

Commit 17d27bf

Browse files
committed
Generalise adjtrans index getter/setters to accept abstract Integer type
1 parent 7b21cab commit 17d27bf

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/adjtrans.jl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -342,14 +342,14 @@ size(A::AdjOrTransAbsMat) = reverse(size(A.parent))
342342
axes(v::AdjOrTransAbsVec) = (axes(v.parent,2), axes(v.parent)...)
343343
axes(A::AdjOrTransAbsMat) = reverse(axes(A.parent))
344344
IndexStyle(::Type{<:AdjOrTransAbsVec}) = IndexLinear()
345-
@propagate_inbounds Base.isassigned(v::AdjOrTransAbsVec, i::Int) = isassigned(v.parent, i-1+first(axes(v.parent)[1]))
346-
@propagate_inbounds Base.isassigned(v::AdjOrTransAbsMat, i::Int, j::Int) = isassigned(v.parent, j, i)
347-
@propagate_inbounds getindex(v::AdjOrTransAbsVec{T}, i::Int) where {T} = wrapperop(v)(v.parent[i-1+first(axes(v.parent)[1])])::T
348-
@propagate_inbounds getindex(A::AdjOrTransAbsMat{T}, i::Int, j::Int) where {T} = wrapperop(A)(A.parent[j, i])::T
349-
@propagate_inbounds setindex!(v::AdjOrTransAbsVec, x, i::Int) = (setindex!(v.parent, _wrapperop(v)(x), i-1+first(axes(v.parent)[1])); v)
350-
@propagate_inbounds setindex!(A::AdjOrTransAbsMat, x, i::Int, j::Int) = (setindex!(A.parent, _wrapperop(A)(x), j, i); A)
345+
@propagate_inbounds Base.isassigned(v::AdjOrTransAbsVec, i::Integer) = isassigned(v.parent, i - one(i) + first(axes(v.parent)[one(i)]))
346+
@propagate_inbounds Base.isassigned(v::AdjOrTransAbsMat, i::Integer, j::Integer) = isassigned(v.parent, j, i)
347+
@propagate_inbounds getindex(v::AdjOrTransAbsVec{T}, i::Integer) = wrapperop(v)(v.parent[i-one(i)+first(axes(v.parent)[one(i)])])::T
348+
@propagate_inbounds getindex(A::AdjOrTransAbsMat{T}, i::Integer, j::Integer) where {T} = wrapperop(A)(A.parent[j, i])::T
349+
@propagate_inbounds setindex!(v::AdjOrTransAbsVec, x, i::Integer) = (setindex!(v.parent, _wrapperop(v)(x), i - one(i) + first(axes(v.parent)[one(i)])); v)
350+
@propagate_inbounds setindex!(A::AdjOrTransAbsMat, x, i::Integer, j::Integer) = (setindex!(A.parent, _wrapperop(A)(x), j, i); A)
351351
# AbstractArray interface, additional definitions to retain wrapper over vectors where appropriate
352-
@propagate_inbounds getindex(v::AdjOrTransAbsVec, ::Colon, is::AbstractArray{Int}) = wrapperop(v)(v.parent[is])
352+
@propagate_inbounds getindex(v::AdjOrTransAbsVec, ::Colon, is::AbstractArray{Integer}) = wrapperop(v)(v.parent[is])
353353
@propagate_inbounds getindex(v::AdjOrTransAbsVec, ::Colon, ::Colon) = wrapperop(v)(v.parent[:])
354354

355355
# band indexing

0 commit comments

Comments
 (0)