Метод класса, чтобы «узнать» имя класса в Ruby?

Я хочу, чтобы унаследованный класс ruby ​​«знал» имя своего класса с помощью метода класса. Лучше всего это проиллюстрировано на надуманном примере:

class Parent
  def self.whoami
    ??
  end
end

class Child < Parent
  #No code should be needed.
end

Итак, я должен иметь возможность позвонить:

Parent.whomai

и ожидать возврата «Parent». Затем я смогу позвонить:

Child.whoami

и ожидать возврата «Child» У меня такое чувство, что на обычных языках это невозможно. Но модель метапрограммирования Руби раньше меня поражала. Есть предположения? Заранее спасибо.

14
задан JP Richardson 13 November 2010 в 06:20
поделиться