У меня есть модуль A:
module A
extend self
attr_accessor :two, :four
ONE = "one"
@two = "two"
@three = "three"
@@four = "four"
@@five = "five"
def six
"six"
end
end
И мне нужно это внутри другого файла:
require 'a'
include A
p ONE # => "one"
p two # => nil
p A.two # => "two"
p three # => error
p four # => nil
p five # => error
p six # "six"
Кажется, что любая переменная класса либо выдает мне ошибку, либо ноль, если я специально не добавляю в нее имя модуля. Я думал, что использование include A
предотвратит это. Как мне экспортировать эти переменные класса, чтобы я мог ссылаться на них как two
вместо использования A.two
?