Skip to content

Commit ccb9943

Browse files
committed
Add isinteger
1 parent d9251a7 commit ccb9943

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "DualNumbers"
22
uuid = "fa6b7ba4-c1ee-5f82-b5fc-ecf0adba8f74"
3-
version = "0.6.9"
3+
version = "0.6.10"
44

55
[deps]
66
Calculus = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9"

src/dual.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,8 @@ Base.isless(z::Dual{<:Real},w::Dual{<:Real}) = value(z) < value(w)
182182
Base.isless(z::Real,w::Dual{<:Real}) = z < value(w)
183183
Base.isless(z::Dual{<:Real},w::Real) = value(z) < w
184184

185+
Base.isinteger(z::Dual) = isinteger(value(z)) # Ignore epsilon part to be consistent with ==
186+
185187
Base.hash(z::Dual) = (x = hash(value(z)); epsilon(z)==0 ? x : bitmix(x,hash(epsilon(z))))
186188

187189
Base.float(z::Union{Dual{T}, Dual{Complex{T}}}) where {T<:AbstractFloat} = z

test/automatic_differentiation_test.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,3 +243,6 @@ end
243243
@test epsilon(44.0) 0.0
244244

245245
@test_throws InexactError convert(Float64, Dual(1,1))
246+
247+
@test isinteger(Dual(2, 0.01))
248+
@test !isinteger(Dual(2.1, 0.01))

0 commit comments

Comments
 (0)