Method: Granite::Action::Projectors::ClassMethods#projector
- Defined in:
- lib/granite/action/projectors.rb
#projector(name, options = {}, &block) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'lib/granite/action/projectors.rb', line 84 def projector(name, = {}, &block) _projectors.store(name, , &block) class_eval <<-METHOD, __FILE__, __LINE__ + 1 def self.#{name} _projectors.fetch(:#{name}) end def #{name} @#{name} ||= self.class._projectors.fetch(:#{name}).new(self) end METHOD end |