Slide 14
Slide 14 text
class Stack
def stack
@stack ||= []
end
def with(name)
stack.push(name)
yield stack
ensure
stack.pop
end
end
stack = Stack.new
stack.with('foo') do
p stack.stack
#=> ["foo"]
stack.with('bar') do
p stack.stack
#=> ["foo", "bar"]
end
p stack.stack
#=> ["foo"]
end