As far as I know, defining a named function within a function does not give you access to any local variables.
What you can do instead is use a Proc:
def foo(x)
bar = lambda do
puts x
end
bar.call
42
end
foo(5)
As far as I know, defining a named function within a function does not give you access to any local variables.
What you can do instead is use a Proc:
def foo(x)
bar = lambda do
puts x
end
bar.call
42
end
foo(5)