Module: SmarterDates
- Defined in:
- lib/generators/smarter_dates/install_generator.rb,
lib/smarter_dates/engine.rb,
lib/smarter_dates/parser.rb,
lib/smarter_dates/version.rb
Overview
:nodoc:
Defined Under Namespace
Classes: Engine, InstallGenerator
Constant Summary collapse
- VERSION =
'0.2.15'
Class Method Summary collapse
-
.convert_to_dt(convert_me) ⇒ Object
:call-seq: Module.convert_to_dt method.
-
.included(klass) ⇒ Object
:nodoc:.
Class Method Details
.convert_to_dt(convert_me) ⇒ Object
:call-seq: Module.convert_to_dt method
attempts to convert using Chronic, DateTime and-or Date, whichever works first else simply yield the value
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/smarter_dates/parser.rb', line 19 def self.convert_to_dt(convert_me) Proc.new do |val| dt = val.respond_to?(:to_chronic_datetime) ? val.to_chronic_datetime : val if defined?(Rails) set_rails_dt_attributes!(convert_me, dt) else instance_variable_set(:"@#{convert_me}", dt) end end end |
.included(klass) ⇒ Object
:nodoc:
5 6 7 8 9 10 11 |
# File 'lib/smarter_dates/parser.rb', line 5 def self.included(klass) # :nodoc: bootstrap_smarter_dates(klass) @dt_attributes.each do |meth| klass.send(:define_method, "#{meth}=".to_sym, convert_to_dt(meth)) end end |