Project

General

Profile

Actions

Bug #11063

closed

Special singleton class should return true for singleton_class? test

Added by rbjl (Jan Lelis) almost 8 years ago. Updated 11 months ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux]
[ruby-core:<unknown>]

Description

This seems wrong (or at least inconsistent):

nil.singleton_class.singleton_class? #=> false
true.singleton_class.singleton_class? #=> false
false.singleton_class.singleton_class? #=> false

Files

special_singletons.patch (1.16 KB) special_singletons.patch rbjl (Jan Lelis), 04/12/2015 07:50 PM

Related issues 2 (1 open1 closed)

Related to Ruby master - Bug #11064: #singleton_methods for objects with special singleton_class returns an empty arrayOpenActions
Related to Ruby master - Feature #12084: `Class#instance`ClosedActions
Actions #1

Updated by Eregon (Benoit Daloze) 11 months ago

  • Related to Bug #11064: #singleton_methods for objects with special singleton_class returns an empty array added
Actions #2

Updated by Eregon (Benoit Daloze) 11 months ago

Updated by Eregon (Benoit Daloze) 11 months ago

Changing this would cause the reverse inconsistency:

false.class.singleton_class? #=> would be true, but .class.singleton_class? should always be false

The only real fix would be to have separate class and singleton_class for nil/false/true, but it's unclear if that's worth it.

Updated by matz (Yukihiro Matsumoto) 11 months ago

  • Status changed from Open to Rejected

This inconsistency does not have any actual drawback, so we keep the current behavior.

Matz.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0