module Gifted::Gift
Attributes
default_decorator[RW]
Public Instance Methods
gift(view = nil)
click to toggle source
# File lib/gifted/gift.rb, line 7 def gift(view = nil) @decorator_views ||= { default: gift_delegator } if view @decorator_views[view] ||= gift_delegator(view) else @decorator_views[:default] end end
Private Instance Methods
gift_delegator(view = nil)
click to toggle source
# File lib/gifted/gift.rb, line 19 def gift_delegator(view = nil) decorator = default_decorator if view decorator = default_decorator.const_get("#{view.to_s.camelcase}Decorator") decorator.send :include, Gifted::ViewHelpers unless decorator.is_a?(Class) end SimpleDelegator.new(self).extend decorator end