Если я определю модуль следующим образом:
module M
@@p = []
def self.included( base )
def base.add( a )
@@p += a
end
end
def show_p
@@p
end
end
, тогда каждый класс, включающий модуль, будет иметь одинаковый массив @@ p:
class A
include M
end
class B
include M
end
A.add "a"
B.add "b"
B.new.show_p
?> ["a", "b"]
Можно ли определитьуникальное статическое свойство для каждого отдельного класса, включающего модуль, чтобы классы не мешали друг другу?то есть, чтобы я мог сделать это:
A.add "a"
B.add "b"
A.new.show_p
?> "a"
B.new.show_p
?> "b"
Спасибо!