我正在使用Ruby 2.2.2、Pry和'pry-byebug'。
每次使用
更一般地说,我只想在每个 Pry 提示符上打印出一组表达式的值(或者,如果它们自上次打印以来已更改,则将其打印出来)。在 Ruby 调试器中如何实现这一点?
continue
语句会移除在pry-byebug
中监视的任何变量:[1] pry(main)> watch foo
Watching foo
watch: foo => 42
[2] pry(main)> watch
Listing all watched expressions:
1: foo => 42
[3] pry(main)> continue
[1] pry(main)> watch
No watched expressions
每次使用
continue
语句时都会丢失表达式的值,这使得监视表达式变得毫无价值。如果我改用 next
并且步进到相同的代码点上,监视表达式仍然存在;只是 continue
语句导致了这个问题。目前我甚至找不到任何关于 watch
语句的文档,所以我不知道为什么会出现这种情况。更一般地说,我只想在每个 Pry 提示符上打印出一组表达式的值(或者,如果它们自上次打印以来已更改,则将其打印出来)。在 Ruby 调试器中如何实现这一点?