module Access class Link def self.process_batch(chunk) chunk.map { |link| new(link) } end def initialize(values) self.class.class_eval {attr_reader *values.keys } values.each do |attribute_name, attribute_value| self.instance_variable_set("@#{attribute_name}", attribute_value) end end end end