Ruby でコードをデバッグするためのブレークポイント関数を実装しています。
私のブレークポイント関数はbreakpoint
以下のコードのようです。
def breakpoint s
color_s = "\033[1m\033[33m"
color_f = "\033[0m\033[22m"
line= (caller.first.split ":")[1]
puts "#{color_s}#{Time.new.strftime("%H:%M:%S")} line:#{line} -- #{s.to_s}#{color_f}"
gets
end
a = 3
puts "Hello World"
breakpoint "test"
次のような出力が生成されます
Hello World
19:21:33 line:11 -- test
注意:line:11
関数が呼び出される行番号です。
私の質問は、プログラムスタックから変数名と値を取得する方法です。たとえば、上記のコードでは次のようになります。a = 3