From 07bbe709df43e9952e7e87f534848d5c14b310c3 Mon Sep 17 00:00:00 2001 From: KristofferC Date: Mon, 6 Mar 2023 11:11:25 +0100 Subject: [PATCH] avoid defining one arg hash these are not really meant to be extended --- src/dual.jl | 1 - src/partials.jl | 3 +-- test/PartialsTest.jl | 1 - 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/dual.jl b/src/dual.jl index 3a5f5244..2ca4683f 100644 --- a/src/dual.jl +++ b/src/dual.jl @@ -336,7 +336,6 @@ Base.exponent(x::Dual) = exponent(value(x)) Base.div(x::Dual, y::Dual, r::RoundingMode) = div(value(x), value(y), r) -Base.hash(d::Dual) = hash(value(d)) Base.hash(d::Dual, hsh::UInt) = hash(value(d), hsh) function Base.read(io::IO, ::Type{Dual{T,V,N}}) where {T,V,N} diff --git a/src/partials.jl b/src/partials.jl index fce67b0a..a5316e3e 100644 --- a/src/partials.jl +++ b/src/partials.jl @@ -52,8 +52,7 @@ Base.:(==)(a::Partials{N}, b::Partials{N}) where {N} = a.values == b.values const PARTIALS_HASH = hash(Partials) -Base.hash(partials::Partials) = hash(partials.values, PARTIALS_HASH) -Base.hash(partials::Partials, hsh::UInt64) = hash(hash(partials), hsh) +Base.hash(partials::Partials, hsh::UInt64) = hash(hash(partials.values, PARTIALS_HASH), hsh) @inline Base.copy(partials::Partials) = partials diff --git a/test/PartialsTest.jl b/test/PartialsTest.jl index c9631c72..52a79c48 100644 --- a/test/PartialsTest.jl +++ b/test/PartialsTest.jl @@ -62,7 +62,6 @@ samerng() = MersenneTwister(1) @test isequal(PARTIALS, copy(PARTIALS)) @test isequal(PARTIALS, PARTIALS2) == (N == 0) - @test hash(PARTIALS) == hash(VALUES, ForwardDiff.PARTIALS_HASH) @test hash(PARTIALS) == hash(copy(PARTIALS)) @test hash(PARTIALS, hash(1)) == hash(copy(PARTIALS), hash(1)) @test hash(PARTIALS, hash(1)) == hash(copy(PARTIALS), hash(1))