Project

General

Profile

Feature #13172

Updated by Nondv (Dmitry Non) about 7 years ago

Hi everyone! 

 There's a `#tap` method, that yields reciever to block and returns reciever itself. 
 I would like to see method, which would return yield's result. 

 ~~~ 
 some_object.some_method.pass { |x| x && another_object.another_method(x) } 
 ~~~ 

 I've seen many code samples that had a some "middle-variables" to store `#some_method` result. 
 Those variables are useless after few lines of code, so it would be great to create them in a limited scope (block). 

 P.S. I am very sorry for my english. I hope you understood me:D 
 P.P.S. I think there should be a better name than `pass` for such method 

 UPD. I've created a PR to see if `#check` fits: https://github.com/ruby/ruby/pull/1521 

 
 ~~~ 
 $ irb 
 >> Time.now.pass { |t| t.sunday? ? 'Yay!' : ':(' } 
 ==> ":(" 
 ~~~

Back