oop/singleton_class_predicate_parens.rb
tests/_examples/oop/singleton_class_predicate_parens.rb in the metorex repository.
class Holder
end
instance = Holder.new
puts(Holder.singleton_class?.inspect)
puts(Holder.singleton_class.singleton_class?.inspect)
puts(instance.singleton_class.singleton_class?.inspect)
puts(NilClass.singleton_class?.inspect)
puts(TrueClass.singleton_class?.inspect)
puts(FalseClass.singleton_class?.inspect)
puts(Module.new.singleton_class?.inspect)
opened = class << instance
self
end
puts(opened.singleton_class?.inspect)
Output:
false
true
true
false
false
false
false
true