@@ -14,9 +14,9 @@ ForwardDiff.Dual{T,V}(x::ExactReal) where {T,V} = convert(Dual{T,V}, x)
14
14
15
15
Base. convert (:: Type{Dual{T,V,N}} , x:: ExactReal ) where {T,V,N} = Dual {T} (V (x), zero (Partials{N,V}))
16
16
17
- Base. promote_rule (:: Type{Dual{T, V, N}} , :: Type{Interval{S}} ) where {T, V, N, S<: Union{AbstractFloat, Rational} } =
17
+ Base. promote_rule (:: Type{Dual{T, V, N}} , :: Type{Interval{S}} ) where {T, V, N, S<: IntervalArithmetic.NumTypes } =
18
18
Dual{T,Interval{IntervalArithmetic. promote_numtype (V, S)},N}
19
- Base. promote_rule (:: Type{Interval{S}} , :: Type{Dual{T, V, N}} ) where {S<: Union{AbstractFloat, Rational} , T, V, N} =
19
+ Base. promote_rule (:: Type{Interval{S}} , :: Type{Dual{T, V, N}} ) where {S<: IntervalArithmetic.NumTypes , T, V, N} =
20
20
Dual{T,Interval{IntervalArithmetic. promote_numtype (V, S)},N}
21
21
Base. promote_rule (:: Type{ExactReal{S}} , :: Type{Dual{T, V, N}} ) where {S<: Real , T, V, N} =
22
22
Dual{T,ExactReal{IntervalArithmetic. promote_numtype (V, S)},N}
0 commit comments