From: matz@...
Date: 2017-05-19T08:53:35+00:00
Subject: [ruby-core:81267] [Ruby trunk Feature#13260][Rejected]	Kernel#Boolean

Issue #13260 has been updated by matz (Yukihiro Matsumoto).

Status changed from Feedback to Rejected

I reject the proposal.
It may be useful for some application, I admit, but it is not the language matter.

Matz.

----------------------------------------
Feature #13260: Kernel#Boolean
https://bugs.ruby-lang.org/issues/13260#change-64933

* Author: sawa (Tsuyoshi Sawada)
* Status: Rejected
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
I think we have lots of occasions to receive a `true` or `false` value as a string input, and want to convert it to `true` or `false`. Perhaps we can have a method `Kernel#Boolean` in a similar spirit to `Kernel#Integer` and its kins, which takes an optional keyword argument `exception` (similar to https://bugs.ruby-lang.org/issues/12732) and `strict` (defaulted to true).

```ruby
Boolean("true") # => true
Boolean("false") # => false
Boolean("foo") # => ArgumentError
Boolean("foo", exception: nil) # => nil
Boolean("1") # => ArgumentError
Boolean("1", strict: false) # => true
Boolean("yes", strict: false) # => true
Boolean("0", strict: false) # => false
Boolean("no", strict: false) # => false
Boolean("foo", strict: false, exception: nil) # => nil
```



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>