Когда я вызываю IRB из точки останова byebug, мне кажется, что я не в ожидаемом контексте. Это ошибка или я делаю что-то невероятно глупое?

$ ruby -v
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin14]
$ ruby test.rb 
test

[3, 12] in test.rb
    3: 
    4:  def initialize
    5:      @a = "test"
    6:      puts @a
    7:      byebug
=>  8:      puts @a
    9:  end
   10: end
   11: 
   12: Test.new
(byebug) irb
2.2.0 :001 > @a
 => nil 

Я ожидал, что @a будет "test", но это undefined / nil.

1
Matthias Winkelmann 8 Мар 2015 в 16:09

2 ответа

Лучший ответ

Не вызывайте irb, вы можете использовать приглашение byebug так же, как и IRB.

0
Lesleh 8 Мар 2015 в 13:19

Это ошибка, вам следует открыть проблему в трекере проблем Byebug, если вы хотите ее исправить или хотя бы изучить.

2
deivid 9 Мар 2015 в 21:09