Обычно я могу получить метакласс для конкретного экземпляра объекта Ruby с чем-то вроде этого:
class C
def metaclass
class << self; self; end
end
end
# This is this instance's metaclass.
C.new.metaclass => #<Class:#<C:0x01234567>>
# Successive invocations will have different metaclasses,
# since they're different instances.
C.new.metaclass => #<Class:#<C:0x01233...>>
C.new.metaclass => #<Class:#<C:0x01232...>>
C.new.metaclass => #<Class:#<C:0x01231...>>
Допустим, я просто хочу знать метакласс произвольного экземпляра объекта obj
произвольного класса, и я не хочу определять metaclass
(или аналогичный) метод для класса obj
.
Есть ли способ сделать это?