Feature #5007
Updated by nobu (Nobuyoshi Nakada) over 6 years ago
I'm proposing a method called `Proc#call_under` Proc#call_under (the name could be discussed) which both unifies `instance_eval` instance_eval and `instance_exec`, instance_exec, and makes it possible to call a `Proc` Proc with a block and a scope: `Proc#call_under(self, Proc#call_under(self, *args, &blk)`: ```ruby &blk): proc { self }.call_under(1) # => 1 proc { |a| self + a }.call_under(1, 2) # => 3 proc { |&b| self + b.call }.call_under(2) { 2 } # => 4 ```