Sha256: 38c690b3cac9fab36d7adb519d39ee3f1b4c2a5cdce30bbb7be6dc61f5655b7f
Contents?: true
Size: 731 Bytes
Versions: 2
Compression:
Stored size: 731 Bytes
Contents
class Thread def __dynamic_vars__ @dynamic_vars ||= {} @dynamic_vars end private :__dynamic_vars__ def dynamic_vars __dynamic_vars__.keys end def get_dynamic_variable(var) var = var.to_s __dynamic_vars__[var] end def set_dynamic_variable(var, val) var = var.to_s __dynamic_vars__[var] = val end def copy_dynamic_variables_from(other_thread) other_thread.send(:__dynamic_vars__).each do |var, val| self.set_dynamic_variable(var, val) end end class << self alias_method :old_new, :new def new(*args, &block) parent = current old_new(*args) do current.copy_dynamic_variables_from(parent) block.call end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fancy-0.10.0 | boot/fancy_ext/thread.rb |
fancy-0.9.0 | boot/fancy_ext/thread.rb |