Record class changes and replay them. I plan to use this for Ruby class synchronisation on different clients.
Example:
require "scriber"
class Test
class << self
def var
@var
end
def var=(v)
@var = v
end
def scribe_play(type, data)
case type
when :var=
self.var = data
end
end
end
end
Scriber.backend = Scriber::Backends::Log.new("scribe.log")
Scriber.record(Test, :var=, 1)
Scriber.record(Test, :var=, 2)
Scriber.record(Test, :var=, 3)
Scriber.play
Test.var #=> 3