diff --git a/src/tracker/Tracker.jl b/src/tracker/Tracker.jl index b00e97db..8d4a8ca7 100644 --- a/src/tracker/Tracker.jl +++ b/src/tracker/Tracker.jl @@ -1,5 +1,7 @@ module Tracker +import Base: == + export TrackedArray, TrackedVector, TrackedMatrix, param, back! tracker(x) = nothing @@ -16,6 +18,9 @@ end Call(f, args...) = Call{typeof(f),typeof(args)}(f, args) +# When deserialising, the object_id changes +a::Call == b::Call = a.func == b.func && a.args == b.args + @inline (c::Call)() = c.func(data.(c.args)...) mutable struct Tracked{T}