Skip to content

Commit f3b02bc

Browse files
committed
Revert custom broadcasting on CompositionArrays
1 parent 94b6cd5 commit f3b02bc

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

src/utilities/CompositionArrays.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ CompositionArray(d::Dict) = CompositionArray(TupleDataset(d))
99
CompositionArray{C}(d::Dict) where {C<:AbstractComposition} = CompositionArray{C}(TupleDataset(d))
1010
# Convert CompositionArrays to other CompositionArrays
1111
CompositionArray(a::CompositionArray) = a
12-
CompositionArray{C}(a::CompositionArray) where {C<:AbstractComposition} = C.(a)
12+
CompositionArray{C}(a::CompositionArray) where {C<:AbstractComposition} = CompositionArray(C.(a))
1313
export CompositionArray
1414

1515
# Type aliases for vectors and matrices
@@ -55,10 +55,10 @@ Base.sizehint!(A::CompositionArray, i::Integer) = sizehint!(getfield(A, :data))
5555
Base.copy(A::CompositionArray) = CompositionArray(copy(getfield(A, :data)))
5656

5757
# # Broadcasting interface (enable this if we want broadcasting on CompositionArrays to return CompositionArrays)
58-
struct CompositionArrayStyle <: Base.Broadcast.BroadcastStyle end
59-
Base.Broadcast.BroadcastStyle(::Type{<:CompositionArray}) = CompositionArrayStyle()
60-
Base.Broadcast.BroadcastStyle(::CompositionArrayStyle, ::Base.Broadcast.DefaultArrayStyle) = CompositionArrayStyle()
61-
Base.similar(bc::Base.Broadcast.Broadcasted{CompositionArrayStyle}, ::Type{T}) where {T} = similar(CompositionArray{T}, axes(bc))
58+
# struct CompositionArrayStyle <: Base.Broadcast.BroadcastStyle end
59+
# Base.Broadcast.BroadcastStyle(::Type{<:CompositionArray}) = CompositionArrayStyle()
60+
# Base.Broadcast.BroadcastStyle(::CompositionArrayStyle, ::Base.Broadcast.DefaultArrayStyle) = CompositionArrayStyle()
61+
# Base.similar(bc::Base.Broadcast.Broadcasted{CompositionArrayStyle}, ::Type{T}) where {T} = similar(CompositionArray{T}, axes(bc))
6262

6363
# Other Base functions
6464
function Base.isapprox(x::CompositionArray, y::CompositionArray; kwargs...)

test/testComposition.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -300,8 +300,8 @@ renormalize!(ca; anhydrous=true)
300300
@test ca[1] + ca[1] 2 * ca[1]
301301
@test (ca[1]*ca[1])/ca[1] ca[1]
302302
# Test dot-broadcasting on compositions / compositionarrays
303-
@test (ca .+ ca)::CompositionVector{NCKFMASHTOlogtrace{Float64}} (2 .* ca)::CompositionVector{NCKFMASHTOlogtrace{Float64}}
304-
@test ((ca .* ca)./ca)::CompositionVector{NCKFMASHTOlogtrace{Float64}} ca
303+
# @test (ca .+ ca)::CompositionVector{NCKFMASHTOlogtrace{Float64}} ≈ (2 .* ca)::CompositionVector{NCKFMASHTOlogtrace{Float64}}
304+
# @test ((ca .* ca)./ca)::CompositionVector{NCKFMASHTOlogtrace{Float64}} ≈ ca
305305
@test CompositionArray(ca .+ ca) CompositionArray(2 .* ca)
306306
@test CompositionArray((ca .* ca)./ca) ca
307307

0 commit comments

Comments
 (0)