Actions
Feature #15627
openAppearance of custom singleton classes
Status:
Open
Assignee:
-
Target version:
-
Description
When I have a singleton class AClass
of an instance a
of a custom class A
,
class A; end
a = A.new
AClass = a.singleton_class
i) even though the singleton class of nil
, false
, and true
are referred to by their assigned constant names, the singleton class AClass
of a
is not:
nil.singleton_class #=> NilClass
false.singleton_class #=> FalseClass
true.singleton_class #=> TrueClass
a.singleton_class #=> #<Class:#<A:0x00007fda832a7eb0>>
ii) even though the singleton class of nil
, false
, and true
appear as their class, the singleton class AClass
of a
does not:
nil.class #=> NilClass
false.class #=> FalseClass
true.class #=> TrueClass
a.class #=> A
This contrast between nil
, false
, and true
on the one hand and a
on the other is confusing. I am actually not sure if this is intended behaviour It may be related to
I expect AClass
to behave the same as with NilClass
, FalseClass
, and TrueClass
. I expect:
a.singleton_class #=> AClass
a.class #=> AClass
If the current behaviour is intended, I would like this to become a feature request.
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0