Project

General

Profile

Feature #14224

Boolean class

Added by sobrinho (Gabriel Sobrinho) almost 2 years ago. Updated almost 2 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-core:84408]

Description

Suggestion: TrueClass and FalseClass inheriting from Boolean (new superclass).

This would make true/false checking easier, like:

unless value.is_a?(Boolean)
  raise "Non-boolean value"
end

Currently we have to check for both classes:

unless value.is_a?(FalseClass) or value.is_a?(TrueClass)
  raise "Non-boolean value"
end

In high-level APIs this would be beneficial, for example in RSpec:

expect(value).to be_a Boolean

Currently, we have to check like this:

expect([TrueClass, FalseClass]).to include value.class

Or another similar workaround.

I would like to provide a patch if this is acceptable.

History

Updated by jeremyevans0 (Jeremy Evans) almost 2 years ago

  • Status changed from Open to Rejected

This was already discussed and rejected in #12515.

Also available in: Atom PDF