class PowerTypes::BasePresenter
Attributes
h[R]
Public Class Methods
new(view, params = {})
click to toggle source
# File lib/power_types/patterns/presenter/base_presenter.rb, line 3 def initialize(view, params = {}) @h = view params.each_pair do |attribute, value| if respond_to?(attribute, true) raise PowerTypes::PresenterError.new( "attribute #{attribute} already defined in presenter" ) end singleton_class.send(:attr_accessor, attribute) instance_variable_set("@#{attribute}", decorated_value(value)) end end
Private Instance Methods
decorated_value(value)
click to toggle source
# File lib/power_types/patterns/presenter/base_presenter.rb, line 22 def decorated_value(value) return value unless value.respond_to?(:decorate) value.decorate end