[#49957] Re: [ruby-changes:45210] nobu:r57283 (trunk): benchmarks for [Bug #13113] [ci skip] — SASADA Koichi <ko1@...>
中田さん:
3 messages
2017/01/19
[ruby-dev:49938] [Ruby trunk Feature#13067] TrueClass, FalseClass to provide `===` to match truthy/falsy values.
From:
snood1205@...
Date:
2017-01-02 00:16:54 UTC
List:
ruby-dev #49938
Issue #13067 has been updated by Eli Sadoff. I think that a possible middle ground replacement would be to introduce truthy and falsy constants into `TrueClass` and `FalseClass` respectively. You could then do, for example, ~~~ ruby case 1 when true then puts 'This will not match' when TrueClass::TRUTHY puts 'But this will' end ~~~ ---------------------------------------- Feature #13067: TrueClass,FalseClass to provide `===` to match truthy/falsy values. https://bugs.ruby-lang.org/issues/13067#change-62356 * Author: Yukihiro Matsumoto * Status: Open * Priority: Normal * Assignee: Yukihiro Matsumoto * Target version: ---------------------------------------- I propose to make `TrueClass`, `FalseClass` to provide `===` method to match truthy values (`TrueClass`), and falsy values (`FalseClass`), so that we can use true and false for case pattern matching. And we can pick truthy values using `grep` e.g. `ary.grep(true)`. Matz. -- https://bugs.ruby-lang.org/