Skip to content

Commit ba5774d

Browse files
authored
Upgrade to FunctionImplementations.jl v0.4 (#67)
1 parent c3942b3 commit ba5774d

4 files changed

Lines changed: 19 additions & 21 deletions

File tree

Project.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "DiagonalArrays"
22
uuid = "74fd4be6-21e2-4f6f-823a-4360d37c7a77"
33
authors = ["ITensor developers <support@itensor.org> and contributors"]
4-
version = "0.3.28"
4+
version = "0.3.29"
55

66
[deps]
77
ArrayLayouts = "4c555306-a7a7-4459-81d9-ec55ddd5c99a"
@@ -22,12 +22,12 @@ DiagonalArraysNamedDimsArraysExt = "NamedDimsArrays"
2222
[compat]
2323
ArrayLayouts = "1.10.4"
2424
FillArrays = "1.13"
25-
FunctionImplementations = "0.3.1"
25+
FunctionImplementations = "0.4"
2626
LinearAlgebra = "1.10"
2727
MapBroadcast = "0.1.10"
2828
MatrixAlgebraKit = "0.2, 0.3, 0.4, 0.5, 0.6"
2929
NamedDimsArrays = "0.13"
30-
SparseArraysBase = "0.8.1"
30+
SparseArraysBase = "0.9"
3131
julia = "1.10"
3232

3333
[workspace]

src/abstractdiagonalarray/diagonalarraydiaginterface.jl

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,21 @@
33
diagview(a::AbstractDiagonalArray) = throw(MethodError(diagview, Tuple{typeof(a)}))
44

55
using FunctionImplementations: FunctionImplementations
6-
using SparseArraysBase: SparseArraysBase as SA, AbstractSparseArrayStyle
6+
using SparseArraysBase: SparseArraysBase as SA, AbstractSparseArrayImplementationStyle
77

8-
abstract type AbstractDiagonalArrayStyle <: AbstractSparseArrayStyle end
8+
abstract type AbstractDiagonalArrayImplementationStyle <: AbstractSparseArrayImplementationStyle end
99

10-
struct DiagonalArrayStyle <: AbstractDiagonalArrayStyle end
11-
const diag_style = DiagonalArrayStyle()
10+
struct DiagonalArrayImplementationStyle <: AbstractDiagonalArrayImplementationStyle end
11+
const diag_style = DiagonalArrayImplementationStyle()
1212

13-
function FunctionImplementations.Style(::Type{<:AbstractDiagonalArray})
14-
return DiagonalArrayStyle()
13+
function FunctionImplementations.ImplementationStyle(::Type{<:AbstractDiagonalArray})
14+
return DiagonalArrayImplementationStyle()
1515
end
1616

17-
module Broadcast
18-
import SparseArraysBase as SA
19-
abstract type AbstractDiagonalArrayStyle{N} <: SA.Broadcast.AbstractSparseArrayStyle{N} end
20-
struct DiagonalArrayStyle{N} <: AbstractDiagonalArrayStyle{N} end
21-
DiagonalArrayStyle{M}(::Val{N}) where {M, N} = DiagonalArrayStyle{N}()
22-
end
17+
using SparseArraysBase: AbstractSparseArrayStyle
18+
abstract type AbstractDiagonalArrayStyle{N} <: AbstractSparseArrayStyle{N} end
19+
struct DiagonalArrayStyle{N} <: AbstractDiagonalArrayStyle{N} end
20+
DiagonalArrayStyle{M}(::Val{N}) where {M, N} = DiagonalArrayStyle{N}()
2321

2422
using SparseArraysBase: getstoredindex
2523
const getstoredindex_diag = diag_style(getstoredindex)
@@ -111,7 +109,7 @@ const storedpairs_diag = diag_style(storedpairs)
111109
storedpairs_diag(a::AbstractArray) = sparse_style(storedpairs)(a)
112110

113111
function Base.Broadcast.BroadcastStyle(type::Type{<:AbstractDiagonalArray})
114-
return Broadcast.DiagonalArrayStyle{ndims(type)}()
112+
return DiagonalArrayStyle{ndims(type)}()
115113
end
116114

117115
using Base.Broadcast: Broadcasted, broadcasted
@@ -125,10 +123,10 @@ function broadcasted_diagview(bc::Broadcasted)
125123
)
126124
return broadcasted(m.f, map(diagview, m.args)...)
127125
end
128-
function Base.copy(bc::Broadcasted{<:Broadcast.DiagonalArrayStyle})
126+
function Base.copy(bc::Broadcasted{<:DiagonalArrayStyle})
129127
return DiagonalArray(copy(broadcasted_diagview(bc)), axes(bc))
130128
end
131-
function Base.copyto!(dest::AbstractArray, bc::Broadcasted{<:Broadcast.DiagonalArrayStyle})
129+
function Base.copyto!(dest::AbstractArray, bc::Broadcasted{<:DiagonalArrayStyle})
132130
copyto!(diagview(dest), broadcasted_diagview(bc))
133131
return dest
134132
end

src/diagonalarray/diagonalarray.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ _broadcasted(::typeof(cosh), a::Zeros) = Ones{typeof(cosh(zero(eltype(a))))}(axe
410410
_broadcast(f::F, a::AbstractArray) where {F} = copy(_broadcasted(f, a))
411411

412412
function Base.Broadcast.broadcasted(
413-
::Broadcast.DiagonalArrayStyle{N}, f::F, a::DiagonalArray{T, N, Diag}
413+
::DiagonalArrayStyle{N}, f::F, a::DiagonalArray{T, N, Diag}
414414
) where {F, T, N, Diag <: AbstractFill{T}}
415415
# TODO: Check that `f` preserves zeros?
416416
return DiagonalArray(_broadcasted(f, diagview(a)), axes(a))

test/Project.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ Adapt = "4.4"
2222
Aqua = "0.8.9"
2323
DiagonalArrays = "0.3"
2424
FillArrays = "1"
25-
FunctionImplementations = "0.3"
25+
FunctionImplementations = "0.4"
2626
JLArrays = "0.3"
2727
LinearAlgebra = "1"
2828
MatrixAlgebraKit = "0.2.5, 0.3, 0.4, 0.5, 0.6"
2929
NamedDimsArrays = "0.13"
3030
SafeTestsets = "0.1"
31-
SparseArraysBase = "0.8"
31+
SparseArraysBase = "0.9"
3232
StableRNGs = "1"
3333
Suppressor = "0.2"
3434
Test = "1"

0 commit comments

Comments
 (0)