mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 07:08:01 +00:00
563 B
563 B
Listing Local Variables
In Ruby 2.2, the binding object gives us access to a method
#local_variables which returns the symbol names of the binding's local
variables. We can see this in action with
def square(x)
puts binding.local_variables.inspect
x.times do |a|
puts binding.local_variables.inspect
end
z = x * x
puts binding.local_variables.inspect
z
end
square(2)
which results in
[:x, :z]
[:a, :x, :z]
[:a, :x, :z]
[:x, :z]
=> 4