Module: RSS::Maker::ImageItemModel

Included in:
RSS::Maker::ItemsBase::ItemBase
Defined in:
lib/rss/maker/image.rb

Defined Under Namespace

Classes: ImageItemBase

Class Method Summary collapse

Class Method Details

.append_features(klass) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/rss/maker/image.rb', line 8

def self.append_features(klass)
  super

  name = "#{RSS::IMAGE_PREFIX}_item"
  klass.add_need_initialize_variable(name, "make_#{name}")
  klass.add_other_element(name)
  klass.module_eval(<<-EOC, __FILE__, __LINE__+1)
    attr_reader :#{name}
    def setup_#{name}(rss, current)
      if @#{name}
        @#{name}.to_rss(rss, current)
      end
    end

    def make_#{name}
      self.class::#{Utils.to_class_name(name)}.new(@maker)
    end
EOC
end