From: "mame (Yusuke Endoh)" Date: 2012-11-24T11:02:12+09:00 Subject: [ruby-core:49963] [ruby-trunk - Feature #7394][Assigned] Enumerable#find ifnone parameter could be non-callable Issue #7394 has been updated by mame (Yusuke Endoh). Status changed from Open to Assigned Target version changed from 2.0.0 to next minor Zachary Scott, please don't add 2.0.0 feature ticket unless I approve. The 2.0.0 feature deadline was passed. -- Yusuke Endoh ---------------------------------------- Feature #7394: Enumerable#find ifnone parameter could be non-callable https://bugs.ruby-lang.org/issues/7394#change-33729 Author: zzak (Zachary Scott) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: core Target version: next minor =begin from github: https://github.com/ruby/ruby/pull/186 In trunk the Enumerable #find method ifnone parameter has to be callable or nil. I found that sometimes I want to return a simple value without wrapping it in a proc. This pull request adds support for non-callable defaults when no items match. (({a = [1, 2, 3]})) The current behavior (({a.find(proc { :foo }) { |x| x > 3 } #=> :foo})) With patch (({a.find(0) { |x| x > 3 } #=> 0})) =end -- http://bugs.ruby-lang.org/