У меня установлено следующее программное обеспечение
- Ruby
- Columnize
- linecache
- ruby-debug
- ruby-debug-base
Существует фрагмент кода длиной почти 22 000 строк.Когда rdebug перемещается к этому фрагменту кода, он выполняет его правильно, но не отображает окружающие правильные строки кода или текущую исполняемую строку.
Например:
foo.a.b("a string")
Является лиметод.Ниже приведен пример кода
#around line 2000
@e
@j
@h
.
.
.
#around line 6000
def a
return obj_that_b_is_called_on
end
.
.
.
#around line 20000
def b(string)
puts "Hello World"
puts string
string = a
end
. Отладчик правильно вызывает a
и отображает информацию.Однако, когда вызывается b
, отладчик смотрит на что-то похожее на код, где @e
и @j
.Функции внутри b
выполняются правильно, выводят правильные операторы, и я даже могу оценить переменную string
.Это проблема с буфером или кешем?Или это проблема с настройками, которую я могу настроить?