Skip to content

Commit 9a429fe

Browse files
authored
Avoid explicit one-based indexing in structured broadcast copyto! methods (#1375)
Most of these (barring `SymTridiagonal`) can be easily expressed in terms of `eachindex`, since the bands are one-based. This makes the code cleaner.
1 parent 1201b1f commit 9a429fe

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/structuredbroadcast.jl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ function copyto!(dest::Diagonal, bc::Broadcasted{<:StructuredMatrixStyle})
212212
isvalidstructbc(dest, bc) || return copyto!(dest, convert(Broadcasted{Nothing}, bc))
213213
axs = axes(dest)
214214
axes(bc) == axs || Broadcast.throwdm(axes(bc), axs)
215-
for i in axs[1]
215+
for i in eachindex(dest.diag)
216216
dest.diag[i] = @inbounds bc[BandIndex(0, i)]
217217
end
218218
return dest
@@ -222,15 +222,15 @@ function copyto!(dest::Bidiagonal, bc::Broadcasted{<:StructuredMatrixStyle})
222222
isvalidstructbc(dest, bc) || return copyto!(dest, convert(Broadcasted{Nothing}, bc))
223223
axs = axes(dest)
224224
axes(bc) == axs || Broadcast.throwdm(axes(bc), axs)
225-
for i in axs[1]
225+
for i in eachindex(dest.dv)
226226
dest.dv[i] = @inbounds bc[BandIndex(0, i)]
227227
end
228228
if dest.uplo == 'U'
229-
for i = 1:size(dest, 1)-1
229+
for i in eachindex(dest.ev)
230230
dest.ev[i] = @inbounds bc[BandIndex(1, i)]
231231
end
232232
else
233-
for i = 1:size(dest, 1)-1
233+
for i in eachindex(dest.ev)
234234
dest.ev[i] = @inbounds bc[BandIndex(-1, i)]
235235
end
236236
end
@@ -257,13 +257,13 @@ function copyto!(dest::Tridiagonal, bc::Broadcasted{<:StructuredMatrixStyle})
257257
isvalidstructbc(dest, bc) || return copyto!(dest, convert(Broadcasted{Nothing}, bc))
258258
axs = axes(dest)
259259
axes(bc) == axs || Broadcast.throwdm(axes(bc), axs)
260-
for i in axs[1]
260+
for i in eachindex(dest.d)
261261
dest.d[i] = @inbounds bc[BandIndex(0, i)]
262262
end
263-
for i = 1:size(dest, 1)-1
263+
for i in eachindex(dest.du)
264264
dest.du[i] = @inbounds bc[BandIndex(1, i)]
265265
end
266-
for i = 1:size(dest, 1)-1
266+
for i in eachindex(dest.dl)
267267
dest.dl[i] = @inbounds bc[BandIndex(-1, i)]
268268
end
269269
return dest

0 commit comments

Comments
 (0)