Method: Mongoid::Timespanned::ClassMethods#timespan_delegate

Defined in:
lib/timespan/mongoid/timespanned.rb

#timespan_delegate(meth, target = :period, options = {}) ⇒ Object

Raises:

  • (ArgumentError)


128
129
130
131
132
133
134
135
# File 'lib/timespan/mongoid/timespanned.rb', line 128

def timespan_delegate meth, target = :period, options = {}
  override = options[:override]
  mt = Mongoid::Timespanned
  raise ArgumentError, "method #{meth} already defined on #{self}" if self.respond_to?(meth) && !override

  mt.log "#{self} define delegate: #{meth} to #{target}"
  delegate meth, to: target
end