Class: Microscope::InstanceMethod::DatetimeInstanceMethod

Inherits:
Microscope::InstanceMethod show all
Defined in:
lib/microscope/instance_method/datetime_instance_method.rb

Direct Known Subclasses

DateInstanceMethod

Instance Attribute Summary

Attributes inherited from Microscope::InstanceMethod

#field, #model

Instance Method Summary collapse

Methods inherited from Microscope::InstanceMethod

#cropped_field, inject_instance_methods

Constructor Details

#initialize(*args) ⇒ DatetimeInstanceMethod

Returns a new instance of DatetimeInstanceMethod.



4
5
6
7
8
9
# File 'lib/microscope/instance_method/datetime_instance_method.rb', line 4

def initialize(*args)
  super

  @now = 'Time.now'
  @cropped_field_regex = /_at$/
end

Instance Method Details

#applyObject



11
12
13
14
15
16
# File 'lib/microscope/instance_method/datetime_instance_method.rb', line 11

def apply
  @cropped_field = field.name.gsub(@cropped_field_regex, '')
  @infinitive_verb = Microscope::Utils.past_participle_to_infinitive(cropped_field)

  model.class_eval(apply_methods) if @field_name =~ @cropped_field_regex
end