Ruby / Rails调试:当对象/变量的值发生变化时中断

时间:2014-01-30 14:31:48

标签: ruby-on-rails ruby ruby-debug

在Ruby on Rails中,调试是否有任何方法可以让调试器在特定内存位置的值或变量/对象的值发生变化时立即中断执行?

1 个答案:

答案 0 :(得分:2)

你想要多少执行中断?

如果变量是从实例外部设置的,那么将通过某种方法访问它。你可以为此目的覆盖这样的方法。

# define
class Foo
  def bar
    @bar ||= 'default'
  end

  def bar=(value)
    @bar = value
  end
end

# overwrite
class Foo
  def bar=(value)
    super
    abort("Message goes here")
  end
end