module Draper::DecoratesAssigned
def decorates_assigned(*variables)
(**options)
-
:context
(Hash, #call
) -- -
:with
(Decorator, CollectionDecorator
) --
Parameters:
-
options
(Hash
) -- -
variables
(Symbols*
) --
Overloads:
-
decorates_assigned(*variables, options = {})
def decorates_assigned(*variables) factory = Draper::Factory.new(variables.extract_options!) variables.each do |variable| undecorated = "@#{variable}" decorated = "@decorated_#{variable}" define_method variable do return instance_variable_get(decorated) if instance_variable_defined?(decorated) instance_variable_set decorated, factory.decorate(instance_variable_get(undecorated), context_args: self) end helper_method variable end end