Sha256: 65d5bbbcbd4929ecff7703e3ee7d1fbbb34a5c972383e56431f205efabc6d9e4
Contents?: true
Size: 537 Bytes
Versions: 2
Compression:
Stored size: 537 Bytes
Contents
module Exhibitor extend ActiveSupport::Concern attr_accessor :context def obj __getobj__ end def exhibitor_for(obj) self.class.exhibitor_for(obj) end def contextualize(context) self.context = context end def contextualized? context.present? end module ClassMethods def exhibitor_for_super(method, klass = nil) define_method(method) do |*args| klass ||= self.class klass.new(super(*args)) end end def exhibitor_for(obj) new(obj) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
exposant-0.1.2 | lib/exposant/concerns/exhibitor.rb |
exposant-0.1.1 | lib/exposant/concerns/exhibitor.rb |