number fix

This commit is contained in:
Mike J Innes 2018-02-08 17:04:48 +00:00
parent 0f7a1ec022
commit d1c56ca768
2 changed files with 3 additions and 2 deletions

View File

@ -28,6 +28,7 @@ mutable struct Tracked{T}
end
Tracked(f::Call, x) = Tracked{typeof(x)}(f, x)
Tracked(f::Call, x, Δ) = Tracked{typeof(x)}(f, x, Δ)
track(f::Call, x) = Tracked(f, x)
track(f::Call) = track(f, f())

View File

@ -2,11 +2,11 @@ struct TrackedNumber{T<:Number} <: Number
tracker::Tracked{T}
end
TrackedNumber(x::Number) = TrackedNumber(Tracked(Call(nothing), x))
TrackedNumber(x::Number) = TrackedNumber(Tracked(Call(nothing), x, zero(x)))
tracker(x::TrackedNumber) = x.tracker
track(f::Call, x::Number) = TrackedNumber(Tracked(f, x))
track(f::Call, x::Number) = TrackedNumber(Tracked(f, x, zero(x)))
back!(x::TrackedNumber) = back!(x, 1)