pry-stack_explorer is supposed to check if it can replace the first ordinary binding frame with a binding.of_caller(0) frame, and if it can, then replace it.
However running rake example it's clear that the original frame AS WELL AS the binding.of_caller frame are both pushed onto the stack:
[1] (pry) J: 0> show-stack
Showing all accessible frames in stack:
--
=> #0 c <Object#c()>
#1 [method] c <Object#c()>
#2 [block] block in b <Object#b()>
#3 [method] b <Object#b()>
#4 [method] alphabet <Object#alphabet(y)>
#5 [class] <class:J>
#6 [block] block in <main>
#7 [eval] <main>
#8 [top] <main>
[2] (pry) J: 0> up
pry-stack_explorer
is supposed to check if it can replace the first ordinary binding frame with abinding.of_caller(0)
frame, and if it can, then replace it.However running
rake example
it's clear that the original frame AS WELL AS thebinding.of_caller
frame are both pushed onto the stack: