Ruby の binding オブジェクトからローカル変数にアクセスする
Binding#local_variable_get
でローカル変数にアクセスする事が出来ます。
def func a, b add = a + b # このメソッド内のコンテキストを返す binding end context = func 1, 2 # #local_variable_get でコンテキストの変数を取得する p context.local_variable_get(:a) # => 1 p context.local_variable_get(:b) # => 2 # もしくは #eval を経由してもよい p context.eval("add") # => 3