В прошлом посте я упомянул о Struct. Использовать эту конструкцию достаточно просто:
Но вот захотелось мне использовать Struct внутри класса. Для этого пришлось явно указать, что TestRecord это также класс:
TestRecord = Struct.new("TestRecord", :test1, :test2)И далее record используется как экземпляр класса TestRecord.
record = TestRecord.new()
Но вот захотелось мне использовать Struct внутри класса. Для этого пришлось явно указать, что TestRecord это также класс:
class TestДело в том, что с помощью Struct.new мы создаем структурный шаблон, который на самом деле является классом, который создается внутри класса Struct.
class TestRecord < Struct.new("TestRecord", :test1, :test2); end
attr_reader :record
def initialize
@record = TestRecord.new()
end
end