Module: DateTimePrecision::ClassMethods
- Defined in:
- lib/date_time_precision/lib.rb
Instance Method Summary collapse
Instance Method Details
#normalize_new_args(args) ⇒ Object
134 135 136 137 138 139 140 141 142 |
# File 'lib/date_time_precision/lib.rb', line 134 def normalize_new_args(args) unless args.all? # Replace nil values with their corresponding default values args = args.each_with_index.map do |val,i| val || DateTimePrecision::NEW_DEFAULTS[i] end end args.take(self::MAX_PRECISION) end |
#partial_match?(date1, date2) ⇒ Boolean
121 122 123 124 125 126 127 |
# File 'lib/date_time_precision/lib.rb', line 121 def partial_match?(date1, date2) return true if date1.nil? or date2.nil? frags1 = date1.fragments frags2 = date2.fragments min_precision = [frags1.length,frags2.length].min frags1.slice(0,min_precision) == frags2.slice(0,min_precision) end |
#precision(val) ⇒ Object
129 130 131 132 |
# File 'lib/date_time_precision/lib.rb', line 129 def precision(val) val = val.take(self::MAX_PRECISION) if val.is_a? Array DateTimePrecision::precision(val) end |