Module: Prezzo::Composable::ClassMethods

Defined in:
lib/prezzo/composable.rb

Instance Method Summary collapse

Instance Method Details

#componentsObject



22
23
24
# File 'lib/prezzo/composable.rb', line 22

def components
  @components ||= []
end

#composed_by(options) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/prezzo/composable.rb', line 10

def composed_by(options)
  options.each do |name, klass|
    components << name

    define_method(name) do
      cached_components[name] ||= klass.new(context)

      cached_components[name].calculate
    end
  end
end