инициализация синглтона ruby ​​

Я пытаюсь инициализировать синглтон в ruby. Вот некоторый код:

class MyClass
  attr_accessor :var_i_want_to_init

  # singleton
  @@instance = MyClass.new
  def self.instance
    @@instance
  end

  def initialize # tried 1. initialize, 2. new, 3. self.initialize, 4. self.new
    puts "I'm being initialized!"
    @var_i_want_to_init = 2
  end
end

Проблема в том, что инициализация никогда не вызывается, и поэтому синглтон никогда не инициализируется. Я попытался назвать метод инициализации initialize, self.initialize, new и self.new. Ничего не сработало. «Меня инициализируют» никогда не печаталось, и переменная никогда не инициализировалась, когда я создавал экземпляр с помощью

my_var = MyClass.instance

. Как настроить синглтон так, чтобы он инициализировался? Помощь приветствуется,

Пачун

6
задан k107 27 November 2012 в 22:25
поделиться