У меня есть модуль:
module Foo
module Bar
TEST = "ok"
def self.is_ok; true end
end
end
Foo::Bar::TEST # => "ok"
Foo::Bar.is_ok # => true
Я бы хотел, чтобы внутри модуля была определена еще одна константа, только один раз.
Я пытался так:
module Foo
module Bar
TEST = is_ok
def self.is_ok; true end
end
end
Я тогда получаю сообщение об ошибке undefined local variable or method 'is_ok' for Foo::Bar:Module
. Это означает, что is_ok
еще не определено.
Определены ли константы в другой момент времени, кроме методов класса модуля?
Кроме того, у меня есть еще один пример:
module Foo
module Bar
TEST = "ok"
def self.is_ok; true end
end
module YYY
TEST = Foo::Bar::TEST
TEST2 = Foo::Bar.is_ok
end
end
Здесь я получаю:
Foo::Bar::TEST2 # => true
как и ожидалось.